Advertisement
d3adb0y

BoardGameTester.java

Feb 21st, 2014
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.09 KB | None | 0 0
  1. import games.board.*;
  2. import java.util.*;
  3. public class BoardGameTester {
  4. public static void main(String[] args) {
  5. Outcome outcome;
  6. Player player;
  7. Mark mark,flag;
  8. flag = Mark.EMPTY;
  9. int turn = 0;
  10. Scanner scan = new Scanner(System.in);
  11. outcome = Outcome.CONTINUE;
  12. mark = Mark.RED;
  13.  
  14. //Problems here
  15. Board connect4 = new Board(6,7);
  16.  
  17.  
  18. connect4.randomMark(mark);
  19. player = Player.FIRST;
  20. do{
  21. System.out.println(connect4.toString());
  22. switch(player){
  23. case FIRST:
  24. System.out.println("Player One's Turn ("+mark+"):");
  25. connect4.setCell(mark, scan.nextInt(), scan.nextInt());
  26. player = Player.SECOND;
  27. if (mark == Mark.RED){
  28. mark = Mark.YELLOW;
  29. }else if (mark == Mark.YELLOW){
  30. mark = Mark.RED;
  31. }
  32. break;
  33. case SECOND:
  34. System.out.println("Player Two's Turn:");
  35. connect4.setCell(mark, scan.nextInt(), scan.nextInt());
  36. player = Player.FIRST;
  37. if (mark == Mark.RED){
  38. mark = Mark.YELLOW;
  39. }else if (mark == Mark.YELLOW){
  40. mark = Mark.RED;
  41. }
  42. break;
  43. default:
  44. //nothing
  45. }
  46. turn++;
  47. if (turn == 7){
  48. outcome = connect4.checkMate(outcome);
  49. flag = connect4.FourHCheck(Mark.EMPTY);
  50. if(flag == Mark.EMPTY){
  51. flag = connect4.FourVCheck(Mark.EMPTY);
  52. if(flag == Mark.EMPTY){
  53. flag = connect4.FourCrossCheck(Mark.EMPTY);
  54. }
  55. }
  56. }
  57. if (flag != Mark.EMPTY){
  58. switch(flag){
  59. case RED:
  60. mark = Mark.RED;
  61. break;
  62. case YELLOW:
  63. mark = Mark.YELLOW;
  64. break;
  65. }
  66. switch(player){
  67. case FIRST:
  68. player = Player.SECOND;
  69. outcome = Outcome.PLAYER2_WIN;
  70. break;
  71. case SECOND:
  72. player = Player.FIRST;
  73. outcome = Outcome.PLAYER1_WIN;
  74. break;
  75. }
  76.  
  77. }
  78. switch(outcome){
  79. case TIE:
  80. System.out.println(outcome);
  81. System.out.println("Congratulations " + player + " player!");
  82. System.out.println(mark + " wins by default due to more placed markers.");
  83. break;
  84. case PLAYER1_WIN:
  85. System.out.println(outcome);
  86. System.out.println("Congratulations Player 1!");
  87. System.out.println(mark + " wins by 3 in a row");
  88. break;
  89. case PLAYER2_WIN:
  90. System.out.println(outcome);
  91. System.out.println("Congratulations Player 2");
  92. System.out.println(mark + " wins by 3 in a row");
  93. break;
  94. default:
  95. //nothing
  96. }
  97. }while (outcome == Outcome.CONTINUE);
  98. }
  99. public void TicTacToe(Outcome controller) {
  100. Outcome outcome;
  101. Player player;
  102. Mark mark,flag;
  103. flag = Mark.EMPTY;
  104. int turn = 0;
  105. Scanner scan = new Scanner(System.in);
  106. outcome = Outcome.CONTINUE;
  107. mark = Mark.RED;
  108. Board ttt = new Board(3,3);
  109. ttt.randomMark(mark);
  110. player = Player.FIRST;
  111. do{
  112. System.out.println(ttt.toString());
  113. switch(player){
  114. case FIRST:
  115. System.out.println("Player One's Turn ("+mark+"):");
  116. ttt.setCell(mark, scan.nextInt(), scan.nextInt());
  117. player = Player.SECOND;
  118. if (mark == Mark.RED){
  119. mark = Mark.YELLOW;
  120. }else if (mark == Mark.YELLOW){
  121. mark = Mark.RED;
  122. }
  123. break;
  124. case SECOND:
  125. System.out.println("Player Two's Turn:");
  126. ttt.setCell(mark, scan.nextInt(), scan.nextInt());
  127. player = Player.FIRST;
  128. if (mark == Mark.RED){
  129. mark = Mark.YELLOW;
  130. }else if (mark == Mark.YELLOW){
  131. mark = Mark.RED;
  132. }
  133. break;
  134. default:
  135. //nothing
  136. }
  137. turn++;
  138. if (turn == 5){
  139. outcome = ttt.checkMate(outcome);
  140. flag = ttt.HorizontalCheck(Mark.EMPTY);
  141. if(flag == Mark.EMPTY){
  142. flag = ttt.VerticalCheck(Mark.EMPTY);
  143. if(flag == Mark.EMPTY){
  144. flag = ttt.CrossCheck(Mark.EMPTY);
  145. }
  146. }
  147. }
  148. if (flag != Mark.EMPTY){
  149. switch(flag){
  150. case RED:
  151. mark = Mark.RED;
  152. break;
  153. case YELLOW:
  154. mark = Mark.YELLOW;
  155. break;
  156. }
  157. switch(player){
  158. case FIRST:
  159. player = Player.SECOND;
  160. outcome = Outcome.PLAYER2_WIN;
  161. break;
  162. case SECOND:
  163. player = Player.FIRST;
  164. outcome = Outcome.PLAYER1_WIN;
  165. break;
  166. }
  167.  
  168. }
  169. switch(outcome){
  170. case TIE:
  171. System.out.println(outcome);
  172. System.out.println("Congratulations " + player + " player!");
  173. System.out.println(mark + " wins by default due to more placed markers.");
  174. break;
  175. case PLAYER1_WIN:
  176. System.out.println(outcome);
  177. System.out.println("Congratulations Player 1!");
  178. System.out.println(mark + " wins by 3 in a row");
  179. break;
  180. case PLAYER2_WIN:
  181. System.out.println(outcome);
  182. System.out.println("Congratulations Player 2");
  183. System.out.println(mark + " wins by 3 in a row");
  184. break;
  185. default:
  186. //nothing
  187. }
  188. }while (outcome == Outcome.CONTINUE);
  189. }
  190. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement