コード例 #1
0
    void Search()
    {
        chessmanManager.hidePointer();
        int x = (int)ChessmanManager.chessman[ChessmanId]._x; //棋子位置x

        x = x == 0 ? 0 : x / 3;                               //换算成棋盘坐标
        int z = (int)ChessmanManager.chessman[ChessmanId]._z;

        z = z == 0 ? 0 : z / 3;
        switch (ChessmanManager.chessman[ChessmanId]._type)
        {
        case ChessmanManager.Chessman.TYPE.KING:
            ChessMoveGenerator.Gen_KingMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            break;

        case ChessmanManager.Chessman.TYPE.GUARD:
            ChessMoveGenerator.Gen_GuardMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            break;

        case ChessmanManager.Chessman.TYPE.ELEPHANT:
            ChessMoveGenerator.Gen_ElephantMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            break;

        case ChessmanManager.Chessman.TYPE.HORSE:
            ChessMoveGenerator.Gen_HorseMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            break;

        case ChessmanManager.Chessman.TYPE.ROOK:
            ChessMoveGenerator.Gen_RookMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            break;

        case ChessmanManager.Chessman.TYPE.CANNON:
            ChessMoveGenerator.Gen_CannonMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            break;

        case ChessmanManager.Chessman.TYPE.PAWN:
            if (isRed)
            {
                ChessMoveGenerator.Gen_RPawnMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            }
            else
            {
                ChessMoveGenerator.Gen_BPawnMove(GlobalConst.Instance.ChessBoard, x, z, 100);
            }
            break;
        }
    }
コード例 #2
0
 /// <summary>
 /// 离线模式
 /// </summary>
 public void OfflineModeAct(int nPly)
 {
     HidePath();
     chessManManager.hidePointer();
     _isRedTurn = true;
     PhotonNetwork.offlineMode = true;
     nFlag = 0;
     PlayMusic(welcomMusic);
     AI.OnNewGame(1, nPly);
     chessManManager.ChessmanInit();
     LocalGameStatusText.text  = "开局!";
     RemoteGameStatusText.text = "开局!";
     localPlayerType           = ChessPlayerType.Red;
     LocalGameStatusText.text  = "您是红方棋手……";
     if (PlayerPrefs.HasKey("PlayerName"))
     {
         this.LocalPlayerNameText.text = PlayerPrefs.GetString("PlayerName") + ":红方";
     }
     RemotePlayerNameText.text = "AI:黑方";
     UpdatePlayerScoreTexts();
     this.StartTurn();
 }