Advertisement
Guest User

Untitled

a guest
Mar 19th, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1. public class Main extends Application {
  2.  
  3. /**
  4. * Contient l'interface visuelle du jeu.
  5. */
  6. private static SceneJeu jeu;
  7.  
  8. Projectile p;///////
  9.  
  10. /**
  11. * Processus principal qui met à jour les valeurs du modèle et l'apparence du
  12. * jeu.
  13. */
  14. private Render render;
  15.  
  16. /**
  17. * Classe privée qui hérite de ScheduledService. Sert à définir les actions du
  18. * thread de mise à jour.
  19. *
  20. * @author Élie Bédard, Diego Cabas, Vincent McKibbin
  21. *
  22. */
  23. private class Render extends ScheduledService<Void> {
  24.  
  25. /**
  26. * Constructeur.
  27. */
  28. public Render() {
  29. super();
  30. }
  31.  
  32. /**
  33. * Crée la tâche.
  34. */
  35. @Override
  36. protected Task<Void> createTask() {
  37. return new Task<Void>() {
  38.  
  39. @Override
  40. protected Void call() throws Exception {
  41. if (jeu.niveauEstFini()) {
  42. changerNiveau();
  43. System.out.println(jeu.getJoueur());
  44. }
  45.  
  46. for (Acteur a : jeu.getActeurs()) {
  47.  
  48. // if (a instanceof Projectile) {
  49. // Projectile p1 = (Projectile) a;
  50. // p1.deplacement();
  51. // }
  52.  
  53. if (a instanceof Ennemi) {
  54. Ennemi e = (Ennemi) a;
  55. e.deplacement();
  56. e.collisions();
  57.  
  58. if(e.getHp() < 0){
  59. jeu.getActeurs().remove(a);
  60. }
  61.  
  62. if(e.veutAttaquer(jeu.getJoueur())) {
  63. jeu.getProjectiles().add(e.lancerProjectile(jeu.getJoueur().getPosX(), jeu.getJoueur().getPosY()));
  64. }
  65. // p = e.lancerProjectile(jeu.getJoueur().getPosX(), jeu.getJoueur().getPosY());
  66. // System.out.println(p);
  67.  
  68. // if (jeu.getJoueur().collision(p)) {
  69. // jeu.getActeurs().remove(p);
  70. // System.out.println("aa");
  71. // }
  72.  
  73. }
  74. }
  75.  
  76. for (Projectile p : jeu.getProjectiles()) {
  77. p.deplacement();
  78. if(p.enleverProjectile()){
  79. jeu.getProjectiles().remove(p);
  80. p.setDommageTest(false);
  81. }
  82. }
  83.  
  84. // jeu.getActeurs().add(p);
  85. jeu.getJoueur().deplacement();
  86. jeu.getJoueur().collisions();
  87. jeu.drawArea();
  88.  
  89. return null;
  90. }
  91.  
  92. };
  93. }
  94.  
  95. }
  96.  
  97. /**
  98. * Lance l'application
  99. *
  100. * @param args
  101. */
  102. public static void main(String... args) {
  103. launch(args);
  104. }
  105.  
  106. /**
  107. * Initialise les attributs de l'application.
  108. */
  109. @Override
  110. public void start(Stage primaryStage) throws Exception {
  111. jeu = new SceneJeu();
  112.  
  113. primaryStage.setTitle("Jeu Plateformes");
  114.  
  115. Scene root = jeu.getMainScene();
  116. // root.getRoot().requestFocus();
  117.  
  118. // Set the scene and display the stage
  119. primaryStage.setScene(root);
  120. primaryStage.show();
  121.  
  122. launchRender();
  123.  
  124. }
  125.  
  126. public static SceneJeu getJeu() {
  127. return jeu;
  128. }
  129.  
  130. /**
  131. * Instancie et lance le thread de rendu.
  132. */
  133. private void launchRender() {
  134. render = new Render();
  135. render.setPeriod(Duration.millis(16.7));
  136. render.start();
  137. }
  138.  
  139. /**
  140. * Change le tableau de jeu.
  141. */
  142. private void changerNiveau() {
  143. jeu.setNiveau(jeu.getNiveau() + 1);
  144. jeu.remplirActeurs();
  145. jeu.getProjectiles().clear();
  146. jeu.getJoueur().setPosX(10);
  147. jeu.getJoueur().setPosY(10);
  148. }
  149.  
  150. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement