Es geht so halb

master
Jonathan Hager 6 years ago
parent 61c200b2d1
commit 138bb33bd7

@ -38,11 +38,11 @@ public class DungeonGenerator {
// TODO: Zufällig Türen setzen
//int xPos = roomAmount / 2;
//int yPos = roomAmount / 2;
int xPos = roomAmount / 2;
int yPos = roomAmount / 2;
int xPos = (int) (Math.random() * roomAmount);
int yPos = (int) (Math.random() * roomAmount);
//int xPos = (int) (Math.random() * roomAmount);
//int yPos = (int) (Math.random() * roomAmount);
tempLevel.setRoom(generateRoom(), xPos, yPos);
@ -53,8 +53,8 @@ public class DungeonGenerator {
switch (direction) {
// Oben
case 0:
if(yPos != 0){
yPos -= 1;
if(yPos != roomAmount - 1){
yPos += 1;
}
break;
// Rechts
@ -65,8 +65,8 @@ public class DungeonGenerator {
break;
// Unten
case 2:
if(yPos != roomAmount - 1){
yPos += 1;
if(yPos != 0){
yPos -= 1;
}
break;
// Links
@ -95,12 +95,10 @@ public class DungeonGenerator {
Room tempRoom = new Room(new ItemContainer[itemAmount], new Entity[enemyAmount]);
return tempRoom;
}
private int[] generatePos(int sizeX, int sizeY, int tileSize){
int[] position = new int[2];
int xPos = (int) (Math.random() * sizeX);
@ -117,17 +115,17 @@ public class DungeonGenerator {
System.out.println("Level " + i);
for(int j = 0; j < temp.getRooms().length; j++){
//System.out.print(knoten[i].gebeName() + " ");
for(int k = 0; k < temp.getRooms().length; k++){
if(temp.getRooms()[j][k] == null){
System.out.print("0 ");
}
else{
System.out.print("1 ");
for(int k = 0; k < temp.getRooms().length; k++){
if(temp.getRooms()[j][k] == null){
System.out.print("0 ");
}
else{
System.out.print("1 ");
}
}
System.out.println();
}
System.out.println();
}
}
}
}

@ -5,10 +5,8 @@
*/
package com.dungeoncrawler.view;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.TextureRegion;
import com.badlogic.gdx.maps.MapLayer;
import com.badlogic.gdx.maps.MapLayers;
import com.badlogic.gdx.maps.tiled.TiledMap;
import com.badlogic.gdx.maps.tiled.TiledMapTileLayer;
@ -52,14 +50,33 @@ public class MapGenerator {
Room room = l.getRooms()[x][y];
if(room != null){
TiledMap tempRoom = generateRoom(room, sizeX, sizeY);
int tempX = 7;
int tempY = 5;
TiledMap tempRoom = generateRoom(room, tempX, tempY);
// Wenn es Fehler gibt, dann wohl hier: Viel Spaß beim Suchen! Danke!
TiledMapTileLayer temp = (TiledMapTileLayer) tempRoom.getLayers().get(2);
temp.getCell(0, 3).setTile(new StaticTiledMapTile(splitTiles[0][3]));
temp.getCell(4, 6).setTile(new StaticTiledMapTile(splitTiles[0][3]));
temp.getCell(4, 0).setTile(new StaticTiledMapTile(splitTiles[0][3]));
temp.getCell(8, 3).setTile(new StaticTiledMapTile(splitTiles[0][3]));
// Ausgang oben
if(y < l.getRooms()[0].length - 1 && l.getRooms()[x][y + 1] != null){
temp.getCell((tempX / 2) + 1, tempY + 1).setTile(new StaticTiledMapTile(splitTiles[0][3])); //oben
}
// Ausgang rechts
if(x > 0 && l.getRooms()[x - 1][y] != null){
temp.getCell(tempX + 1, (tempY / 2) + 1).setTile(new StaticTiledMapTile(splitTiles[0][3])); //rechts
}
// Ausgang unten
if(y > 0 && l.getRooms()[x][y - 1] != null){
temp.getCell((tempX / 2) + 1, 0).setTile(new StaticTiledMapTile(splitTiles[0][3])); //unten
}
// Ausgang links
if(x < l.getRooms().length - 1 && l.getRooms()[x + 1][y] != null){
temp.getCell(0, (tempY / 2) + 1).setTile(new StaticTiledMapTile(splitTiles[0][3])); //links
}
tempLevel[x][y] = tempRoom;
}
@ -70,10 +87,8 @@ public class MapGenerator {
return tempLevel;
}
private TiledMap generateRoom(Room r, int sizeX, int sizeY){
private TiledMap generateRoom(Room r, int roomDimensionX, int roomDimensionY){
TiledMap tempRoom = new TiledMap();
int roomDimensionX = 7;
int roomDimensionY = 5;
int mapDimensionX = roomDimensionX + 2;
int mapDimensionY = roomDimensionY + 2;

Loading…
Cancel
Save