diff --git a/core/src/com/dungeoncrawler/control/Controller.java b/core/src/com/dungeoncrawler/control/Controller.java index 47872a7..8cae39b 100644 --- a/core/src/com/dungeoncrawler/control/Controller.java +++ b/core/src/com/dungeoncrawler/control/Controller.java @@ -54,7 +54,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ roomX = 8; roomY = 6; - e = new Entity[5]; batch = new SpriteBatch(); v = new MainMenu(); dg = new DungeonGenerator(); @@ -101,7 +100,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ entityMovement.scheduleTask(new Timer.Task() { @Override public void run() { - for(int i = 0; i <= 4; i++){ + for(int i = 0; i < e.length; i++){ if(e[i] != null){ e[i].randomMove(roomX, roomY); } @@ -116,7 +115,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ //PASSIERT IN MAINMENU if(v != null){ - v.render(batch, d.getPlayer() , e); + v.render(batch); } //PASSIERT IN GAMESCREEN @@ -237,12 +236,10 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ switch(ent.getId()){ case 0: e[i] = new Archer(x,y,lvl); - m.newEntity(i,ent,x,y); i = 11; break; case 1: e[i] = new Swordsman(x,y,lvl); - m.newEntity(i,ent,x,y); i = 11; break; } diff --git a/core/src/com/dungeoncrawler/view/GameScreen.java b/core/src/com/dungeoncrawler/view/GameScreen.java index 546c375..99114b5 100644 --- a/core/src/com/dungeoncrawler/view/GameScreen.java +++ b/core/src/com/dungeoncrawler/view/GameScreen.java @@ -133,7 +133,28 @@ public class GameScreen { camera.update(); batch.setProjectionMatrix(camera.combined); - + for(int i = 0; i < e.length; i++){ + if(e[i].getId() == 0){ //nimmt entity ID -> 0 = Archer || 1 = Swordsman || 2 = Arrow + entityTextures[i] = new Texture("archer.png"); + archerRegions = TextureRegion.split(entityTextures[i], 48, 48); + entitySprites[i] = new Sprite(archerRegions[0][2]); + entitySprites[i].setX(e[i].getxPos()); + entitySprites[i].setY(e[i].getyPos()); + } + if(e[i].getId() == 1){ + entityTextures[i] = new Texture("swordsman.png"); + swordsmanRegions = TextureRegion.split(entityTextures[i], 48, 48); + entitySprites[i] = new Sprite(swordsmanRegions[0][2]); + entitySprites[i].setX(e[i].getxPos()); + entitySprites[i].setY(e[i].getyPos()); + } + if(e[i].getId() == 2){ + arrowTextures[i] = new Texture("key.png"); + arrowSprites[i] = new Sprite(arrowTextures[i]); + arrowSprites[i].setX(e[i].getxPos()); + arrowSprites[i].setY(e[i].getyPos()); + } + } //BATCH @@ -196,41 +217,19 @@ public class GameScreen { } - public void newEntity(int i,Entity e, float x, float y){ - if(e.getId() == 0){ //nimmt entity ID -> 0 = Archer || 1 = Swordsman || 2 = Arrow - entityTextures[i] = new Texture("archer.png"); - archerRegions = TextureRegion.split(entityTextures[i], 48, 48); - entitySprites[i] = new Sprite(archerRegions[0][2]); - entitySprites[i].setX(x); - entitySprites[i].setY(y); - } - if(e.getId() == 1){ - entityTextures[i] = new Texture("swordsman.png"); - swordsmanRegions = TextureRegion.split(entityTextures[i], 48, 48); - entitySprites[i] = new Sprite(swordsmanRegions[0][2]); - entitySprites[i].setX(x); - entitySprites[i].setY(y); - } - if(e.getId() == 2){ - arrowTextures[i] = new Texture("key.png"); - arrowSprites[i] = new Sprite(arrowTextures[i]); - arrowSprites[i].setX(x); - arrowSprites[i].setY(y); - } - } - public void playerAttack(Entity e[], Player p){ + + public Entity[] playerAttack(Entity e[], Player p){ if(p.direction() == 0){ Texture verticalAttack = new Texture("AttackHori.png"); Sprite verticalAttackSprite = new Sprite(verticalAttack); verticalAttackSprite.setX(p.getxPos()); verticalAttackSprite.setY(p.getyPos()); - for(int i = 0; i