bool IsAccessibleFromNeighbour(TilePosition checkedTile, TilePosition neighbour)
    {
        if (IsPositionInBounds(neighbour) == false)
        {
            return(false);
        }

        else if (neighbour.Height != checkedTile.Height)
        {
            return(false);
        }

        else if (Crystals.ContainsKey(neighbour) ||
                 Ore.ContainsKey(neighbour))
        {
            return(false);
        }

        else
        {
            return(true);
        }
    }