diff --git a/server/src/lib.rs b/server/src/lib.rs index 9dcf47acc7..885637113d 100644 --- a/server/src/lib.rs +++ b/server/src/lib.rs @@ -575,7 +575,7 @@ impl Server { } // Sync deaths. - let todo_remove = ( + let todo_kill = ( &self.state.ecs().entities(), &self.state.ecs().read_storage::(), ) @@ -583,8 +583,15 @@ impl Server { .map(|(entity, _)| entity) .collect::>(); - for entity in todo_remove { - self.state.ecs_mut().delete_entity_synced(entity); + for entity in todo_kill { + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); + self.state.ecs_mut().write_storage::().remove(entity); self.clients .notify(entity, ServerMsg::ForceState(ClientState::Registered)); }