Ejemplo n.º 1
0
    void ChooseTurn(ChessFigure chessFigure = null)
    {
        DischoosingTile();

        if (gameEnd || activeUI || chessFigure == null || !chessFigure.enable || activeFigure == chessFigure || chessFigure.team != presentTeam)
        {
            activeFigure = null;
        }
        else
        {
            activeFigure = chessFigure;
            activeFigure.ChooseFigure(true);
            turnedChoosableTile = chessFigure.GetTileForTurn(figures);

            /*Debug.Log(turnedChoosableTile.Count);
             * string debug = null;
             * foreach (Vector2Int v in turnedChoosableTile)
             * {
             *  debug += v.ToString() + " ";
             * }
             * Debug.Log(debug);*/
            for (int i = 0; i < turnedChoosableTile.Count; i++)
            {
                int x = turnedChoosableTile[i].x;
                int y = turnedChoosableTile[i].y;

                if (figures[x, y] != null)
                {
                    figures[x, y].ChooseFigure(false);
                    figures[x, y].OnClickRepeat += TurnOn;
                    choosenTile.Add(figures[x, y]);
                }
                else
                {
                    boardsTile[x, y].ChooseFigure(presentTeam == TypeTeam.white);
                    boardsTile[x, y].OnClickRepeat += TurnOn;
                    choosenTile.Add(boardsTile[x, y]);
                }
            }
        }
    }