예제 #1
0
 public void PerformUnitActionAt(Position position)
 {
     if (_actionStrategy.PerformAction(position, this))
     {
         if (GetUnitAt(position).Type == GameConstants.Archer)
         {
             if (_fortifiedArchers.ContainsKey(position))
             {
                 _fortifiedArchers.Remove(position);
             }
             else
             {
                 _fortifiedArchers.Add(position, GetUnitAt(position));
             }
         }
         if (GetUnitAt(position).Type == GameConstants.Settler)
         {
             _cities.Add(position, new City(GetUnitAt(position).Owner, position));
             _units.Remove(position);
         }
     }
 }