private static bool checkCOORD(Player currentPlayer, GameBoard game, Move move) { if (currentPlayer.getIdentity() == (char)identity.X) { if (game.getSquareToken(move.Begin) != Square.X) { Console.Write("Invalid COORD... Try Again"); return(false); //Greater than thye loaction your on } return(true); } if (currentPlayer.getIdentity() == (char)identity.O) { if (game.getSquareToken(move.Begin) != Square.O) { Console.Write("Invalid COORD... Try Again"); return(false); //Greater than thye loaction your on } return(true); } else { Console.Write("Invalid COORD... Try Again"); return(false); } }
//Begin the game private static void beginGame(ref Player currentPlayer, ref GameBoard Game, ref Move move) { while (!Game.gameOver()) { do { move.getBeginMove(); }while (!checkCOORD(currentPlayer, Game, move)); do { move.getEndMove(); }while (!checkMove(currentPlayer, Game, move)); Game.movePiece(move); Game.printGameBoard(); if (currentPlayer.getIdentity() == (char)identity.X) { currentPlayer.setPlayer(identity.O); } else { currentPlayer.setPlayer(identity.X); } } }
private void setFirstPlayer() { //set the current player to whichever player is going first if (playerGoingFirst) { currentPlayer = PlayerX; Debug.Log("PlayerX going first"); } else { currentPlayer = PlayerO; Debug.Log("PlayerO going first"); } //update the game core game.newGameBoard(currentPlayer.getIdentity()); }
static void Main(string[] args) { //Define the players Player PlayerX = new Player(); PlayerX.setPlayer(identity.X); Player PlayerO = new AIPlayer(); PlayerO.setPlayer(identity.O); Player currentPlayer = null; //Find out the first player, and set currentPlayer FirstPlayer(PlayerX, PlayerO, ref currentPlayer); //Setup the game board game = new GameBoard(); game.newGameBoard(currentPlayer.getIdentity()); COORD coord = new COORD(); Move move = new Move(); beginGame(currentPlayer.getIdentity(), ref PlayerX, ref PlayerO, ref game, ref move); }
private static bool checkMove(Player currentPlayer, GameBoard game, Move move) { if (currentPlayer.getIdentity() == (char)identity.X) { if (game.getSquareToken(move.End) == Square.X) { Console.Write("Invalid move... Try Again"); return(false); //Greater than the loaction your on } // Check for Up one if ( move.Begin.X - 1 == move.End.X && //Check Left,Center,Right after up one) ( move.Begin.Y - 1 == move.End.Y || (move.Begin.Y == move.End.Y && game.getSquareToken(move.End) != Square.O) || move.Begin.Y + 1 == move.End.Y ) && //Check Bounds For X ((move.End.X <= 7 && move.End.X >= 0) && //Check Bounds For Y (move.End.Y <= 7 && move.End.Y >= 0)) ) { return(true); } else { return(false); } } if (currentPlayer.getIdentity() == (char)identity.O) { if (game.getSquareToken(move.End) == Square.O) { Console.Write("Invalid move... Try Again"); return(false); //Greater than the loaction your on } // Check for Down one if ( move.Begin.X + 1 == move.End.X && //Check Left,Center,Right after up one) ( move.Begin.Y - 1 == move.End.Y || (move.Begin.Y == move.End.Y && game.getSquareToken(move.End) != Square.X) || move.Begin.Y + 1 == move.End.Y ) && //Check Bounds For X ((move.End.X <= 7 && move.End.X >= 0) && //Check Bounds For Y (move.End.Y <= 7 && move.End.Y >= 0)) ) { return(true); } else { return(false); } } return(false); }
public static bool checkMove(Player currentPlayer, Move move) { return(game.checkMove(currentPlayer.getIdentity(), move)); }