From 2bac3a635df5af18d32c92ac9ec6c38fb3645a48 Mon Sep 17 00:00:00 2001 From: IntegratedQuantum Date: Mon, 15 Jun 2026 16:58:46 +0200 Subject: [PATCH] Clear the Player before the entity system, and fix issue with it not being cleared correctly --- src/game.zig | 3 +-- src/server/Entity.zig | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/game.zig b/src/game.zig index 37fa1b742a..c82f77b08b 100644 --- a/src/game.zig +++ b/src/game.zig @@ -320,6 +320,7 @@ pub const World = struct { // MARK: World main.sync.client.reset(); main.threadPool.clear(); + Player.super.deinit(.client); main.entity.client.clear(); self.itemDrops.deinit(); self.blockPalette.deinit(); @@ -332,8 +333,6 @@ pub const World = struct { // MARK: World main.server.stop(); main.entityModel.reset(); - Player.super.deinit(.client); - if (main.server.thread) |serverThread| { serverThread.join(); main.server.thread = null; diff --git a/src/server/Entity.zig b/src/server/Entity.zig index de3cbc7d4f..7ff6501d52 100644 --- a/src/server/Entity.zig +++ b/src/server/Entity.zig @@ -69,5 +69,7 @@ pub fn deinit(self: *@This(), comptime side: main.sync.Side) void { } if (side == .server) { main.entity.server.removeAllComponents(self.id); + } else { + main.entity.client.removeAllComponents(self.id); } }