Browse Source

Neue Grafik für Leuchtturm, (bitte fixen: variable größe der Tiles)

jan 6 months ago
parent
commit
2a784f1aab
25 changed files with 31 additions and 54 deletions
  1. 7 2
      src/main/java/controller/GameController.java
  2. 5 6
      src/main/java/controller/entity/VillagerController.java
  3. 2 6
      src/main/java/controller/tiles/interactive/InteractiveTileController.java
  4. 0 1
      src/main/java/view/UI.java
  5. 1 1
      src/main/java/view/tile/TileManager.java
  6. 1 7
      src/main/java/view/tile/interactive/AnimalEnclosureView.java
  7. 1 6
      src/main/java/view/tile/interactive/BarracksView.java
  8. 9 1
      src/main/java/view/tile/interactive/InteractiveTileView.java
  9. 1 4
      src/main/java/view/tile/interactive/IronMineView.java
  10. 2 7
      src/main/java/view/tile/interactive/LighthouseView.java
  11. 1 7
      src/main/java/view/tile/interactive/MineView.java
  12. 1 6
      src/main/java/view/tile/interactive/SawmillView.java
  13. 0 0
      src/main/resources/tiles/animalEnclosure/animalEnclosureTest.png
  14. 0 0
      src/main/resources/tiles/background/earth.png
  15. 0 0
      src/main/resources/tiles/background/grass.png
  16. 0 0
      src/main/resources/tiles/background/sand.png
  17. 0 0
      src/main/resources/tiles/background/tree.png
  18. 0 0
      src/main/resources/tiles/background/wall.png
  19. 0 0
      src/main/resources/tiles/background/water.png
  20. 0 0
      src/main/resources/tiles/barracks/barracksTest.png
  21. 0 0
      src/main/resources/tiles/lighthouse/lighthouseTest.png
  22. BIN
      src/main/resources/tiles/lighthouse/lighthouse_5.png
  23. 0 0
      src/main/resources/tiles/mine/mineTest.png
  24. 0 0
      src/main/resources/tiles/mineIron/mineIronTest.png
  25. 0 0
      src/main/resources/tiles/sawmill/sawmillTest.png

+ 7 - 2
src/main/java/controller/GameController.java

