Advertisement
Guest User

Untitled

a guest
May 16th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.10 KB | None | 0 0
  1. if (prviklik == false) {
  2. if (jaIgram) {
  3. x = grid.getRowIndex(novo);
  4. y = grid.getColumnIndex(novo);
  5. this.prviklik = true;
  6. skiniEfekat(x, y);
  7. if (x == mat.FIGURE_NAJVISE[0][0] && y == mat.FIGURE_NAJVISE[0][1]) {
  8. for (int ite = 0;ite < mat.F1.size()-1;ite+=2)
  9. staviEfekat(mat.F1.get(ite), mat.F1.get(ite+1));
  10. izabranaFigura[0] = x;
  11. izabranaFigura[1] = y;
  12. izabranaFigura[2] = mat.getTabla()[x][y];
  13. izabranaFigura[3] = 1;
  14. } else if (x == mat.FIGURE_NAJVISE[1][0] && y == mat.FIGURE_NAJVISE[1][1]) {
  15. for (int ite = 0;ite < mat.F2.size()-1;ite+=2)
  16. staviEfekat(mat.F2.get(ite), mat.F2.get(ite+1));
  17. izabranaFigura[0] = x;
  18. izabranaFigura[1] = y;
  19. izabranaFigura[2] = mat.getTabla()[x][y];
  20. izabranaFigura[3] = 2;
  21. } else if (x == mat.FIGURE_NAJVISE[2][0] && y == mat.FIGURE_NAJVISE[2][1]) {
  22. for (int ite = 0;ite < mat.F3.size()-1;ite+=2)
  23. staviEfekat(mat.F3.get(ite), mat.F3.get(ite+1));
  24. izabranaFigura[0] = x;
  25. izabranaFigura[1] = y;
  26. izabranaFigura[2] = mat.getTabla()[x][y];
  27. izabranaFigura[3] = 3;
  28. } else if (x == mat.FIGURE_NAJVISE[3][0] && y == mat.FIGURE_NAJVISE[3][1]) {
  29. for (int ite = 0;ite < mat.F4.size()-1;ite+=2)
  30. staviEfekat(mat.F4.get(ite), mat.F4.get(ite+1));
  31. izabranaFigura[0] = x;
  32. izabranaFigura[1] = y;
  33. izabranaFigura[2] = mat.getTabla()[x][y];
  34. izabranaFigura[3] = 4;
  35. } else {
  36. lista = mat.moguceKretanje(x, y);
  37. for (int l = 0; l < lista.size(); l += 2) {
  38. Button pom = (Button) grid.getChildren().get(lista.get(l) * 10 + lista.get(l + 1));
  39. pom.setEffect(new Lighting());
  40. }
  41. }
  42. }
  43. } else {
  44.  
  45. int x1 = grid.getRowIndex(novo);
  46. int y1 = grid.getColumnIndex(novo);
  47. if (x == x1 && y == y1) {
  48. for (int l = 0; l < lista.size(); l += 2) {
  49. Button pom = (Button) grid.getChildren().get(lista.get(l) * 10 + lista.get(l + 1));
  50. pom.setEffect(null);
  51. }
  52. prviklik = false;
  53. } else if (mat.daliFigura(x1, y1)) {
  54. for (int l = 0; l < lista.size(); l += 2) {
  55. Button pom = (Button) grid.getChildren().get(lista.get(l) * 10 + lista.get(l + 1));
  56. pom.setEffect(null);
  57. }
  58. x = x1;
  59. y = y1;
  60. lista = mat.moguceKretanje(x1, y1);
  61. for (int l = 0; l < lista.size(); l += 2) {
  62. Button pom = (Button) grid.getChildren().get(lista.get(l) * 10 + lista.get(l + 1));
  63. pom.setEffect(new Lighting());
  64. }
  65. } else if (mat.daliSuprotno(x1, y1)) {
  66.  
  67. } else {
  68. prviklik = false;
  69. for (int t = 0; t < lista.size(); t += 2) {
  70. if (mat.moraUzeti().size() > 0) {
  71. int[] konKoord = {-1, -1};
  72. if (izabranaFigura[0] == x && izabranaFigura[1] == y) {
  73. if (izabranaFigura[3] == 1) {
  74. int brojac = 0;
  75. boolean nadjen = false;
  76. for (int it = 0;it < mat.F1.size()-1 && !nadjen;it+=2) {
  77. if (mat.F1.get(it) == x1 && mat.F1.get(it+1) == y1)
  78. nadjen = true;
  79. konKoord[0] = x1;
  80. konKoord[1] = y1;
  81. brojac++;
  82. }
  83. int it = 0;
  84. while (brojac > 0) {
  85. if (mat.PUT1.get(it) == -1)
  86. brojac--;
  87. it++;
  88. }
  89. for (int ite = it;ite < mat.PUT1.size() && mat.PUT1.get(ite) != -1;ite++) {
  90. put.add(mat.PUT1.get(ite));
  91. }
  92. } else if (izabranaFigura[3] == 2) {
  93. int brojac = 0;
  94. boolean nadjen = false;
  95. for (int it = 0;it < mat.F2.size()-1 && !nadjen;it+=2) {
  96. if (mat.F2.get(it) == x1 && mat.F2.get(it+1) == y1)
  97. nadjen = true;
  98. konKoord[0] = x1;
  99. konKoord[1] = y1;
  100. brojac++;
  101. }
  102. int it = 0;
  103. while (brojac > 0) {
  104. if (mat.PUT2.get(it) == -1)
  105. brojac--;
  106. it++;
  107. }
  108. for (int ite = it;ite < mat.PUT2.size() && mat.PUT2.get(ite) != -1;ite++) {
  109. put.add(mat.PUT2.get(ite));
  110. }
  111. } else if (izabranaFigura[3] == 3) {
  112. int brojac = 0;
  113. boolean nadjen = false;
  114. for (int it = 0;it < mat.F3.size()-1 && !nadjen;it+=2) {
  115. if (mat.F3.get(it) == x1 && mat.F3.get(it+1) == y1)
  116. nadjen = true;
  117. konKoord[0] = x1;
  118. konKoord[1] = y1;
  119. brojac++;
  120. }
  121. int it = 0;
  122. while (brojac > 0) {
  123. if (mat.PUT3.get(it) == -1)
  124. brojac--;
  125. it++;
  126. }
  127. for (int ite = it;ite < mat.PUT3.size() && mat.PUT3.get(ite) != -1;ite++) {
  128. put.add(mat.PUT3.get(ite));
  129. }
  130. } else if (izabranaFigura[3] == 4) {
  131. int brojac = 0;
  132. boolean nadjen = false;
  133. for (int it = 0;it < mat.F4.size()-1 && !nadjen;it+=2) {
  134. if (mat.F4.get(it) == x1 && mat.F4.get(it+1) == y1)
  135. nadjen = true;
  136. konKoord[0] = x1;
  137. konKoord[1] = y1;
  138. brojac++;
  139. }
  140. int it = 0;
  141. while (brojac > 0) {
  142. if (mat.PUT4.get(it) == -1)
  143. brojac--;
  144. it++;
  145. }
  146. for (int ite = it;ite < mat.PUT4.size() && mat.PUT4.get(ite) != -1;ite++) {
  147. put.add(mat.PUT4.get(ite));
  148. }
  149. }
  150. }
  151. pomeranje(x, y, konKoord[0], konKoord[1]);
  152. int figura123 = mat.getTabla()[x][y];
  153. mat.stavi(konKoord[0], konKoord[1], figura123);
  154. for (int it = 0;it < put.size()-1;it+=2) {
  155. mat.brisi(put.get(it), put.get(it+1));
  156. }
  157. jaIgram = false;
  158. checkWinner();
  159. Potez p = new Potez (x, y, konKoord[0], konKoord[1], true, put, figura123);
  160. try{
  161.  
  162. out.writeObject(p);
  163. }catch(IOException io){
  164.  
  165. }
  166. //mat.settekuciigrac
  167. for (int l = 0; l < lista.size(); l += 2) {
  168. Button pom = (Button) grid.getChildren()
  169. .get(lista.get(l) * 10 + lista.get(l + 1));
  170. pom.setEffect(null);
  171. }
  172. } else if (x1 == lista.get(t) && y1 == lista.get(t + 1)) {
  173. pomeranje(x, y, lista.get(t), lista.get(t + 1));
  174. mat.potezKretanje(x, y, lista.get(t), lista.get(t + 1));
  175. jaIgram = false;
  176. checkWinner();
  177. //Potezu se treba dati i boolean vrednost ukoliko je doslo do jedenja
  178. //Proveri da li je doslo do jedenja pa, ako jeste dodaj na kraju formalnih arg i true
  179. Potez p = new Potez(x, y, x1, y1);
  180. addPotez(p);
  181. try{
  182.  
  183. out.writeObject(p);
  184. }catch(IOException io){
  185.  
  186. }
  187. //mat.settekuciigrac
  188. for (int l = 0; l < lista.size(); l += 2) {
  189. Button pom = (Button) grid.getChildren()
  190. .get(lista.get(l) * 10 + lista.get(l + 1));
  191. pom.setEffect(null);
  192. }
  193. }
  194. }
  195. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement