From ff280da5e50cc797450eb56694b29a29e34e1096 Mon Sep 17 00:00:00 2001 From: Azurlors <florianrichard2001@gmail.com> Date: Tue, 3 Jan 2023 20:22:08 +0100 Subject: [PATCH] Version 4.0.0 --- .../src/main/java/engine/MenuPanel.java | 33 ++++++++++++++ .../src/main/java/entity/Character.java | 2 - MAVENProject/src/main/java/jeu/Jeu.java | 45 ++++++++++--------- MAVENProject/src/main/java/jeu/Painter.java | 8 ---- .../src/main/java/loaders/LoadSave.java | 4 -- .../src/main/java/map/LevelManager.java | 15 ++++--- MAVENProject/src/main/java/start/Main.java | 2 + 7 files changed, 70 insertions(+), 39 deletions(-) diff --git a/MAVENProject/src/main/java/engine/MenuPanel.java b/MAVENProject/src/main/java/engine/MenuPanel.java index b305d91..0fbc39b 100644 --- a/MAVENProject/src/main/java/engine/MenuPanel.java +++ b/MAVENProject/src/main/java/engine/MenuPanel.java @@ -18,6 +18,8 @@ public class MenuPanel { private JButton button1; private JButton button2; private JButton button3; + private JButton button7; + private JButton button8; private static boolean shootingCharacter = false; private static boolean normalCharacter = false; @@ -49,7 +51,13 @@ public class MenuPanel { private Panel gameMenu; private Panel gameChoice; + private Panel gameChoice2; private Panel gameFin; + private static int level; + + public static int getLevel() { + return level; + } public boolean isLancementpartie() { return lancementpartie; @@ -114,6 +122,31 @@ public class MenuPanel { f.getContentPane().remove(gameChoice); } + public void menuChoice2(){ + level = 0; + gameChoice2 = new Panel(); + button7 = new JButton("map 1"); + button8 = new JButton("map 2"); + gameChoice2.add(button7,BorderLayout.CENTER); + gameChoice2.add(button8,BorderLayout.CENTER); + button7.addActionListener(e -> level= 1); + button8.addActionListener(e -> level = 2); + f.getContentPane().add(gameChoice2); + f.setContentPane(gameChoice2); + f.pack(); + f.setVisible(true); + f.getContentPane().setFocusable(true); + + while(level == 0){ + try { + Thread.sleep(1); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + } + f.getContentPane().remove(gameChoice2); + } + public void menufin(){ resetCharacter(); gameFin= new Panel(new FlowLayout(FlowLayout.CENTER)); diff --git a/MAVENProject/src/main/java/entity/Character.java b/MAVENProject/src/main/java/entity/Character.java index 056aaec..d78ae18 100644 --- a/MAVENProject/src/main/java/entity/Character.java +++ b/MAVENProject/src/main/java/entity/Character.java @@ -154,8 +154,6 @@ public class Character extends Entity{ if (cof.key) { this.key += 1; cof.key = false; - - System.out.print("Tu as trouvé une clée!"); } } } diff --git a/MAVENProject/src/main/java/jeu/Jeu.java b/MAVENProject/src/main/java/jeu/Jeu.java index f8f7992..62c3603 100644 --- a/MAVENProject/src/main/java/jeu/Jeu.java +++ b/MAVENProject/src/main/java/jeu/Jeu.java @@ -64,13 +64,7 @@ public class Jeu implements Game{ //liste des coeurs drop par les monstres private static final List<Hearth> hearthList = new ArrayList<>(); - //Sol du niveau 1 : - - //public static Obstacle sol = new Obstacle(new HitBox(new Coordonnees(200,1216),1,1000000)); - - //Sol du niveau 2 : - - public static Obstacle sol = new Obstacle(new HitBox(new Coordonnees(200,1664),1,1000000)); + public static Obstacle sol; public static List<Obstacle> obstacleTable = new ArrayList<>(); private static List<Monster> monsterList = new ArrayList<>(); @@ -79,16 +73,11 @@ public class Jeu implements Game{ public final static int TILES_DEFAULT_SIZE=32; public final static float SCALE=1.0f; - //Taille fenêtre niveau 1 : - - //public final static int TILES_IN_WIDTH = 132; - //public final static int TILES_IN_HEIGHT = 46; - //Taille fenêtre niveau 2 : - public final static int TILES_IN_WIDTH = 152; - public final static int TILES_IN_HEIGHT = 60; + public static int TILES_IN_WIDTH; + public static int TILES_IN_HEIGHT; public final static int TILES_SIZE = (int) (TILES_DEFAULT_SIZE*SCALE); - public static final LevelManager levelManager = new LevelManager(); + public static LevelManager levelManager; public Jeu(String source) { @@ -125,11 +114,27 @@ public class Jeu implements Game{ directionJeu.put("Left", false); directionJeu.put("Jump", false); directionJeu.put("Attack",false); - - - //on genere la table des obstacles - obstacleTable= levelManager.generateObstacleTable(); - obstacleTable.add(sol); + + // on génère le level manager + + if(engine.MenuPanel.getLevel() == 1) { + TILES_IN_WIDTH = 132; + TILES_IN_HEIGHT = 46; + levelManager = new LevelManager("LEVEL_ONE"); + obstacleTable= levelManager.generateObstacleTable(); + sol = new Obstacle(new HitBox(new Coordonnees(200,1216),1,1000000)); + obstacleTable.add(sol); + } + + else if(engine.MenuPanel.getLevel() == 2) { + TILES_IN_WIDTH = 152; + TILES_IN_HEIGHT = 60; + levelManager = new LevelManager("LEVEL_TWO"); + obstacleTable= levelManager.generateObstacleTable(); + sol = new Obstacle(new HitBox(new Coordonnees(200,1664),1,1000000)); + obstacleTable.add(sol); + } + diff --git a/MAVENProject/src/main/java/jeu/Painter.java b/MAVENProject/src/main/java/jeu/Painter.java index aa56796..7af42fc 100644 --- a/MAVENProject/src/main/java/jeu/Painter.java +++ b/MAVENProject/src/main/java/jeu/Painter.java @@ -142,14 +142,6 @@ public class Painter implements GamePainter{ private void drawCoffre(Graphics2D crayon, Coffre coffre){ HashMap<String, Coordonnees> extremites = coffre.getHitbox().getExtremites(); Coordonnees coffreCenter = coffre.getHitbox().getCentre(); - Coordonnees hd = extremites.get("HautDroite"); - Coordonnees bd = extremites.get("BasDroite"); - Coordonnees hg = extremites.get("HautGauche"); - Coordonnees bg = extremites.get("BasGauche"); - crayon.drawLine((int)hd.getX() - xCam,(int)hd.getZ() - zCam,(int)bd.getX() - xCam,(int)bd.getZ() - zCam); - crayon.drawLine((int)bd.getX() - xCam,(int)bd.getZ() - zCam,(int)bg.getX() - xCam,(int)bg.getZ() - zCam); - crayon.drawLine((int)bg.getX() - xCam,(int)bg.getZ() - zCam,(int)hg.getX() - xCam,(int)hg.getZ() - zCam); - crayon.drawLine((int)hg.getX() - xCam,(int)hg.getZ() - zCam,(int)hd.getX() - xCam,(int)hd.getZ() - zCam); crayon.drawImage(coffre.getImage(), (int)coffreCenter.getX() - (int) coffre.getHitbox().getWidth()/2 -xCam,(int) coffreCenter.getZ() - (int) coffre.getHitbox().getHeight()/2 -zCam,null,null); } diff --git a/MAVENProject/src/main/java/loaders/LoadSave.java b/MAVENProject/src/main/java/loaders/LoadSave.java index 336a422..123e5b3 100644 --- a/MAVENProject/src/main/java/loaders/LoadSave.java +++ b/MAVENProject/src/main/java/loaders/LoadSave.java @@ -76,7 +76,6 @@ public class LoadSave { //Bat if (86<=value && value <= 95) { copyValue = 46; - System.out.println(i); } //Boss if (96<=value && value <= 105) @@ -87,7 +86,6 @@ public class LoadSave { //Terre horizontale de 7 de longueur if (226<=value && value <= 235) { copyValue = 121; - System.out.println("terre"); } //Terre verticale de 6 de hauteur if (236<=value && value <= 245) @@ -96,7 +94,6 @@ public class LoadSave { //Terre verticale de 20 de hauteur if (46<=value && value <= 55) { copyValue = 29; - System.out.println(i); } @@ -120,7 +117,6 @@ public class LoadSave { //Liste des valeurs lvlData[j][i] = copyValue; if (lvlData[j][i]==121){ - System.out.println("terre cree"); } } return lvlData; diff --git a/MAVENProject/src/main/java/map/LevelManager.java b/MAVENProject/src/main/java/map/LevelManager.java index f21ba17..4d37808 100644 --- a/MAVENProject/src/main/java/map/LevelManager.java +++ b/MAVENProject/src/main/java/map/LevelManager.java @@ -24,10 +24,16 @@ public class LevelManager { private int indexBoss; private int indexPorte; - public LevelManager() { - importOutsideSprites(); - levelOne = new Level(LoadSave.GetLevelData(LoadSave.LEVEL_TWO)); - //levelTwo = new Level(LoadSave.GetLevelData(LoadSave.LEVEL_TWO)); + public LevelManager(String a) { + if (a == "LEVEL_TWO") { + importOutsideSprites(); + levelOne = new Level(LoadSave.GetLevelData(LoadSave.LEVEL_TWO)); + //levelTwo = new Level(LoadSave.GetLevelData(LoadSave.LEVEL_TWO)); + } else if (a == "LEVEL_ONE") { + importOutsideSprites(); + levelOne = new Level(LoadSave.GetLevelData(LoadSave.LEVEL_ONE)); + //levelTwo = new Level(LoadSave.GetLevelData(LoadSave.LEVEL_TWO)); + } } private BufferedImage[] importOutsideSprites() { @@ -195,7 +201,6 @@ public class LevelManager { } } } - System.out.println(monsterList); return monsterList; } diff --git a/MAVENProject/src/main/java/start/Main.java b/MAVENProject/src/main/java/start/Main.java index 44acc25..8137b8d 100644 --- a/MAVENProject/src/main/java/start/Main.java +++ b/MAVENProject/src/main/java/start/Main.java @@ -23,6 +23,8 @@ public class Main { menu.menudebut(); Thread.sleep(2); menu.menuChoice(); + Thread.sleep(2); + menu.menuChoice2(); // creation du jeu particulier et de son afficheur Jeu game = new Jeu("helpFilePacman.txt"); -- GitLab