diff --git a/core/src/com/dungeoncrawler/model/DungeonGenerator.java b/core/src/com/dungeoncrawler/model/DungeonGenerator.java index ed771a6..1076968 100644 --- a/core/src/com/dungeoncrawler/model/DungeonGenerator.java +++ b/core/src/com/dungeoncrawler/model/DungeonGenerator.java @@ -7,6 +7,7 @@ package com.dungeoncrawler.model; import com.dungeoncrawler.model.entities.*; import com.dungeoncrawler.model.items.Amulet; +import com.dungeoncrawler.model.items.Key; import java.util.ArrayList; /** @@ -85,6 +86,25 @@ public class DungeonGenerator { // i darf nur erhöht werden, wenn auch ein Raum generiert wurde i++; } + + + } + + int keyRoom = (int) (Math.random()*roomAmount); + + int i = 0; + for(int x = 0; x < roomAmount; x++){ + for(int y = 0; y < roomAmount; y++){ + if(tempLevel.getRooms()[x][y] != null){ + if(i == keyRoom){ + Item tempItem = new Key(lvl); + ItemContainer tempContainer = new ItemContainer(((sizeX / 2) + 1) * 48, ((sizeY / 2) + 1) * 48, tempItem); + tempLevel.getRooms()[x][y].getItems().add(tempContainer); + } + + i++; + } + } } // Exit wird generiert diff --git a/core/src/com/dungeoncrawler/view/MapGenerator.java b/core/src/com/dungeoncrawler/view/MapGenerator.java index 89e20a5..d7d0767 100644 --- a/core/src/com/dungeoncrawler/view/MapGenerator.java +++ b/core/src/com/dungeoncrawler/view/MapGenerator.java @@ -28,6 +28,7 @@ public class MapGenerator { TextureRegion[][] splitTiles; Texture torchT; Texture sword; + Texture key; public MapGenerator(Texture[] tiles){ allTiles = new TextureRegion[7][][]; @@ -37,6 +38,7 @@ public class MapGenerator { } torchT = new Texture("sprites/torch.png"); sword = new Texture("sprites/amulet.png"); + key = new Texture("sprites/key.png"); } public Map generateMap(Dungeon d){ @@ -311,11 +313,19 @@ public class MapGenerator { ItemContainer container = r.getItems().get(i); Item item = container.getItem(); - if(item.getId() == 2){ - AnimatedObject swordSprite = new AnimatedObject(sword, 48, 48); - swordSprite.getSprite().setPosition(container.getxPos(), container.getyPos()); - temp.getMapItems().add(swordSprite); + AnimatedObject itemSprite = null; + switch(item.getId()){ + case 0: + itemSprite = new AnimatedObject(key, 32, 32); + break; + + case 2: + itemSprite = new AnimatedObject(sword, 48, 48); + break; } + + itemSprite.getSprite().setPosition(container.getxPos(), container.getyPos()); + temp.getMapItems().add(itemSprite); } }