Ejemplo n.º 1
0
        public void ExchangeBlocks(int x, int y)
        {
            Requires(GameState.Constructing);

            var blockX = (int)Math.Floor((decimal)x / fieldSizeModule) * fieldSizeModule;
            var blockY = (int)Math.Floor((decimal)y / fieldSizeModule) * fieldSizeModule;

            IMiscellaneous curr = miscellaneous.FirstOrDefault(e => e.X == blockX && e.Y == blockY);
            IMiscellaneous next =
                curr == null ? new Bricks() :
                curr is Bricks ? new Concrete() :
                curr is Concrete ? new Water() :
                default(IMiscellaneous);

            if (curr != null)
            {
                miscellaneous.Remove(curr);
            }

            if (next != null)
            {
                next.X = blockX;
                next.Y = blockY;

                miscellaneous.Add(next);
            }
        }
Ejemplo n.º 2
0
 public MiscellaneousController(IMiscellaneous iMiscellaneous)
 {
     this.iMiscellaneous = iMiscellaneous;
 }