private static void RemoveSoldier(IAttackable king, ISoldier soldier, IEnumerable <ISoldier> soldiers) { soldier.TakeAttack(); if (soldier.HitsToDie == 0) { king.UnderAttack -= soldier.OnAttackKing; soldiers = soldiers.Where(s => s.Name != soldier.Name); } }