Exemplo n.º 1
0
 public static bool ChangeCurrentPlayer()
 {
     if (currentPlayer == Piece.Party.white)
     {
         currentPlayer = Piece.Party.black;
     }
     else
     {
         currentPlayer = Piece.Party.white;
     }
     return(Play());
 }
Exemplo n.º 2
0
        public static List <Piece> GetPieceOfTeam(Piece[,] board, Piece.Party teamParty)
        {
            List <Piece> pieces = new List <Piece>();

            foreach (var piece in board)
            {
                if (piece != null && piece.party == teamParty)
                {
                    pieces.Add(piece);
                }
            }
            return(pieces);
        }
Exemplo n.º 3
0
        public void GameStart(Piece.Party party, PlayerManager.PlayerType whitePlayer, PlayerManager.PlayerType blackPlayer)
        {
            focusParty = party;
            Board board = new Board(party);

            board.fillNullToBoard();
            board.initPieces();
            History       history       = new History(Board.board);
            PlayerManager playerManager = new PlayerManager();

            PlayerManager.blackPlayer = blackPlayer;
            PlayerManager.whitePlayer = whitePlayer;
            PlayerManager.Play();
        }
Exemplo n.º 4
0
        private List <Piece> GetPieceOfTeam(Piece[,] pieces)
        {
            Piece.Party  party        = Manager.PlayerManager.currentPlayer;
            List <Piece> OpposingTeam = new List <Piece>();

            foreach (var piece in pieces)
            {
                if (piece != null && piece.party == party)
                {
                    OpposingTeam.Add(piece);
                }
            }
            return(OpposingTeam);
        }
Exemplo n.º 5
0
        private List <Piece> CheckMovableCoorOfTeamPieces(List <Piece> teamPieces, Piece[,] board)
        {
            Piece.Party  party         = Manager.PlayerManager.currentPlayer;
            List <Piece> movablePieces = new List <Piece>();

            foreach (var piece in teamPieces)
            {
                List <Coordinate> coordinates = piece.getMovablePos(board, true);
                if (coordinates == null || coordinates.Count() == 0)
                {
                }
                else
                {
                    movablePieces.Add(piece);
                }
            }
            return(movablePieces);
        }
Exemplo n.º 6
0
 public History(Piece [,] board)
 {
     checkNext();
     historyCounter++;
     hisBoard       = SomeProcess.BoardCoppier(board);
     doesGameFinish = GameManager.doesGameFinish;
     gameIsGoing    = GameManager.gameIsGoing;
     currentPlayer  = PlayerManager.currentPlayer;
     if (GameManager.upperPawnCoor != null)
     {
         upperPawnCoor = new Coordinate(GameManager.upperPawnCoor.GetCorX, GameManager.upperPawnCoor.GetCorY);
     }
     else
     {
         upperPawnCoor = null;
     }
     rootHistory.Add(this);
 }
Exemplo n.º 7
0
        public static void PutPiece(String name)
        {
            Piece.Party party = PlayerManager.currentPlayer;

            if (name.Equals("Queen"))
            {
                PieceSetter(new Queen(party));
            }
            else if (name.Equals("Rook"))
            {
                PieceSetter(new Rook(party));
            }
            else if (name.Equals("Bishop"))
            {
                PieceSetter(new Bishop(party));
            }
            else if (name.Equals("Knight"))
            {
                PieceSetter(new Knight(party));
            }
        }
Exemplo n.º 8
0
 public PlayerManager()
 {
     currentPlayer = Piece.Party.white;
 }