Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import games.board.*;
- import java.util.*;
- public class BoardGameTester {
- public static void main(String[] args) {
- Outcome outcome;
- Player player;
- Mark mark,flag;
- flag = Mark.EMPTY;
- int turn = 0;
- Scanner scan = new Scanner(System.in);
- outcome = Outcome.CONTINUE;
- mark = Mark.RED;
- //Problems here
- Board connect4 = new Board(6,7);
- connect4.randomMark(mark);
- player = Player.FIRST;
- do{
- System.out.println(connect4.toString());
- switch(player){
- case FIRST:
- System.out.println("Player One's Turn ("+mark+"):");
- connect4.setCell(mark, scan.nextInt(), scan.nextInt());
- player = Player.SECOND;
- if (mark == Mark.RED){
- mark = Mark.YELLOW;
- }else if (mark == Mark.YELLOW){
- mark = Mark.RED;
- }
- break;
- case SECOND:
- System.out.println("Player Two's Turn:");
- connect4.setCell(mark, scan.nextInt(), scan.nextInt());
- player = Player.FIRST;
- if (mark == Mark.RED){
- mark = Mark.YELLOW;
- }else if (mark == Mark.YELLOW){
- mark = Mark.RED;
- }
- break;
- default:
- //nothing
- }
- turn++;
- if (turn == 7){
- outcome = connect4.checkMate(outcome);
- flag = connect4.FourHCheck(Mark.EMPTY);
- if(flag == Mark.EMPTY){
- flag = connect4.FourVCheck(Mark.EMPTY);
- if(flag == Mark.EMPTY){
- flag = connect4.FourCrossCheck(Mark.EMPTY);
- }
- }
- }
- if (flag != Mark.EMPTY){
- switch(flag){
- case RED:
- mark = Mark.RED;
- break;
- case YELLOW:
- mark = Mark.YELLOW;
- break;
- }
- switch(player){
- case FIRST:
- player = Player.SECOND;
- outcome = Outcome.PLAYER2_WIN;
- break;
- case SECOND:
- player = Player.FIRST;
- outcome = Outcome.PLAYER1_WIN;
- break;
- }
- }
- switch(outcome){
- case TIE:
- System.out.println(outcome);
- System.out.println("Congratulations " + player + " player!");
- System.out.println(mark + " wins by default due to more placed markers.");
- break;
- case PLAYER1_WIN:
- System.out.println(outcome);
- System.out.println("Congratulations Player 1!");
- System.out.println(mark + " wins by 3 in a row");
- break;
- case PLAYER2_WIN:
- System.out.println(outcome);
- System.out.println("Congratulations Player 2");
- System.out.println(mark + " wins by 3 in a row");
- break;
- default:
- //nothing
- }
- }while (outcome == Outcome.CONTINUE);
- }
- public void TicTacToe(Outcome controller) {
- Outcome outcome;
- Player player;
- Mark mark,flag;
- flag = Mark.EMPTY;
- int turn = 0;
- Scanner scan = new Scanner(System.in);
- outcome = Outcome.CONTINUE;
- mark = Mark.RED;
- Board ttt = new Board(3,3);
- ttt.randomMark(mark);
- player = Player.FIRST;
- do{
- System.out.println(ttt.toString());
- switch(player){
- case FIRST:
- System.out.println("Player One's Turn ("+mark+"):");
- ttt.setCell(mark, scan.nextInt(), scan.nextInt());
- player = Player.SECOND;
- if (mark == Mark.RED){
- mark = Mark.YELLOW;
- }else if (mark == Mark.YELLOW){
- mark = Mark.RED;
- }
- break;
- case SECOND:
- System.out.println("Player Two's Turn:");
- ttt.setCell(mark, scan.nextInt(), scan.nextInt());
- player = Player.FIRST;
- if (mark == Mark.RED){
- mark = Mark.YELLOW;
- }else if (mark == Mark.YELLOW){
- mark = Mark.RED;
- }
- break;
- default:
- //nothing
- }
- turn++;
- if (turn == 5){
- outcome = ttt.checkMate(outcome);
- flag = ttt.HorizontalCheck(Mark.EMPTY);
- if(flag == Mark.EMPTY){
- flag = ttt.VerticalCheck(Mark.EMPTY);
- if(flag == Mark.EMPTY){
- flag = ttt.CrossCheck(Mark.EMPTY);
- }
- }
- }
- if (flag != Mark.EMPTY){
- switch(flag){
- case RED:
- mark = Mark.RED;
- break;
- case YELLOW:
- mark = Mark.YELLOW;
- break;
- }
- switch(player){
- case FIRST:
- player = Player.SECOND;
- outcome = Outcome.PLAYER2_WIN;
- break;
- case SECOND:
- player = Player.FIRST;
- outcome = Outcome.PLAYER1_WIN;
- break;
- }
- }
- switch(outcome){
- case TIE:
- System.out.println(outcome);
- System.out.println("Congratulations " + player + " player!");
- System.out.println(mark + " wins by default due to more placed markers.");
- break;
- case PLAYER1_WIN:
- System.out.println(outcome);
- System.out.println("Congratulations Player 1!");
- System.out.println(mark + " wins by 3 in a row");
- break;
- case PLAYER2_WIN:
- System.out.println(outcome);
- System.out.println("Congratulations Player 2");
- System.out.println(mark + " wins by 3 in a row");
- break;
- default:
- //nothing
- }
- }while (outcome == Outcome.CONTINUE);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement