diff --git a/Assets/Scripts/Logic/System/UnitDamagesCastleSystem.cs b/Assets/Scripts/Logic/System/UnitDamagesCastleSystem.cs index ea5d8fbecd532422cefd6f20330390add22509c1..da27ed367f5b4e155ecccbf90b2612205730bd8c 100644 --- a/Assets/Scripts/Logic/System/UnitDamagesCastleSystem.cs +++ b/Assets/Scripts/Logic/System/UnitDamagesCastleSystem.cs @@ -12,10 +12,12 @@ public class UnitDamagesCastleSystem : BaseSystem { private void On(UnitMovedTileEvent e) { Unit unit = e.Unit; Castle enemyCastle = unit.World.Overview.GetEnemyTeam(unit.Owner).Castle; - if (enemyCastle.Health <= 0) return; if (unit.TilePosition.Equals(enemyCastle.Position)) { - enemyCastle.Damage(unit, unit.Type.Damage); + if (!enemyCastle.IsDestroyed) { + enemyCastle.Damage(unit, unit.Type.Damage); + } + unit.World.DestroyUnit(unit); } }