Advertisement
Guest User

Untitled

a guest
Oct 20th, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.22 KB | None | 0 0
  1. public void turnoRojo(Partida unaPartida) {
  2. Ficha[][] tablero = unaPartida.getTablero().getTablero();
  3. boolean primerMovimiento = true;
  4. boolean reducido = false;
  5. boolean terminoTurno = false;
  6. boolean surrender = false;
  7. boolean hayMovimientos = true;
  8. Ficha fichaAnterior = null;
  9. Interfaz.textoCentrado("Turno del jugador " + Interfaz.ANSI_RED + "Rojo-" + Interfaz.ANSI_RESET + unaPartida.getJugadorR().getAlias());
  10. Interfaz.textoCentrado("Puede mover todas las fichas");
  11. do {
  12. Interfaz.textoCentrado("Elija que hacer");
  13. String input = Interfaz.checkInput();
  14. switch (input) {
  15. case "VERN":
  16. Movimiento movimiento = new Movimiento("R", "VERN");
  17. unaPartida.agregarMovimiento(movimiento);
  18. Interfaz.textoCentrado("Cambiando el tablero a modo normal...");
  19. reducido = false;
  20. Interfaz.printTablero(reducido, tablero);
  21. break;
  22. case "VERR":
  23. movimiento = new Movimiento("R", "VERR");
  24. unaPartida.agregarMovimiento(movimiento);
  25. Interfaz.textoCentrado("Cambiando el tablero a modo reducido...");
  26. reducido = true;
  27. Interfaz.printTablero(reducido, tablero);
  28. break;
  29. case "X":
  30. movimiento = new Movimiento("R", "X");
  31. unaPartida.agregarMovimiento(movimiento);
  32. unaPartida.setGanador(unaPartida.getJugadorA());
  33. surrender = true;
  34. break;
  35. case "P":
  36. if (primerMovimiento) {
  37. Interfaz.textoCentrado("No puedes pasar turno sin hacer un movimiento");
  38. } else {
  39. movimiento = new Movimiento("R", "P");
  40. unaPartida.agregarMovimiento(movimiento);
  41. terminoTurno = true;
  42. }
  43. break;
  44. default:
  45. int ficha = Integer.parseInt(input.substring(0, 1));
  46. String direccion = input.substring(1, 2);
  47. Ficha fichaa = null;
  48. for (int i = 0; i < unaPartida.getTablero().getTablero().length; i++) {
  49. for (int j = 0; j < tablero[i].length; j++) {
  50. if (tablero[i][j] != null) {
  51. if (tablero[i][j].getId() == ficha && tablero[i][j].getColor().equals("R")) {
  52. fichaa = tablero[i][j];
  53. }
  54. }
  55. }
  56. }
  57. switch (direccion) {
  58. case "A":
  59. movimiento = new Movimiento(fichaa, fichaa.getFila() - 1, fichaa.getColumna());
  60. if (unaPartida.getTablero().validarMovimiento(movimiento, primerMovimiento, fichaAnterior) == true) {
  61. primerMovimiento = false;
  62. fichaAnterior = movimiento.getFicha();
  63. unaPartida.getTablero().moverFicha(movimiento, unaPartida);
  64. Interfaz.printFichasDisponibles(unaPartida, movimiento.getFicha());
  65. Interfaz.printTablero(reducido, tablero);
  66. unaPartida.agregarMovimiento(movimiento);
  67. hayMovimientos = unaPartida.getTablero().hayFichasDisponibles(movimiento.getFicha());
  68. } else {
  69. Interfaz.textoCentrado("Movimiento invalido");
  70. }
  71. break;
  72. case "D":
  73. movimiento = new Movimiento(fichaa, fichaa.getFila() - 1, fichaa.getColumna() + 1);
  74. if (unaPartida.getTablero().validarMovimiento(movimiento, primerMovimiento, fichaAnterior) == true) {
  75. primerMovimiento = false;
  76. fichaAnterior = movimiento.getFicha();
  77. unaPartida.getTablero().moverFicha(movimiento, unaPartida);
  78. Interfaz.printFichasDisponibles(unaPartida, movimiento.getFicha());
  79. Interfaz.printTablero(reducido, tablero);
  80. unaPartida.agregarMovimiento(movimiento);
  81. hayMovimientos = unaPartida.getTablero().hayFichasDisponibles(movimiento.getFicha());
  82. } else {
  83. Interfaz.textoCentrado("Movimiento invalido");
  84. }
  85. break;
  86. case "I":
  87. movimiento = new Movimiento(fichaa, fichaa.getFila() - 1, fichaa.getColumna() - 1);
  88. if (unaPartida.getTablero().validarMovimiento(movimiento, primerMovimiento, fichaAnterior) == true) {
  89. primerMovimiento = false;
  90. fichaAnterior = movimiento.getFicha();
  91. unaPartida.getTablero().moverFicha(movimiento, unaPartida);
  92. Interfaz.printFichasDisponibles(unaPartida, movimiento.getFicha());
  93. Interfaz.printTablero(reducido, tablero);
  94. unaPartida.agregarMovimiento(movimiento);
  95. hayMovimientos = unaPartida.getTablero().hayFichasDisponibles(movimiento.getFicha());
  96. } else {
  97. Interfaz.textoCentrado("Movimiento invalido");
  98. }
  99. }
  100.  
  101. break;
  102.  
  103. }
  104. } while (hayMovimientos == true && terminoTurno == false && surrender == false);
  105. }
  106.  
  107. public void turnoAzul(Partida unaPartida) {
  108. Ficha[][] tablero = unaPartida.getTablero().getTablero();
  109. boolean primerMovimiento = true;
  110. boolean reducido = false;
  111. boolean terminoTurno = false;
  112. boolean surrender = false;
  113. boolean hayMovimientos = true;
  114. Ficha fichaAnterior = null;
  115. Interfaz.textoCentrado("Turno del jugador " + Interfaz.ANSI_BLUE + "Azul-" + Interfaz.ANSI_RESET + unaPartida.getJugadorA().getAlias());
  116. Interfaz.textoCentrado("Puede mover todas las fichas");
  117. do {
  118. Interfaz.textoCentrado("Elija que hacer");
  119. //printFichasDisponibles(tablero, movimiento.getFicha());
  120. String input = Interfaz.checkInput();
  121. switch (input) {
  122. case "VERN":
  123. Movimiento movimiento = new Movimiento("A", "VERN");
  124. unaPartida.agregarMovimiento(movimiento);
  125. Interfaz.textoCentrado("Cambiando el tablero a modo normal...");
  126. reducido = false;
  127. Interfaz.printTablero(reducido, tablero);
  128. break;
  129. case "VERR":
  130. movimiento = new Movimiento("A", "VERR");
  131. unaPartida.agregarMovimiento(movimiento);
  132. Interfaz.textoCentrado("Cambiando el tablero a modo reducido...");
  133. reducido = true;
  134. Interfaz.printTablero(reducido, tablero);
  135. break;
  136. case "X":
  137. movimiento = new Movimiento("A", "X");
  138. unaPartida.agregarMovimiento(movimiento);
  139. unaPartida.setGanador(unaPartida.getJugadorR());
  140. surrender = true;
  141. break;
  142. case "P":
  143. if (primerMovimiento) {
  144. Interfaz.textoCentrado("No puedes pasar turno sin hacer un movimiento");
  145. } else {
  146. movimiento = new Movimiento("R", "P");
  147. unaPartida.agregarMovimiento(movimiento);
  148. terminoTurno = true;
  149. }
  150. break;
  151. default:
  152. int ficha = Integer.parseInt(input.substring(0, 1));
  153. String direccion = input.substring(1, 2);
  154. Ficha fichaa = null;
  155. for (int i = 0; i < tablero.length; i++) {
  156. for (int j = 0; j < tablero[i].length; j++) {
  157. if (tablero[i][j] != null) {
  158. if (tablero[i][j].getId() == ficha && tablero[i][j].getColor().equals("A")) {
  159. fichaa = tablero[i][j];
  160. }
  161. }
  162. }
  163. }
  164. switch (direccion) {
  165. case "A":
  166. movimiento = new Movimiento(fichaa, fichaa.getFila() + 1, fichaa.getColumna());
  167. if (unaPartida.getTablero().validarMovimiento(movimiento, primerMovimiento, fichaAnterior) == true) {
  168. primerMovimiento = false;
  169. fichaAnterior = movimiento.getFicha();
  170. unaPartida.getTablero().moverFicha(movimiento, unaPartida);
  171. Interfaz.printFichasDisponibles(unaPartida, movimiento.getFicha());
  172. Interfaz.printTablero(reducido, tablero);
  173. unaPartida.agregarMovimiento(movimiento);
  174. hayMovimientos = unaPartida.getTablero().hayFichasDisponibles(movimiento.getFicha());
  175.  
  176. } else {
  177. Interfaz.textoCentrado("Movimiento invalido");
  178. }
  179. break;
  180. case "D":
  181. movimiento = new Movimiento(fichaa, fichaa.getFila() + 1, fichaa.getColumna() + 1);
  182. if (unaPartida.getTablero().validarMovimiento(movimiento, primerMovimiento, fichaAnterior) == true) {
  183. primerMovimiento = false;
  184. fichaAnterior = movimiento.getFicha();
  185. unaPartida.getTablero().moverFicha(movimiento, unaPartida);
  186. Interfaz.printFichasDisponibles(unaPartida, movimiento.getFicha());
  187. Interfaz.printTablero(reducido, tablero);
  188. unaPartida.agregarMovimiento(movimiento);
  189. hayMovimientos = unaPartida.getTablero().hayFichasDisponibles(movimiento.getFicha());
  190. } else {
  191. Interfaz.textoCentrado("Movimiento invalido");
  192. }
  193. break;
  194. case "I":
  195. movimiento = new Movimiento(fichaa, fichaa.getFila() + 1, fichaa.getColumna() - 1);
  196. if (unaPartida.getTablero().validarMovimiento(movimiento, primerMovimiento, fichaAnterior) == true) {
  197. primerMovimiento = false;
  198. fichaAnterior = movimiento.getFicha();
  199. unaPartida.getTablero().moverFicha(movimiento, unaPartida);
  200. Interfaz.printFichasDisponibles(unaPartida, movimiento.getFicha());
  201. Interfaz.printTablero(reducido, tablero);
  202. unaPartida.agregarMovimiento(movimiento);
  203. hayMovimientos = unaPartida.getTablero().hayFichasDisponibles(movimiento.getFicha());
  204. } else {
  205. Interfaz.textoCentrado("Movimiento invalido");
  206. }
  207. }
  208.  
  209. break;
  210.  
  211. }
  212. } while (hayMovimientos == true && terminoTurno == false && surrender == false);
  213. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement