From 2605771ec8d257dd3c4997bb94f15477501e432b Mon Sep 17 00:00:00 2001
From: Azurlors <florianrichard2001@gmail.com>
Date: Tue, 29 Nov 2022 11:12:39 +0100
Subject: [PATCH] =?UTF-8?q?d=C3=A9but=20textures?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/main/java/environnement/HitBox.java   | 19 ++++++++++++
 MAVENProject/src/main/java/jeu/Painter.java   | 17 ++++++++++-
 .../src/main/java/loaders/ObstacleLoader.java | 29 +++++++++++++++++++
 3 files changed, 64 insertions(+), 1 deletion(-)
 create mode 100644 MAVENProject/src/main/java/loaders/ObstacleLoader.java

diff --git a/MAVENProject/src/main/java/environnement/HitBox.java b/MAVENProject/src/main/java/environnement/HitBox.java
index 82c4257..74aa6ca 100644
--- a/MAVENProject/src/main/java/environnement/HitBox.java
+++ b/MAVENProject/src/main/java/environnement/HitBox.java
@@ -7,12 +7,28 @@ public class HitBox {
     //private final Coordonnees centre;
     private HashMap<String, Coordonnees> extremites = new HashMap<>();
     private static double defaultUnit = 10;
+    private double width;
+    private double height;
+    private Coordonnees centre;
+
+    public double getWidth() {
+        return width;
+    }
+
+    public double getHeight() {
+        return height;
+    }
+
+    public Coordonnees getCentre() {
+        return centre;
+    }
 
     public HitBox(Coordonnees c){
         extremites.put("HautDroite",new Coordonnees(c.getX()+defaultUnit/2,c.getZ()-defaultUnit/2));
         extremites.put("BasDroite",new Coordonnees(c.getX()+defaultUnit/2,c.getZ()+defaultUnit/2));
         extremites.put("HautGauche",new Coordonnees(c.getX()-defaultUnit/2,c.getZ()-defaultUnit/2));
         extremites.put("BasGauche",new Coordonnees(c.getX()-defaultUnit/2,c.getZ()+defaultUnit/2));
+        centre = c;
     }
 
     public HitBox(Coordonnees c , double Height , double Width){
@@ -20,6 +36,9 @@ public class HitBox {
         extremites.put("BasDroite",new Coordonnees(c.getX()+Width/2,c.getZ()+Height/2));
         extremites.put("HautGauche",new Coordonnees(c.getX()-Width/2,c.getZ()-Height/2));
         extremites.put("BasGauche",new Coordonnees(c.getX()-Width/2,c.getZ()+Height/2));
+        width = Width;
+        height = Height;
+        centre = c;
     }
 
     public static int getDefaultUnit() {
diff --git a/MAVENProject/src/main/java/jeu/Painter.java b/MAVENProject/src/main/java/jeu/Painter.java
index c9db59e..5040ce7 100644
--- a/MAVENProject/src/main/java/jeu/Painter.java
+++ b/MAVENProject/src/main/java/jeu/Painter.java
@@ -3,6 +3,7 @@ package jeu;
 import engine.GamePainter;
 import environnement.Coordonnees;
 import environnement.HitBox;
+import loaders.ObstacleLoader;
 import map.Obstacle;
 
 import java.awt.*;
@@ -40,6 +41,7 @@ public class Painter implements GamePainter{
         //drawQuadrillage(crayon);*/
         drawMap(crayon);
         drawSol(crayon);
+        drawObstacleBis(crayon,test,"plateforme.png");
     }
 
 
@@ -75,7 +77,13 @@ public class Painter implements GamePainter{
     }
 
     private void drawSol(Graphics2D crayon){
-        crayon.drawLine(0,(int) Jeu.getSol().getHitbox().getExtremites().get("HautDroite").getZ(),WIDTH,(int) Jeu.getSol().getHitbox().getExtremites().get("HautDroite").getZ());
+        ObstacleLoader loader = new ObstacleLoader(Jeu.getSol(),"Terre.png");
+        HitBox hitBox = loader.getObstacle().getHitbox();
+        int z = (int) hitBox.getCentre().getZ();
+        System.out.println(z);
+        for (int x = 0;x<3000;x+=128) {
+            crayon.drawImage(loader.getImageObstacle(),x,z ,null,null);
+        }
     }
 
     private void drawMap(Graphics2D crayon){
@@ -89,4 +97,11 @@ public class Painter implements GamePainter{
             drawObstacle(crayon,obs);
         }
     }
+    private void drawObstacleBis(Graphics2D crayon, Obstacle obstacle, String nom){
+        ObstacleLoader loader = new ObstacleLoader(obstacle,nom);
+        HitBox hitBox = loader.getObstacle().getHitbox();
+        int z = (int) hitBox.getCentre().getZ();
+        int x = (int) hitBox.getCentre().getX();
+        crayon.drawImage(loader.getImageObstacle(), x - (int) hitBox.getWidth()/2,z - (int) hitBox.getHeight()/2,null,null);
+    }
 }
diff --git a/MAVENProject/src/main/java/loaders/ObstacleLoader.java b/MAVENProject/src/main/java/loaders/ObstacleLoader.java
new file mode 100644
index 0000000..f8cbba0
--- /dev/null
+++ b/MAVENProject/src/main/java/loaders/ObstacleLoader.java
@@ -0,0 +1,29 @@
+package loaders;
+import map.Obstacle;
+
+import javax.swing.*;
+import java.awt.*;
+import java.net.URL;
+
+public class ObstacleLoader {
+
+    private Image imageObstacle;
+    private Obstacle obstacle;
+
+    public Image getImageObstacle() {
+        return imageObstacle;
+    }
+
+    public Obstacle getObstacle() {
+        return obstacle;
+    }
+
+    public ObstacleLoader(Obstacle obs, String nom){
+        String fn = "Obstacles/";
+        URL url = ObstacleLoader.class.getClassLoader().getResource(fn);
+        assert url != null;
+        String path = url.toString().substring(6)+"/"+nom;
+        obstacle = obs;
+        imageObstacle = new ImageIcon(path).getImage();
+    }
+}
-- 
GitLab