Пример #1
0
        public static void GoUp(Grid grid)
        {
            foreach (var tile in grid.GameGrid)
            {
                if (tile.YPosition == 0)
                {
                    continue;
                }
                var tileAbove = grid.GetTile(tile.XPosition, tile.YPosition - 1);

                while (IsTileAvailable(tileAbove))
                {
                    TileBusiness.DoFusionTile(tileAbove, tile);
                }
            }
        }
Пример #2
0
        public static void GoLeft(Grid grid)
        {
            foreach (var tile in grid.GameGrid)
            {
                if (tile.XPosition == 0)
                {
                    continue;
                }
                var tileLeft = grid.GetTile(tile.XPosition - 1, tile.YPosition);

                while (IsTileAvailable(tileLeft))
                {
                    TileBusiness.DoFusionTile(tileLeft, tile);
                }
            }
        }
Пример #3
0
        public static void GoRight(Grid grid)
        {
            foreach (var tile in grid.GameGrid)
            {
                if (tile.XPosition == Grid.MAX_WIDTH - 1)
                {
                    continue;                                       // Based on a 4x4 grid
                }
                var tileAbove = grid.GetTile(tile.XPosition + 1, tile.YPosition);

                while (IsTileAvailable(tileAbove))
                {
                    TileBusiness.DoFusionTile(tileAbove, tile);
                }
            }
        }
Пример #4
0
        public static void GoDown(Grid grid)
        {
            foreach (var tile in grid.GameGrid)
            {
                if (tile.YPosition == Grid.MAX_HEIGHT - 1)
                {
                    continue;                                        // Based on a 4x4 grid
                }
                var tileBelow = grid.GetTile(tile.XPosition, tile.YPosition + 1);

                while (IsTileAvailable(tileBelow))
                {
                    TileBusiness.DoFusionTile(tileBelow, tile);
                }
            }
        }