Esempio n. 1
0
    private GameState GetGameState()
    {
        var allTiles = Enumerable.Range(0, Height)
                       .SelectMany(row => tiles.GetRow(row)).ToList();

        if (allTiles.Where(tile => tile != null).Any(tile => tile.IsMoving))
        {
            return(GameState.TileMoving);
        }
        if (allTiles.Any(tile => tile == null))
        {
            return(GameState.HasEmptyTiles);
        }
        if (swappedTile != null)
        {
            return(GameState.MovedTile);
        }
        if (selectedTile != null)
        {
            return(GameState.TileSelected);
        }
        return(GameState.None);
    }
Esempio n. 2
0
 public IEnumerable <Tile> GetTilesRow(int index)
 {
     return(tiles.GetRow(index));
 }