@@ -42,7 +42,7 @@ public class GameController implements Runnable, Serializable {
     }
 
     private void setupInteractiveTiles() {
-        LighthouseController lighthouse = new LighthouseController(this, setupInteractiveTileModel(24, 20));
+        LighthouseController lighthouse = new LighthouseController(this, setupInteractiveTileModel(20, 20, getView().tileSize*2, getView().tileSize*2));
         addInteractiveTile(lighthouse);
 
         MineController mineController = new MineController(this, setupInteractiveTileModel(25,20));
@@ -80,8 +80,13 @@ public class GameController implements Runnable, Serializable {
         return model;
     }
 
+    public InteractiveTileModel setupInteractiveTileModel(int worldGridX, int worldGridY, int width, int height){
+        InteractiveTileModel model = new InteractiveTileModel(worldGridX, worldGridY, width, height);
+        gameModel.addInteractiveTileModel(model);
+        return model;
+    }
     public InteractiveTileModel setupInteractiveTileModel(int worldGridX, int worldGridY){
-        InteractiveTileModel model = new InteractiveTileModel(worldGridX, worldGridY, getView().tileSize, getView().tileSize);
+        InteractiveTileModel model = new InteractiveTileModel(worldGridX, worldGridY, getView().getWidth(), getView().getHeight());
         gameModel.addInteractiveTileModel(model);
         return model;
     }

+ 5 - 6
src/main/java/controller/entity/VillagerController.java

@@ -17,12 +17,11 @@ public class VillagerController extends EntityController{
     }
     @Override
     public void findPath() {
-        System.out.println("1sec");
-        switch (amount){
-            case 1: move(0, 1);
-            case 2: move(0, -1);
-        }
-        if(amount > 2){
+        if(amount == 1){
+            move(0,1);
+        }else if(amount == 2){
+            move(0,-1);
+        }else if(amount > 2){
             amount = 0;
         }
         amount++;

+ 2 - 6
src/main/java/controller/tiles/interactive/InteractiveTileController.java

@@ -34,16 +34,12 @@ public abstract class InteractiveTileController implements InteractiveController
     }
 
     public boolean isClicked(int mouseScreenX, int mouseScreenY, Camera camera) {
-        double mouseWorldGridX = (camera.worldX + mouseScreenX - camera.screenX) / view.tileManager.getTileSize();
-        double mouseWorldGridY = (camera.worldY + mouseScreenY - camera.screenY) / view.tileManager.getTileSize();
+        double mouseWorldGridX = (camera.worldX + mouseScreenX - camera.screenX) / view.getWidth();
+        double mouseWorldGridY = (camera.worldY + mouseScreenY - camera.screenY) / view.getHeight();
         boolean clicked = mouseWorldGridX == model.getWorldGridX() &&  mouseWorldGridY == model.getWorldGridY();
         return clicked;
     }
 
-    public int getTileSize(){
-        return gameController.getView().tileSize;
-    }
-
     public void updateCoordinates(int screenX, int screenY){
         view.updateCoordinates(screenX, screenY);
     }

+ 0 - 1
src/main/java/view/UI.java

@@ -53,7 +53,6 @@ public class UI {
             PopupMenu popupMenu = interactiveController.getPopupMenu();
             Button clickedButton = popupMenu.getClickedButton(screenX,screenY);
             if(clickedButton != null){
-
                 clickedButton.click();
                 interactiveController.unClick();
                 return;

+ 1 - 1
src/main/java/view/tile/TileManager.java

@@ -133,7 +133,7 @@ public class TileManager {
     }
     private void setupTile(int index, String path) throws IOException {
         tile[index] = new BackgroundTile();
-        tile[index].setImage("/tiles/" + path + ".png");
+        tile[index].setImage("/tiles/background/" + path + ".png");
     }
 
     private void setupInteractiveTile( int index, String path) throws IOException {

+ 1 - 7
src/main/java/view/tile/interactive/AnimalEnclosureView.java

@@ -2,17 +2,11 @@ package view.tile.interactive;
 
 import controller.GameController;
 import controller.tiles.interactive.InteractiveTileController;
-import util.Translator;
-import view.Camera;
-import view.popUpMenu.PopupMenu;
-import view.popUpMenu.UpgradeMenu;
-
-import java.awt.*;
 
 public class AnimalEnclosureView extends InteractiveTileView {
 
     public AnimalEnclosureView(GameController gc, InteractiveTileController controller) {
         super( gc.getView().tileSize, gc.getView().tileSize, controller, gc.getView().tileManager);
-        setImage("/tiles/animalEnclosureTest.png");
+        setImage("/tiles/animalEnclosure/animalEnclosureTest.png");
     }
 }

+ 1 - 6
src/main/java/view/tile/interactive/BarracksView.java

@@ -2,16 +2,11 @@ package view.tile.interactive;
 
 import controller.GameController;
 import controller.tiles.interactive.InteractiveTileController;
-import view.Camera;
-import view.popUpMenu.PopupMenu;
-import view.popUpMenu.UpgradeMenu;
-
-import java.awt.*;
 
 public class BarracksView extends InteractiveTileView {
 
     public BarracksView(GameController gc, InteractiveTileController controller) {
         super( gc.getView().tileSize, gc.getView().tileSize, controller, gc.getView().tileManager);
-        setImage("/tiles/barracksTest.png");
+        setImage("/tiles/barracks/barracksTest.png");
     }
 }

+ 9 - 1
src/main/java/view/tile/interactive/InteractiveTileView.java

@@ -53,7 +53,7 @@ public abstract class InteractiveTileView extends Tile implements Serializable {
     }
 
     public void drawTile(Graphics2D g2){
-        g2.drawImage(image, screenX, screenY, controller.getTileSize(), controller.getTileSize(), null);
+        g2.drawImage(image, screenX, screenY, width, height, null);
     }
 
     public PopupMenu getPopupMenu(){
@@ -63,4 +63,12 @@ public abstract class InteractiveTileView extends Tile implements Serializable {
     public void drawPopUp(int screenXClick, int screenYClick, Graphics2D g2) {
         popup.draw(screenXClick, screenYClick, g2);
     }
+
+    public int getWidth() {
+        return width;
+    }
+
+    public int getHeight() {
+        return height;
+    }
 }

+ 1 - 4
src/main/java/view/tile/interactive/IronMineView.java

@@ -2,14 +2,11 @@ package view.tile.interactive;
 
 import controller.GameController;
 import controller.tiles.interactive.InteractiveTileController;
-import model.tiles.InteractiveTileModel;
-import view.popUpMenu.PopupMenu;
-import view.popUpMenu.UpgradeMenu;
 
 public class IronMineView extends InteractiveTileView {
 
     public IronMineView(GameController gc, InteractiveTileController controller) {
         super( gc.getView().tileSize, gc.getView().tileSize, controller, gc.getView().tileManager);
-        setImage("/tiles/mineIronTest.png");
+        setImage("/tiles/mineIron/mineIronTest.png");
     }
 }

+ 2 - 7
src/main/java/view/tile/interactive/LighthouseView.java

@@ -2,17 +2,12 @@ package view.tile.interactive;
 
 import controller.GameController;
 import controller.tiles.interactive.InteractiveTileController;
-import view.Camera;
-import view.popUpMenu.PopupMenu;
-import view.popUpMenu.UpgradeMenu;
-
-import java.awt.*;
 
 public class LighthouseView extends InteractiveTileView {
 
     public LighthouseView(GameController gc, InteractiveTileController controller) {
-        super( gc.getView().tileSize, gc.getView().tileSize, controller, gc.getView().tileManager);
-        setImage("/tiles/lighthouseTest.png");
+        super( gc.getView().tileSize*2, gc.getView().tileSize*2, controller, gc.getView().tileManager);
+        setImage("/tiles/lighthouse/lighthouse_5.png");
     }
 
 }

+ 1 - 7
src/main/java/view/tile/interactive/MineView.java

@@ -2,18 +2,12 @@ package view.tile.interactive;
 
 import controller.GameController;
 import controller.tiles.interactive.InteractiveTileController;
-import view.Camera;
-import view.popUpMenu.PopupMenu;
-import view.popUpMenu.UpgradeMenu;
-
-import java.awt.*;
-import java.io.Serializable;
 
 public class MineView extends InteractiveTileView {
 
     public MineView(GameController gc, InteractiveTileController controller) {
         super( gc.getView().tileSize, gc.getView().tileSize, controller, gc.getView().tileManager);
-        setImage("/tiles/mineTest.png");
+        setImage("/tiles/mine/mineTest.png");
     }
 
 }

+ 1 - 6
src/main/java/view/tile/interactive/SawmillView.java

@@ -2,17 +2,12 @@ package view.tile.interactive;
 
 import controller.GameController;
 import controller.tiles.interactive.InteractiveTileController;
-import view.Camera;
-import view.popUpMenu.PopupMenu;
-import view.popUpMenu.UpgradeMenu;
-
-import java.awt.*;
 
 public class SawmillView extends InteractiveTileView {
 
     public SawmillView(GameController gc, InteractiveTileController controller) {
         super( gc.getView().tileSize, gc.getView().tileSize, controller, gc.getView().tileManager);
-        setImage("/tiles/sawmillTest.png");
+        setImage("/tiles/sawmill/sawmillTest.png");
     }
 
 }

+ 0 - 0
src/main/resources/tiles/animalEnclosureTest.png → src/main/resources/tiles/animalEnclosure/animalEnclosureTest.png


+ 0 - 0
src/main/resources/tiles/earth.png → src/main/resources/tiles/background/earth.png


+ 0 - 0
src/main/resources/tiles/grass.png → src/main/resources/tiles/background/grass.png


+ 0 - 0
src/main/resources/tiles/sand.png → src/main/resources/tiles/background/sand.png


+ 0 - 0
src/main/resources/tiles/tree.png → src/main/resources/tiles/background/tree.png


+ 0 - 0
src/main/resources/tiles/wall.png → src/main/resources/tiles/background/wall.png


+ 0 - 0
src/main/resources/tiles/water.png → src/main/resources/tiles/background/water.png


+ 0 - 0
src/main/resources/tiles/barracksTest.png → src/main/resources/tiles/barracks/barracksTest.png


+ 0 - 0
src/main/resources/tiles/lighthouseTest.png → src/main/resources/tiles/lighthouse/lighthouseTest.png


BIN
src/main/resources/tiles/lighthouse/lighthouse_5.png


+ 0 - 0
src/main/resources/tiles/mineTest.png → src/main/resources/tiles/mine/mineTest.png


+ 0 - 0
src/main/resources/tiles/mineIronTest.png → src/main/resources/tiles/mineIron/mineIronTest.png


+ 0 - 0
src/main/resources/tiles/sawmillTest.png → src/main/resources/tiles/sawmill/sawmillTest.png