Fix component change

This commit is contained in:
hodasemi 2025-03-06 15:32:05 +01:00
parent 889983872c
commit 8f62b81e15

View file

@ -212,10 +212,8 @@ impl World {
Ok(()) Ok(())
} }
pub fn remove_entity(&mut self, entity: Entity) -> Result<Option<EntityObject>> { pub fn remove_entity(&mut self, entity: Entity) {
self.entities_to_remove.push(entity); self.entities_to_remove.push(entity);
Ok(None)
} }
pub fn execute_archetype(&mut self, name: impl ToString) -> Result<()> { pub fn execute_archetype(&mut self, name: impl ToString) -> Result<()> {
@ -360,8 +358,9 @@ impl World {
for (entity, changes) in core::mem::take(&mut self.entities_updates) { for (entity, changes) in core::mem::take(&mut self.entities_updates) {
self.updates.remove_entity(entity); self.updates.remove_entity(entity);
self.archetypes.remove_entity(entity);
if let Some(entity_object) = unsafe { self.entity_mut_unchecked(entity).ok() } { if let Ok(entity_object) = unsafe { self.entity_mut_unchecked(entity) } {
entity_object.activation_state.apply_change(); entity_object.activation_state.apply_change();
for change in changes { for change in changes {
@ -390,6 +389,7 @@ impl World {
entity_object.activation_state.apply_change(); entity_object.activation_state.apply_change();
self.updates.add_entity(entity_object, &self.entities)?; self.updates.add_entity(entity_object, &self.entities)?;
self.archetypes.add_entity(entity_object)?;
} }
} }