コード例 #1
0
ファイル: MainMenu.cs プロジェクト: semi92art/MultiChess
    public void SetMoveTextValue(Vector2Int prev_pos, Vector2Int new_pos)
    {
        var sb = new StringBuilder();

        switch (matchController.ChessMatchCurrentState.PreviousPlayer.Side)
        {
        case ChessSide.white:
            sb.Append("White player moves: ");
            break;

        case ChessSide.black:
            sb.Append("Black player moves: ");
            break;

        case ChessSide.red:
            sb.Append("Red player moves: ");
            break;

        case ChessSide.green:
            sb.Append("Green player moves: ");
            break;

        default:
            throw new System.NotImplementedException("Set Move Text Value Not Implemented Completely!");
        }

        sb.Append(UciConverter.BoardPositionToString(prev_pos.ToBoardPosition()) + UciConverter.BoardPositionToString(new_pos.ToBoardPosition()));
        SetConsoleText(sb.ToString());
    }
コード例 #2
0
ファイル: BPTest.cs プロジェクト: semi92art/MultiChess
 public void DisplayBPString()
 {
     Debug.Log(UciConverter.BoardPositionToString(boardPosition.ToBoardPosition()));
 }
コード例 #3
0
ファイル: MainMenu.cs プロジェクト: semi92art/MultiChess
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();

        //Classic Buttons
        GUILayout.Label("Classic Match:");
        GUILayout.BeginHorizontal();
        if (GUILayout.Button("Classic"))
        {
            o.ChooseClassicMatch();
            o.StartMatch();
        }
        else if (GUILayout.Button("By enum"))
        {
            o.ChooseClassicMatch();
            o.StartClassicMatch(FENConstants.GetClassicFEN(o.classicFEN), new List <BoardPosition>(), new List <BoardPosition>());
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        GUILayout.EndHorizontal();
        //Los Alamos Buttobs
        GUILayout.Label("Los Alamos Match:");
        GUILayout.BeginHorizontal();
        if (GUILayout.Button("Classic"))
        {
            o.ChooseLosAlamosMatch();
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        else if (GUILayout.Button("By enum"))
        {
            o.ChooseLosAlamosMatch();
            o.StartLosAlamosMatch(FENConstants.GetLosAlamosFEN(o.losAlamosFEN), new List <BoardPosition>(), new List <BoardPosition>());
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        GUILayout.EndHorizontal();
        //Chaturanga Buttons
        GUILayout.Label("Chaturanga Match:");
        GUILayout.BeginHorizontal();
        if (GUILayout.Button("Classic"))
        {
            o.ChooseChaturangaMatch();
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        else if (GUILayout.Button("By enum"))
        {
            o.ChooseChaturangaMatch();
            o.StartChaturangaMatch(FENConstants.GetChaturangaFEN(o.chaturangaFEN), new List <BoardPosition>(), new List <BoardPosition>());
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        GUILayout.EndHorizontal();
        //Circled Buttons
        GUILayout.Label("Circled Match:");
        GUILayout.BeginHorizontal();
        if (GUILayout.Button("Classic"))
        {
            o.ChooseCircledMatch();
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        else if (GUILayout.Button("By enum"))
        {
            o.ChooseCircledMatch();
            o.StartCircledMatch(FENConstants.GetCircledFEN(o.circledFEN), new List <BoardPosition>(), new List <BoardPosition>());
            o.SetConsoleText("");
            o.matchController.MatchView_ControllerAPI.StartMatch();
        }
        GUILayout.EndHorizontal();

        GUILayout.Space(5);

        if (o.matchController != null)
        {
            GUILayout.Label("Current player: " + o.matchController.ChessMatchCurrentState.CurrentPlayer.Side.ToString());
        }
        else
        {
            GUILayout.Label("Current player: NOT SET");
        }

        if (o.matchController == null)
        {
            return;
        }


        for (int j = o.matchController.FigureOnBoard.BoardSizeY - 1; j >= 0; j--)
        {
            GUILayout.BeginHorizontal();
            for (int i = 0; i < o.matchController.FigureOnBoard.BoardSizeX; i++)
            {
                var item = o.matchController.FigureOnBoard.GetFigureByPosition(new BoardPosition(i, j));
                GUILayout.TextField(UciConverter.GetFigureLetter(item.IsNullObject, item.Side, item.Type));
            }
            GUILayout.EndHorizontal();
        }
    }