From 41185f6b7b797d7f6340703f5edc4e31dc3aa976 Mon Sep 17 00:00:00 2001 From: GammelJan Date: Fri, 24 Apr 2020 22:41:13 +0200 Subject: [PATCH] coolcoolcool --- .../dungeoncrawler/control/Controller.java | 48 ++++++------ .../com/dungeoncrawler/view/GameScreen.java | 6 -- .../src/com/dungeoncrawler/view/MainMenu.java | 74 +++---------------- .../desktop/DesktopLauncher.java | 2 +- 4 files changed, 35 insertions(+), 95 deletions(-) diff --git a/core/src/com/dungeoncrawler/control/Controller.java b/core/src/com/dungeoncrawler/control/Controller.java index 8260d8a..53ea937 100644 --- a/core/src/com/dungeoncrawler/control/Controller.java +++ b/core/src/com/dungeoncrawler/control/Controller.java @@ -252,7 +252,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ public boolean keyDown(int keycode) { if(keycode == Input.Keys.A){ if(v != null){ - v.moveCursor(3); } if(m != null){ d.getPlayer().setMovementX(-3f); @@ -261,7 +260,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(keycode == Input.Keys.D){ if(v != null){ - v.moveCursor(1); } if(m != null){ d.getPlayer().setMovementX(+3f); @@ -270,7 +268,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(keycode == Input.Keys.S){ if(v != null){ - v.moveCursor(2); } if(m != null){ d.getPlayer().setMovementY(-3f); @@ -279,27 +276,13 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(keycode == Input.Keys.W){ if(v != null){ - v.moveCursor(0); } if(m != null){ d.getPlayer().setMovementY(3f); } } - if(keycode == Input.Keys.ENTER){ - if(v != null){ - if(v.click() == -1){} - else if(v.click() == 0){ - v = null; - m = new GameScreen(d); - newEntity(new Archer(0,0,0),96,96,0); - newEntity(new Archer(0,0,0),96,144,0); - newEntity(new Swordsman(0,0,0),288,96,0); - newEntity(new Swordsman(0,0,0),288,144,0); - newEntity(new Swordsman(0,0,0),48,144,0); - } - } - } + if(keycode == Input.Keys.E){ if(v != null){} @@ -314,7 +297,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ public boolean keyUp(int keycode) { if(keycode == Input.Keys.A){ if(v != null){ - v.stopCursor(3); } if(m != null){ d.getPlayer().setMovementX(0); @@ -323,7 +305,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(keycode == Input.Keys.D){ if(v != null){ - v.stopCursor(1); } if(m != null){ d.getPlayer().setMovementX(0); @@ -332,7 +313,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(keycode == Input.Keys.S){ if(v != null){ - v.stopCursor(2); } if(m != null){ d.getPlayer().setMovementY(0); @@ -341,7 +321,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(keycode == Input.Keys.W){ if(v != null){ - v.stopCursor(0); } if(m != null){ d.getPlayer().setMovementY(0); @@ -366,8 +345,29 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ @Override public boolean touchDown(int screenX, int screenY, int pointer, int button) { - - return false; + if(button == Input.Buttons.LEFT){ + if(v != null){ + switch(v.click(screenX, screenY)){ + case -1: + + return true; + case 0: + v = null; + m = new GameScreen(d); + return true; + case 1: + + return true; + } + + return true; + } + if(m != null){ + + return true; + } + } + return true; } @Override diff --git a/core/src/com/dungeoncrawler/view/GameScreen.java b/core/src/com/dungeoncrawler/view/GameScreen.java index db20be3..633571d 100644 --- a/core/src/com/dungeoncrawler/view/GameScreen.java +++ b/core/src/com/dungeoncrawler/view/GameScreen.java @@ -149,12 +149,6 @@ public class GameScreen { 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()); - } } } diff --git a/core/src/com/dungeoncrawler/view/MainMenu.java b/core/src/com/dungeoncrawler/view/MainMenu.java index b0325d6..8f4d3e4 100644 --- a/core/src/com/dungeoncrawler/view/MainMenu.java +++ b/core/src/com/dungeoncrawler/view/MainMenu.java @@ -7,9 +7,6 @@ import com.badlogic.gdx.graphics.Pixmap; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.graphics.g2d.Sprite; -import com.badlogic.gdx.math.Rectangle; -import com.dungeoncrawler.model.entities.*; -import com.dungeoncrawler.model.Entity; public class MainMenu{ @@ -21,14 +18,7 @@ public class MainMenu{ Sprite quitButtonSprite; Sprite backgroundSprite; - //ENTITIES - - //CURSOR - Texture c; - Sprite cursor; - float CursorMoveX; - float CursorMoveY; - + //CAMERA float w = Gdx.graphics.getWidth(); float h = Gdx.graphics.getHeight(); @@ -50,13 +40,12 @@ public class MainMenu{ quitButtonSprite = new Sprite(quitButtonTexture); backgroundSprite = new Sprite(backgroundTexture); - startButtonSprite.setX(100f); - startButtonSprite.setY(350f); - quitButtonSprite.setX(50f); - quitButtonSprite.setY(50f); + startButtonSprite.setBounds(100f, 350f, startButtonTexture.getWidth(), startButtonTexture.getHeight()); + quitButtonSprite.setBounds(50f, 50f, quitButtonTexture.getWidth(), quitButtonTexture.getHeight()); backgroundSprite.setX(0f); backgroundSprite.setY(0f); + camera = new OrthographicCamera(1, h/w); camera.zoom = 1200f; camera.translate(backgroundSprite.getWidth()/2, backgroundSprite.getHeight()/2); @@ -66,74 +55,31 @@ public class MainMenu{ Gdx.graphics.setCursor(Gdx.graphics.newCursor(pm, 0, 0)); pm.dispose(); - //ENTITIES - - //CURSOR - c = new Texture("cursor.png"); - cursor = new Sprite(c); - cursor.setX((float) w/2); - cursor.setY((float) h/2); - CursorMoveX = 0f; - CursorMoveY = 0f; - - //PLAYER } public void render (SpriteBatch batch) { Gdx.gl.glClearColor(0, 0, 0, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); - cursor.setX(cursor.getX()+ CursorMoveX); - cursor.setY(cursor.getY()+ CursorMoveY); batch.begin(); batch.setProjectionMatrix(camera.combined); backgroundSprite.draw(batch); startButtonSprite.draw(batch); quitButtonSprite.draw(batch); - cursor.draw(batch); batch.end(); } - - - - public void moveCursor(int direction){ - switch(direction){ //starts the directional movement of the cursor in one direction depending on the pressed key - case 0: - CursorMoveY = 10f; break; - case 1: - CursorMoveX = 10f; break; - case 2: - CursorMoveY = -10f; break; - case 3: - CursorMoveX = -10f; break; - } - } - public void stopCursor(int direction){ //stops the directional movement of the cursor in one direction depending on the released key - switch(direction){ - case 0: - CursorMoveY = 0f; break; - case 1: - CursorMoveX = 0f; break; - case 2: - CursorMoveY = 0f; break; - case 3: - CursorMoveX = 0f; break; + public int click(int x, int y){ // prueft ob cursor mit button (START) ueberlappt + if(x >= (int) startButtonSprite.getX() && x <= (int) startButtonSprite.getX()+ (int) startButtonSprite.getWidth() && y>= (int) startButtonSprite.getY() && y <= (int) startButtonSprite.getY() + (int) startButtonSprite.getHeight()){ + return 0; } - } - public int click(){ // prueft ob cursor mit button (START) ueberlappt - Rectangle rectangleCursor = cursor.getBoundingRectangle(); - boolean overlapsPlay = rectangleCursor.overlaps(startButtonSprite.getBoundingRectangle()); - boolean overlapsQuit = rectangleCursor.overlaps(quitButtonSprite.getBoundingRectangle()); - if(overlapsPlay == true){ - return 0; // ints weil fuer mehr buttons eine ID festgelegt werden kann. 0 = START || 1 = QUIT ||| -1 = kein button - } - else if(overlapsQuit == true){ + if(x >= (int) quitButtonSprite.getX() && x <= (int) quitButtonSprite.getX()+ (int) quitButtonSprite.getWidth() && y>= (int) quitButtonSprite.getY() && y <= (int) quitButtonSprite.getY() + (int) quitButtonSprite.getHeight()){ return 1; } - else{return -1;} + + return -1; } diff --git a/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java b/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java index 9e8e9c2..0c1c7f7 100644 --- a/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java +++ b/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java @@ -12,7 +12,7 @@ public class DesktopLauncher { config.width = 1600; config.height = 900; config.title = "The Restless Caverns"; - //config.addIcon("logo.png", Files.FileType.Internale); + //weconfig.addIcon("logo.png", Files.FileType.Internale); new LwjglApplication(new Controller(), config); }