diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Controller/GameSceneController.java b/src/main/java/de/hdm_stuttgart/battlearena/Controller/GameSceneController.java index 0c6e24ee74f5c210b61d0a9260d0f39924aaaf9b..9f8d05f8e5d98cdf18f44ecb7408c496f55a7641 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Controller/GameSceneController.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Controller/GameSceneController.java @@ -9,6 +9,7 @@ import de.hdm_stuttgart.battlearena.Model.Entity.EntityFactory; import de.hdm_stuttgart.battlearena.Model.Entity.EntityType; import de.hdm_stuttgart.battlearena.Model.Entity.IEntity; import de.hdm_stuttgart.battlearena.Model.Inputs.InputHandler; +import de.hdm_stuttgart.battlearena.Model.Map.Biom; import de.hdm_stuttgart.battlearena.Model.Map.TileManager; import javafx.animation.AnimationTimer; @@ -47,47 +48,31 @@ public class GameSceneController implements Initializable { TileManager tileManager; //map data - /*String mapString = "4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 " + - "4 1 2 1 1 1 1 2 2 2 1 1 1 1 1 1 1 3 " + - "4 2 1 1 1 1 1 2 2 2 1 1 1 1 2 1 1 3 " + - "4 1 1 1 2 2 4 3 3 1 4 3 3 3 3 2 2 3 " + - "4 1 1 1 2 2 4 1 1 1 1 1 1 1 3 1 2 3 " + - "4 1 1 1 2 2 4 1 3 3 3 1 1 1 3 2 2 3 " + - "4 1 1 1 2 2 4 1 1 1 1 1 1 1 3 2 1 3 " + - "4 1 5 1 2 2 4 3 3 1 4 3 3 3 3 2 1 3 " + - "4 6 1 1 1 1 1 2 2 2 1 1 1 1 1 1 1 3 " + - "4 1 1 1 2 2 4 3 3 1 3 3 3 3 3 2 1 3 " + - "4 1 1 1 1 2 4 3 3 1 3 3 3 3 3 1 1 3 " + - "4 1 1 1 1 2 4 3 3 1 3 3 3 3 3 2 2 3 " + - "4 1 1 1 1 1 4 3 3 1 3 3 3 3 3 1 2 3 " + - "4 1 2 1 1 1 1 2 2 2 1 1 1 1 1 1 1 3 " + - "4 1 1 2 1 1 1 2 2 2 1 1 1 1 1 1 1 3 " + - "4 1 1 1 2 2 4 3 3 1 3 3 3 3 3 2 2 3 " + - "4 1 1 1 2 2 4 3 3 1 3 3 3 3 3 2 2 3 " + - "4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 ";*/ - String mapString = "4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + - "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + - "4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 "; + + String mapString = "4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 1 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 3 " + + "4 9 10 9 10 9 10 9 10 9 10 9 10 9 10 9 10 3 " + + "4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 "; + int horizontalTileCount = 18; int verticalTileCount = 18; - int diffTileCount = 12; + int diffTileCount = 30; int scaledTileSize = 48; - + private final Biom biom = runtimeInfo.getMapBiom(); @Override public void initialize(URL url, ResourceBundle resourceBundle) { @@ -104,7 +89,8 @@ public class GameSceneController implements Initializable { playerTwoClass, this, PlayerMode.PLAYER_TWO); } - tileManager = new TileManager(graphicsContext2D, diffTileCount, horizontalTileCount, verticalTileCount, mapString); + tileManager = new TileManager(graphicsContext2D, diffTileCount, horizontalTileCount, + verticalTileCount, mapString, biom); runtimeInfo.setGameState(GameState.PLAYING); @@ -135,7 +121,6 @@ public class GameSceneController implements Initializable { tileManager.renderMap(); player.renderEntity(graphicsContext); enemy.renderEntity(graphicsContext); - } public IEntity getEnemy() { diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java index c1d4f74649b252ee397dd132ac0d9f850a37aa85..876b1330d8ed2b28e8af51af32026a95ca9219fe 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java @@ -6,6 +6,7 @@ import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Exceptions.ParserE import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Utilities.HashGenerator; import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Utilities.Parser; import de.hdm_stuttgart.battlearena.Model.Entity.EntityClass; +import de.hdm_stuttgart.battlearena.Model.Map.Biom; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -26,6 +27,8 @@ public class RuntimeInfo { private EntityClass playerOneClass = EntityClass.HUMAN; private EntityClass playerTwoClass = EntityClass.HUMAN; + private Biom mapBiom = Biom.GRASS; //Default value: GRASS + private RuntimeInfo(){}; @@ -90,6 +93,14 @@ public class RuntimeInfo { this.playerTwoClass = playerTwoClass; } + public Biom getMapBiom() { + return mapBiom; + } + + public void setMapBiom(Biom mapBiom) { + this.mapBiom = mapBiom; + } + public int gameTimeInHours(){ return persistenceInst.getStatistics().getGameTime() / 3600; } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/Biom.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/Biom.java new file mode 100644 index 0000000000000000000000000000000000000000..ee6ca402f3fc3ec6bd1219c6a335578386e166b1 --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/Biom.java @@ -0,0 +1,8 @@ +package de.hdm_stuttgart.battlearena.Model.Map; + +public enum Biom { + BOMBERMAN, + DARK_LANDS, + FORREST, + GRASS +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/TileManager.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/TileManager.java index 81bdb3cdf80c27b8ed8380410bf7590e4ad0702a..9b1347d9c2197be373924cf5221393c560b1e22c 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/TileManager.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Map/TileManager.java @@ -20,7 +20,7 @@ public class TileManager { private final int verticalTileCount; public TileManager(GraphicsContext graphicsContext2D, int diffTileCount, - int horizontalTileCount, int verticalTileCount, String mapString) { + int horizontalTileCount, int verticalTileCount, String mapString, Biom biom) { this.graphicsContext2D = graphicsContext2D; this.horizontalTileCount = horizontalTileCount; this.verticalTileCount = verticalTileCount; @@ -28,36 +28,59 @@ public class TileManager { tileSet = new BackgroundTile[diffTileCount]; tileMap = new int[horizontalTileCount][verticalTileCount]; - createTiles(); + createTiles(biom); generateMap(mapString, horizontalTileCount, verticalTileCount); } - private void createTiles() { - try { - tileSet[0] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/Grass01.png")))); - tileSet[1] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/Grass02.png")))); - tileSet[2] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/Grass04.png")))); - tileSet[3] = TileFactory.createTile(TileType.NON_WALKABLE, TileType.DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/Stone01.png")))); - tileSet[4] = TileFactory.createTile(TileType.NON_WALKABLE, TileType.DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/Stone02.png")))); - tileSet[5] = TileFactory.createTile(TileType.WALKABLE,TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/heart.png")))); - tileSet[6] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/bomb.png")))); - tileSet[7] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/bigbomb.png")))); - tileSet[8] = TileFactory.createTile(TileType.WALKABLE,TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/middleexplosion.png")))); - tileSet[9] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/box.png")))); - tileSet[10] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, - new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/solidstone.png")))); - } catch (Exception e) { - log.error(e); + //index 0-9: WALKABLE + NON_DESTRUCTIBLE, index 10-19: NON_WALKABLE + NON_DESTRUCTIBLE, index 20-29: DESTRUCTIBLE + private void createTiles(Biom biom) { + if (biom == Biom.GRASS) { + try { + //Textures of walkable tiles + tileSet[0] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/ground/GrassGrassLand00.png")))); + tileSet[1] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/ground/GrassGrassLand01.png")))); + tileSet[2] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/ground/GrassPathGrassLand02.png")))); + tileSet[3] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/ground/GrassGrassLand03.png")))); + tileSet[4] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[5] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[6] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[7] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[8] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[9] = TileFactory.createTile(TileType.WALKABLE, TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + //Textures of solid tiles + tileSet[10] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/building/StoneGrassLand00.png")))); + tileSet[11] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/building/StoneEndLeftGrassLand01.png")))); + tileSet[12] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/building/StoneEndRightGrassLand02.png")))); + tileSet[13] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/building/StoneWindowGrassLand03.png")))); + tileSet[14] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/building/StoneGateGrassLand04.png")))); + tileSet[15] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/building/StoneGrassLand05.png")))); + tileSet[16] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/grass_biom/ground/GrassGrassLand04.png")))); + tileSet[17] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[18] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + tileSet[19] = TileFactory.createTile(TileType.NON_WALKABLE,TileType.NON_DESTRUCTIBLE, + new Image(Objects.requireNonNull(getClass().getResourceAsStream("/textures/map/NoTexture.png")))); + } catch (Exception e) { + log.error(e); + } } } diff --git a/src/main/resources/textures/map/NoTexture.png b/src/main/resources/textures/map/NoTexture.png new file mode 100644 index 0000000000000000000000000000000000000000..97d81e90559b742fa2098131248ce24bc7675069 Binary files /dev/null and b/src/main/resources/textures/map/NoTexture.png differ diff --git a/src/main/resources/textures/map/box.png b/src/main/resources/textures/map/bomberman/box.png similarity index 100% rename from src/main/resources/textures/map/box.png rename to src/main/resources/textures/map/bomberman/box.png diff --git a/src/main/resources/textures/map/solidstone.png b/src/main/resources/textures/map/bomberman/solidstone.png similarity index 100% rename from src/main/resources/textures/map/solidstone.png rename to src/main/resources/textures/map/bomberman/solidstone.png diff --git a/src/main/resources/textures/map/dark_lands_biom/building/StoneDarkLand00.png b/src/main/resources/textures/map/dark_lands_biom/building/StoneDarkLand00.png new file mode 100644 index 0000000000000000000000000000000000000000..7141744f6029a09af2e65b7af0f5f766042ca75b Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/building/StoneDarkLand00.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/building/StoneEndLeftDarkLand01.png b/src/main/resources/textures/map/dark_lands_biom/building/StoneEndLeftDarkLand01.png new file mode 100644 index 0000000000000000000000000000000000000000..b71227d4148111cc979cfa08e68deac7236530b2 Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/building/StoneEndLeftDarkLand01.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/building/StoneEndRightDarkLand02.png b/src/main/resources/textures/map/dark_lands_biom/building/StoneEndRightDarkLand02.png new file mode 100644 index 0000000000000000000000000000000000000000..7dfab3fb95f3017893cc077b665dfc96a4736bda Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/building/StoneEndRightDarkLand02.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/building/StoneGateDarkLand04.png b/src/main/resources/textures/map/dark_lands_biom/building/StoneGateDarkLand04.png new file mode 100644 index 0000000000000000000000000000000000000000..ee9984315fc1f60ff9606ea8c2ca1fd89005887e Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/building/StoneGateDarkLand04.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/building/StoneWindowDarkLand03.png b/src/main/resources/textures/map/dark_lands_biom/building/StoneWindowDarkLand03.png new file mode 100644 index 0000000000000000000000000000000000000000..ca334756581f2cc2a55fbacc90f76d9b264b3bec Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/building/StoneWindowDarkLand03.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand00.png b/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand00.png new file mode 100644 index 0000000000000000000000000000000000000000..1d2c1ca9eaab73d2d221f59f1264e68f1ab354b7 Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand00.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand01.png b/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand01.png new file mode 100644 index 0000000000000000000000000000000000000000..2699381fb84e425ae3b20b119ed4b12a5cfc4d71 Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand01.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand03.png b/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand03.png new file mode 100644 index 0000000000000000000000000000000000000000..ff59e764b05b97b000573b245368329779b96823 Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/ground/GrassDarkLand03.png differ diff --git a/src/main/resources/textures/map/dark_lands_biom/ground/GrassPathDarkLand02.png b/src/main/resources/textures/map/dark_lands_biom/ground/GrassPathDarkLand02.png new file mode 100644 index 0000000000000000000000000000000000000000..75b3a83c783fcb392b405d5c42879db3dfecc72c Binary files /dev/null and b/src/main/resources/textures/map/dark_lands_biom/ground/GrassPathDarkLand02.png differ diff --git a/src/main/resources/textures/map/Grass01.png b/src/main/resources/textures/map/forrest_biom/ground/GrassWoodLand00.png similarity index 84% rename from src/main/resources/textures/map/Grass01.png rename to src/main/resources/textures/map/forrest_biom/ground/GrassWoodLand00.png index e835d4676d2f80105626ece4d99b485a30b289fe..48584467f86445ad1f78925eb9f9cf219d1a46c4 100644 Binary files a/src/main/resources/textures/map/Grass01.png and b/src/main/resources/textures/map/forrest_biom/ground/GrassWoodLand00.png differ diff --git a/src/main/resources/textures/map/forrest_biom/ground/GrassWoodLand01.png b/src/main/resources/textures/map/forrest_biom/ground/GrassWoodLand01.png new file mode 100644 index 0000000000000000000000000000000000000000..5d13544cd45bf4968df0444b75d688e198ceb805 Binary files /dev/null and b/src/main/resources/textures/map/forrest_biom/ground/GrassWoodLand01.png differ diff --git a/src/main/resources/textures/map/Stone02.png b/src/main/resources/textures/map/grass_biom/building/StoneEndLeftGrassLand01.png similarity index 85% rename from src/main/resources/textures/map/Stone02.png rename to src/main/resources/textures/map/grass_biom/building/StoneEndLeftGrassLand01.png index 2ac41bee77062960aa2d8cfc921f66e45de629ba..afc98f647c69ff41538c540ad5f81dbddc9df2fd 100644 Binary files a/src/main/resources/textures/map/Stone02.png and b/src/main/resources/textures/map/grass_biom/building/StoneEndLeftGrassLand01.png differ diff --git a/src/main/resources/textures/map/grass_biom/building/StoneEndRightGrassLand02.png b/src/main/resources/textures/map/grass_biom/building/StoneEndRightGrassLand02.png new file mode 100644 index 0000000000000000000000000000000000000000..41fdeb5b6fb3096837434f98e0b779ec548779d2 Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/building/StoneEndRightGrassLand02.png differ diff --git a/src/main/resources/textures/map/grass_biom/building/StoneGateGrassLand04.png b/src/main/resources/textures/map/grass_biom/building/StoneGateGrassLand04.png new file mode 100644 index 0000000000000000000000000000000000000000..ee4e9538c461e7cd81843211bedfa1459863f098 Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/building/StoneGateGrassLand04.png differ diff --git a/src/main/resources/textures/map/Stone01.png b/src/main/resources/textures/map/grass_biom/building/StoneGrassLand00.png similarity index 85% rename from src/main/resources/textures/map/Stone01.png rename to src/main/resources/textures/map/grass_biom/building/StoneGrassLand00.png index b6cf13f66633060803264739b889f64c32877a0e..e31b2ac22af757240fd1a2d1fdf155161886866f 100644 Binary files a/src/main/resources/textures/map/Stone01.png and b/src/main/resources/textures/map/grass_biom/building/StoneGrassLand00.png differ diff --git a/src/main/resources/textures/map/grass_biom/building/StoneGrassLand05.png b/src/main/resources/textures/map/grass_biom/building/StoneGrassLand05.png new file mode 100644 index 0000000000000000000000000000000000000000..1c93eef9343e85ccaf5f27ee57acf8af255530cd Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/building/StoneGrassLand05.png differ diff --git a/src/main/resources/textures/map/grass_biom/building/StoneWindowGrassLand03.png b/src/main/resources/textures/map/grass_biom/building/StoneWindowGrassLand03.png new file mode 100644 index 0000000000000000000000000000000000000000..ae7119eeb0a21560093f3dc8fcb52a33bdb40708 Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/building/StoneWindowGrassLand03.png differ diff --git a/src/main/resources/textures/map/Grass02.png b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand00.png similarity index 84% rename from src/main/resources/textures/map/Grass02.png rename to src/main/resources/textures/map/grass_biom/ground/GrassGrassLand00.png index 144fad81f75b681454b58768081394cb40aaeead..42f20fb577ca233a64f9e570ca2c448a125ce2cd 100644 Binary files a/src/main/resources/textures/map/Grass02.png and b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand00.png differ diff --git a/src/main/resources/textures/map/Grass04.png b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand01.png similarity index 63% rename from src/main/resources/textures/map/Grass04.png rename to src/main/resources/textures/map/grass_biom/ground/GrassGrassLand01.png index 4ce012b5eac6c41488efe96c5f66eb43c28c98ce..c0f799dfc6e5857b5cefa31c3b3732d4f1a84770 100644 Binary files a/src/main/resources/textures/map/Grass04.png and b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand01.png differ diff --git a/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand03.png b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand03.png new file mode 100644 index 0000000000000000000000000000000000000000..abdfbc8114e9e5a233757bf77a764fc1e753365b Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand03.png differ diff --git a/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand04.png b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand04.png new file mode 100644 index 0000000000000000000000000000000000000000..2ea95c178f078c9adceba8de2a8d1af544200ca5 Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/ground/GrassGrassLand04.png differ diff --git a/src/main/resources/textures/map/grass_biom/ground/GrassPathGrassLand02.png b/src/main/resources/textures/map/grass_biom/ground/GrassPathGrassLand02.png new file mode 100644 index 0000000000000000000000000000000000000000..7a8050dfd2e9188c0c72d7000ae205c55864e6d8 Binary files /dev/null and b/src/main/resources/textures/map/grass_biom/ground/GrassPathGrassLand02.png differ diff --git a/src/main/resources/textures/map/bigbomb.png b/src/main/resources/textures/objects/big_bomb/bigbomb.png similarity index 100% rename from src/main/resources/textures/map/bigbomb.png rename to src/main/resources/textures/objects/big_bomb/bigbomb.png diff --git a/src/main/resources/textures/map/bomb.png b/src/main/resources/textures/objects/bomb/bomb.png similarity index 100% rename from src/main/resources/textures/map/bomb.png rename to src/main/resources/textures/objects/bomb/bomb.png diff --git a/src/main/resources/textures/map/heart.png b/src/main/resources/textures/objects/heal/heart.png similarity index 100% rename from src/main/resources/textures/map/heart.png rename to src/main/resources/textures/objects/heal/heart.png diff --git a/src/main/resources/textures/map/bigexplosion.png b/src/main/resources/textures/objects/vfx/bigexplosion.png similarity index 100% rename from src/main/resources/textures/map/bigexplosion.png rename to src/main/resources/textures/objects/vfx/bigexplosion.png diff --git a/src/main/resources/textures/map/middleexplosion.png b/src/main/resources/textures/objects/vfx/middleexplosion.png similarity index 100% rename from src/main/resources/textures/map/middleexplosion.png rename to src/main/resources/textures/objects/vfx/middleexplosion.png diff --git a/src/main/resources/textures/map/smallexplosion.png b/src/main/resources/textures/objects/vfx/smallexplosion.png similarity index 100% rename from src/main/resources/textures/map/smallexplosion.png rename to src/main/resources/textures/objects/vfx/smallexplosion.png