diff --git a/Assets/GameMain/Scripts/Simulation/EntityBinding.cs b/Assets/GameMain/Scripts/Simulation/EntityBinding.cs index 836fb16..d3c089c 100644 --- a/Assets/GameMain/Scripts/Simulation/EntityBinding.cs +++ b/Assets/GameMain/Scripts/Simulation/EntityBinding.cs @@ -32,6 +32,12 @@ namespace Simulation return; } + if (_simulationIndexToEntityId.TryGetValue(newSimulationIndex, out int oldEntityId) && + oldEntityId != entityId) + { + _entityIdToSimulationIndex.Remove(oldEntityId); + } + _simulationIndexToEntityId.Remove(oldSimulationIndex); _entityIdToSimulationIndex[entityId] = newSimulationIndex; _simulationIndexToEntityId[newSimulationIndex] = entityId;