Beispiel #1
0
    void getMvAccessibleTiles(HashSet <TileScript> list, TileScript tile, int num, allegiance ally)
    {
        TileScript tileS = tile.transform.GetComponent <TileScript> ();

        if (num != 0)
        {
            if (tileS.up != null && (tileS.up.GetComponent <TileScript> ().objectOccupyingTile == null || tileS.up.GetComponent <TileScript> ().objectOccupyingTile.GetComponent <Unit> ().alleg == ((ally == allegiance.playerOne) ? allegiance.playerOne : allegiance.playerTwo)))
            {
                list.Add(tileS.up.GetComponent <TileScript> ());
                getMvAccessibleTiles(list, tileS.up.GetComponent <TileScript> (), num - 1, ally);
            }
            if (tileS.down != null && (tileS.down.GetComponent <TileScript> ().objectOccupyingTile == null || tileS.down.GetComponent <TileScript> ().objectOccupyingTile.GetComponent <Unit> ().alleg == ((ally == allegiance.playerOne) ? allegiance.playerOne : allegiance.playerTwo)))
            {
                list.Add(tileS.down.GetComponent <TileScript> ());
                getMvAccessibleTiles(list, tileS.down.GetComponent <TileScript> (), num - 1, ally);
            }
            if (tileS.left != null && (tileS.left.GetComponent <TileScript> ().objectOccupyingTile == null || tileS.left.GetComponent <TileScript> ().objectOccupyingTile.GetComponent <Unit> ().alleg == ((ally == allegiance.playerOne) ? allegiance.playerOne : allegiance.playerTwo)))
            {
                list.Add(tileS.left.GetComponent <TileScript> ());
                getMvAccessibleTiles(list, tileS.left.GetComponent <TileScript> (), num - 1, ally);
            }
            if (tileS.right != null && (tileS.right.GetComponent <TileScript> ().objectOccupyingTile == null || tileS.right.GetComponent <TileScript> ().objectOccupyingTile.GetComponent <Unit> ().alleg == ((ally == allegiance.playerOne) ? allegiance.playerOne : allegiance.playerTwo)))
            {
                list.Add(tileS.right.GetComponent <TileScript> ());
                getMvAccessibleTiles(list, tileS.right.GetComponent <TileScript> (), num - 1, ally);
            }
        }
    }
Beispiel #2
0
    public HashSet <TileScript> getMvAccessibleTiles(allegiance ally)
    {
        HashSet <TileScript> tileSet = new HashSet <TileScript>();

        getMvAccessibleTiles(tileSet, this.transform.parent.GetComponent <TileScript>(), mvRange, ally);
        return(tileSet);
    }
Beispiel #3
0
 public virtual void showMvTiles(allegiance ally)
 {
     if (!paralyzed)
     {
         HashSet <TileScript> tiles = getMvAccessibleTiles(ally);
         tiles.Remove(this.transform.parent.GetComponent <TileScript>());
         gm.accessibleTiles = tiles;
         foreach (TileScript tile in tiles)
         {
             if (tile.objectOccupyingTile == null)
             {
                 tile.renderer.material.color = Color.green;
             }
         }
     }
 }
Beispiel #4
0
 public override void showMvTiles(allegiance ally)
 {
 }