Browse Source

einzelne Tiles erstellt

Oskar Berger 6 months ago
parent
commit
3e949aa3d8

+ 18 - 3
src/main/java/controller/GameController.java

@@ -6,7 +6,7 @@ import model.Item;
 import model.items.ITEM_NAME;
 import util.GAMESTATE;
 import view.GamePanel;
-import view.tile.interactive.Hut;
+import view.tile.interactive.*;
 
 import java.awt.*;
 import java.io.Serializable;
@@ -29,8 +29,23 @@ public class GameController implements Runnable, Serializable {
     }
 
     private void setupInteractiveTiles() {
-        Hut hut = new Hut(23, 20, this);
-        view.tileManager.addInteractiveTile(hut);
+        Lighthouse lighthouse = new Lighthouse(24, 20, this);
+        view.tileManager.addInteractiveTile(lighthouse);
+
+        Mine mine = new Mine(25, 20, this);
+        view.tileManager.addInteractiveTile(mine);
+
+        Barracks barracks = new Barracks(26, 20, this);
+        view.tileManager.addInteractiveTile(barracks);
+
+        IronMine ironMine = new IronMine(27, 20, this);
+        view.tileManager.addInteractiveTile(ironMine);
+
+        AnimalEnclosure animalEnclosure = new AnimalEnclosure(28, 20, this);
+        view.tileManager.addInteractiveTile(animalEnclosure);
+
+        Sawmill sawmill = new Sawmill(29, 20, this);
+        view.tileManager.addInteractiveTile(sawmill);
     }
 
     private void setStartInventory() {

+ 2 - 2
src/main/java/view/UI.java

@@ -3,8 +3,8 @@ package view;
 import util.GAMESTATE;
 import view.components.Button;
 import view.popUpMenu.PopupMenu;
-import view.tile.interactive.InteractiveTile;
-import view.tile.interactive.ONCLICKTYPE;
+import view.tile.InteractiveTile;
+import view.tile.ONCLICKTYPE;
 
 import java.awt.*;
 import java.util.ArrayList;

+ 1 - 1
src/main/java/view/tile/interactive/InteractiveTile.java → src/main/java/view/tile/InteractiveTile.java

@@ -1,4 +1,4 @@
-package view.tile.interactive;
+package view.tile;
 
 import model.Tile;
 import java.awt.*;

+ 1 - 1
src/main/java/view/tile/interactive/ONCLICKTYPE.java → src/main/java/view/tile/ONCLICKTYPE.java

@@ -1,4 +1,4 @@
-package view.tile.interactive;
+package view.tile;
 
 public enum ONCLICKTYPE {
     RUNNABLE,

+ 0 - 2
src/main/java/view/tile/TileManager.java

@@ -1,10 +1,8 @@
 package view.tile;
 
-import controller.GameController;
 import model.Tile;
 import model.tiles.BackgroundTile;
 import view.GamePanel;
-import view.tile.interactive.InteractiveTile;
 
 import java.awt.*;
 import java.io.BufferedReader;

+ 27 - 0
src/main/java/view/tile/interactive/AnimalEnclosure.java

@@ -0,0 +1,27 @@
+package view.tile.interactive;
+
+import controller.GameController;
+import view.Camera;
+import view.popUpMenu.PopupMenu;
+import view.popUpMenu.UpgradeMenu;
+import view.tile.InteractiveTile;
+
+import java.awt.*;
+
+public class AnimalEnclosure extends InteractiveTile {
+
+    public AnimalEnclosure(int worldGridX, int worldGridY, GameController gc) {
+        super(worldGridX, worldGridY, gc.getView().tileSize, gc.getView().tileSize, gc);
+        PopupMenu popup = new UpgradeMenu(100, 100);
+
+        setPopupOnClick(popup);
+    }
+
+    @Override
+    public void drawTile(Graphics2D g2, Camera camera) {
+        int size = gameController.getView().tileSize;
+        g2.setColor(new Color(0, 0, 0, 160));
+        setImage("/tiles/animalEnclosureTest.png");
+        g2.drawImage(image, screenX, screenY, gameController.getView().tileSize, gameController.getView().tileSize, null);
+    }
+}

+ 27 - 0
src/main/java/view/tile/interactive/Barracks.java

@@ -0,0 +1,27 @@
+package view.tile.interactive;
+
+import controller.GameController;
+import view.Camera;
+import view.popUpMenu.PopupMenu;
+import view.popUpMenu.UpgradeMenu;
+import view.tile.InteractiveTile;
+
+import java.awt.*;
+
+public class Barracks extends InteractiveTile {
+
+    public Barracks(int worldGridX, int worldGridY, GameController gc) {
+        super(worldGridX, worldGridY, gc.getView().tileSize, gc.getView().tileSize, gc);
+        PopupMenu popup = new UpgradeMenu(100, 100);
+
+        setPopupOnClick(popup);
+    }
+
+    @Override
+    public void drawTile(Graphics2D g2, Camera camera) {
+        int size = gameController.getView().tileSize;
+        g2.setColor(new Color(0, 0, 0, 160));
+        setImage("/tiles/barracksTest.png");
+        g2.drawImage(image, screenX, screenY, gameController.getView().tileSize, gameController.getView().tileSize, null);
+    }
+}

+ 27 - 0
src/main/java/view/tile/interactive/IronMine.java

@@ -0,0 +1,27 @@
+package view.tile.interactive;
+
+import controller.GameController;
+import view.Camera;
+import view.popUpMenu.PopupMenu;
+import view.popUpMenu.UpgradeMenu;
+import view.tile.InteractiveTile;
+
+import java.awt.*;
+
+public class IronMine extends InteractiveTile {
+
+    public IronMine(int worldGridX, int worldGridY, GameController gc) {
+        super(worldGridX, worldGridY, gc.getView().tileSize, gc.getView().tileSize, gc);
+        PopupMenu popup = new UpgradeMenu(100, 100);
+
+        setPopupOnClick(popup);
+    }
+
+    @Override
+    public void drawTile(Graphics2D g2, Camera camera) {
+        int size = gameController.getView().tileSize;
+        g2.setColor(new Color(0, 0, 0, 160));
+        setImage("/tiles/mineIronTest.png");
+        g2.drawImage(image, screenX, screenY, gameController.getView().tileSize, gameController.getView().tileSize, null);
+    }
+}

+ 29 - 0
src/main/java/view/tile/interactive/Lighthouse.java

@@ -0,0 +1,29 @@
+package view.tile.interactive;
+
+import controller.GameController;
+import view.Camera;
+import view.popUpMenu.PopupMenu;
+import view.popUpMenu.UpgradeMenu;
+import view.tile.InteractiveTile;
+
+import java.awt.*;
+
+public class Lighthouse extends InteractiveTile {
+
+    public Lighthouse(int worldGridX, int worldGridY, GameController gc) {
+        super(worldGridX, worldGridY, gc.getView().tileSize, gc.getView().tileSize, gc);
+        PopupMenu popup = new UpgradeMenu(100, 100);
+
+        setPopupOnClick(popup);
+    }
+
+    @Override
+    public void drawTile(Graphics2D g2, Camera camera) {
+        int size = gameController.getView().tileSize;
+        g2.setColor(new Color(0, 0, 0, 160));
+        setImage("/tiles/lighthouseTest.png");
+        g2.drawImage(image, screenX, screenY, gameController.getView().tileSize, gameController.getView().tileSize, null);
+
+    }
+
+}

+ 6 - 4
src/main/java/view/tile/interactive/Hut.java → src/main/java/view/tile/interactive/Mine.java

@@ -4,12 +4,13 @@ import controller.GameController;
 import view.Camera;
 import view.popUpMenu.PopupMenu;
 import view.popUpMenu.UpgradeMenu;
+import view.tile.InteractiveTile;
 
 import java.awt.*;
 
-public class Hut extends InteractiveTile {
+public class Mine extends InteractiveTile {
 
-    public Hut(int worldGridX, int worldGridY, GameController gc) {
+    public Mine(int worldGridX, int worldGridY, GameController gc) {
         super(worldGridX, worldGridY, gc.getView().tileSize, gc.getView().tileSize, gc);
         PopupMenu popup = new UpgradeMenu(100, 100);
 
@@ -20,8 +21,9 @@ public class Hut extends InteractiveTile {
     public void drawTile(Graphics2D g2, Camera camera) {
         int size = gameController.getView().tileSize;
         g2.setColor(new Color(0, 0, 0, 160));
-        setImage("/sprites/hut.png");
+        setImage("/tiles/mineTest.png");
         g2.drawImage(image, screenX, screenY, gameController.getView().tileSize, gameController.getView().tileSize, null);
 
     }
-}
+
+}

+ 28 - 0
src/main/java/view/tile/interactive/Sawmill.java

@@ -0,0 +1,28 @@
+package view.tile.interactive;
+
+import controller.GameController;
+import view.Camera;
+import view.popUpMenu.PopupMenu;
+import view.popUpMenu.UpgradeMenu;
+import view.tile.InteractiveTile;
+
+import java.awt.*;
+
+public class Sawmill extends InteractiveTile {
+
+    public Sawmill(int worldGridX, int worldGridY, GameController gc) {
+        super(worldGridX, worldGridY, gc.getView().tileSize, gc.getView().tileSize, gc);
+        PopupMenu popup = new UpgradeMenu(100, 100);
+
+        setPopupOnClick(popup);
+    }
+
+    @Override
+    public void drawTile(Graphics2D g2, Camera camera) {
+        int size = gameController.getView().tileSize;
+        g2.setColor(new Color(0, 0, 0, 160));
+        setImage("/tiles/sawmillTest.png");
+        g2.drawImage(image, screenX, screenY, gameController.getView().tileSize, gameController.getView().tileSize, null);
+    }
+
+}

BIN
src/main/resources/tiles/animalEnclosureTest.png


BIN
src/main/resources/tiles/barracksTest.png


BIN
src/main/resources/tiles/lighthouseTest.png


BIN
src/main/resources/tiles/mineIronTest.png


BIN
src/main/resources/tiles/mineTest.png


BIN
src/main/resources/tiles/sawmillTest.png