Advertisement
Guest User

Untitled

a guest
May 24th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.18 KB | None | 0 0
  1. package application;
  2.  
  3. import java.io.ObjectInputStream;
  4. import java.util.List;
  5.  
  6. import javafx.application.Platform;
  7.  
  8. public class Reader extends Thread {
  9. private Main mainframe;
  10. private Matrica a;
  11. private ObjectInputStream ojsa;
  12.  
  13. public Reader(Main mainframe, Matrica a, ObjectInputStream ojsa) {
  14. this.a = a;
  15. this.mainframe = mainframe;
  16. this.ojsa = ojsa;
  17. }
  18. @Override
  19. public void run() {
  20. try {
  21. Potez p = (Potez) ojsa.readObject();
  22. if (!p.getEatingOccured()) {
  23. mainframe.pomeranje(p.getPotez().get(0).getX(), p.getPotez().get(0).getY(), p.getPotez().get(1).getX(),
  24. p.getPotez().get(1).getY());
  25. a.potezKretanje(p.getPotez().get(0).getX(), p.getPotez().get(0).getY(), p.getPotez().get(1).getX(),
  26. p.getPotez().get(1).getY());
  27. mainframe.addPotez(p);
  28. mainframe.checkWinner();
  29. } else {
  30. for (int i = 0;i < p.put.size()-1;i+=2) {
  31. mainframe.jedeOdrFiguru(p.put.get(i), p.put.get(i+1));
  32. a.brisi(p.put.get(i), p.put.get(i+1));
  33. }
  34.  
  35. a.stavi(p.koordinate.get(2), p.koordinate.get(3), p.boja);
  36. mainframe.pomeranje(p.koordinate.get(0), p.koordinate.get(1), p.koordinate.get(2), p.koordinate.get(3));
  37. /*
  38. mainframe.jedefigura(p.getPotez().get(0).getX(), p.getPotez().get(0).getY(), p.getPotez().get(1).getX(),
  39. p.getPotez().get(1).getY());
  40. a.potezUzimanje(p.getPotez().get(0).getX(), p.getPotez().get(0).getY(), p.getPotez().get(1).getX(),
  41. p.getPotez().get(1).getY());*/
  42. mainframe.addPotez(p);
  43. mainframe.checkWinner();
  44. }
  45. } catch (Exception e) {
  46. //hvataj sve izuzetke
  47. Platform.runLater(new Runnable() {
  48. @Override
  49. public void run() {
  50. // mainframe.onConnectionLost();
  51. }
  52. });
  53. } finally {
  54. a.backtrackClear();//sva polja koriscena za backtrack postavlja na "default" vrednosti
  55. a.promeniIgraca();//ako bude mesao figure tokom "jedenja" promeniti pocetnu vrednost polja 'tekuciIgrac'
  56. List<Integer> lista = a.moraUzeti();
  57. if(lista.size() > 0){
  58. for (int i = 0;i < a.moraUzeti().size()-1;i+=2) {
  59. a.najvisePojedenih(a.getTabla(), lista.get(i), lista.get(i+1));
  60. }
  61. }
  62.  
  63. if (a.FIGURE_NAJVISE[0][0] != -1)
  64. mainframe.staviEfekat(a.FIGURE_NAJVISE[0][0], a.FIGURE_NAJVISE[0][1]);
  65. else if (a.FIGURE_NAJVISE[1][0] != -1)
  66. mainframe.staviEfekat(a.FIGURE_NAJVISE[1][0], a.FIGURE_NAJVISE[1][1]);
  67. else if (a.FIGURE_NAJVISE[2][0] != -1)
  68. mainframe.staviEfekat(a.FIGURE_NAJVISE[2][0], a.FIGURE_NAJVISE[2][1]);
  69. else if (a.FIGURE_NAJVISE[3][0] != -1)
  70. mainframe.staviEfekat(a.FIGURE_NAJVISE[3][0], a.FIGURE_NAJVISE[3][1]);
  71.  
  72. }
  73. }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement