From 3cf339bb8bac9461b4d6ef7c2673b16aecc98174 Mon Sep 17 00:00:00 2001 From: GammelJan Date: Sun, 24 May 2020 10:46:11 +0200 Subject: [PATCH] EHRE ALLA --- core/assets/sprites/earthspell.png | Bin 1259 -> 4932 bytes .../dungeoncrawler/control/Controller.java | 29 +++++++++--------- .../com/dungeoncrawler/view/EndScreen.java | 8 ++++- .../com/dungeoncrawler/view/GameScreen.java | 9 +++++- .../dungeoncrawler/view/MainMenuScreen.java | 2 +- .../com/dungeoncrawler/view/PauseScreen.java | 3 -- .../desktop/DesktopLauncher.java | 2 +- 7 files changed, 32 insertions(+), 21 deletions(-) diff --git a/core/assets/sprites/earthspell.png b/core/assets/sprites/earthspell.png index b272329ec37cddf3f2cddddf8bb2965255376f00..9a7334940a66fd5809bbd91cafcb29015a24f779 100644 GIT binary patch delta 4907 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 delta 1178 zcmV;L1ZDfgChG~1BYy#eX+uL$Nkc;*aB^>EX>4Tx04R}tkv&MmKpe$iQ;S~}1v`j1 zWT;LSL`58>ibb$c+6t{Ym|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx z6k5c1aNLh~_a1le0HI!Hs@X9CsG4OYV^J}aT@^cD5x@X?A%CJs^Frd7t}p^eH)$0X~st?f%Ws?u4huXp zWTcbx#35p_(8h8bv!bCAPZNg~Rik_%@7U)@Xdu#6F^Z`gySIalR!67hKpzL*zcO!ST_xA6ZW`93G$#Rp4U-(V{ z000JJOGiWiO#mwZ3;OC;4wE$xAP5i)0U9)$8ibQw4<~;D!%0LzRA}DqS-pzeKoFi) zV}eo{r7{8Il!g>>9ncG?b88M%rPL$j5mcr!9BR|~1@r=!E^SbgPF$xV)uuQ`jK;J2 z@#t`tXsXp(pTC)pncZ0}z+#Inw%C7d=hN0oV*r511ngr1HraT`F z)(rpvJUzeQ59_8KUw$@&_|57C|NBpuf3s@f+mF}b*T%o-H!c1ENnPL}f-H_~7DsL7 zqw~~pY8Vv3w=3uQw6zqE!l95Zep-1``L*%Sp`U-&f4chkreA=heECGMl)cpQvNm~H zLt0dZZ@=86fbz12ERJkiRFD?cRaLn}#Aozf!j9qB#y^LCTK_QteAF+X4{1>un%OQe z&f~jCoEFtpWm2cHdT@+A#mDz=jkL0G5&1Lcm+)iwweioT->v>*0{Ez3faG);?OQte zpPqkDTS$w_&~2DIOP^^#WNfoIvU~-lRm(->fpa0p^3M>z3a|AaaeN!}ML#3$&9rfp znn-HA8N~{q4Xdk@e*ZNOSvcBmT&>leQBcv?mf0`CmXC>p#4^^w{B-YorOgXI$@y`&y z3a|CwXZ->S!a(@GE(wMo60tgKSN&p zD!kTz=?20l{RXe*@CpU5RQj&r&>=cE^(u+?gNXg|2}WHdNgqY0US&;*e{TF7{`;=q sB;$8~H{kEee{Z|D|Gw+D*kUUC3n{`Q`foCNQvd(}07*qoM6N<$f*r0%>Hq)$ diff --git a/core/src/com/dungeoncrawler/control/Controller.java b/core/src/com/dungeoncrawler/control/Controller.java index c03c21f..737e3da 100644 --- a/core/src/com/dungeoncrawler/control/Controller.java +++ b/core/src/com/dungeoncrawler/control/Controller.java @@ -74,7 +74,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ public void create(){ checkDoor = false; - checkDie = false; + checkDie = true; end = false; playerSkin = 0; @@ -88,7 +88,10 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ batch = new SpriteBatch(); mm = new MainMenuScreen(volume); dg = new DungeonGenerator(); - + gs = null; + cs = null; + hc = null; + es = null; d = dg.generateDungeon(roomX - 1, roomY - 1, 48, new Player()); dg.ichWillSpielen(d); @@ -98,7 +101,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ roomAmount = d.getLevel()[0].getRooms().length; - level = 0; + level = 6; roomPosX = roomAmount / 2; roomPosY = roomAmount / 2; @@ -301,7 +304,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ if(es == null){ isPaused = true; entityMovement.stop(); - gs.stop(); + gs.end(); gs.getCamera().update(); batch.setProjectionMatrix(gs.getCamera().combined); gs = null; @@ -438,15 +441,13 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ } if(d.getPlayer().getHp() <= 0 && checkDie){ - //gs.stop(); - //create(); //TODO - //d.getPlayer().setHp(1); if(gs.player.getDie() == 0){ gs.player.setDie(1); d.getPlayer().setToDelete(true); } else if(gs.player.getDie() == 2){ - // Ist Tot + end = true; + return; } } @@ -827,7 +828,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ { if(button == Input.Buttons.LEFT){ switch(click(screenX, screenY)){ - case -1: // -1: nothing hit -- 0: go ingame -- 1: EXIT game -- 2: goto settings -- 3: goto controls -- 4: goto MainMenuScreen -- 9: volume down -- 10: volume up + case -1: // -1: nothing hit -- 0: go ingame -- 1: EXIT game -- 2: goto settings -- 3: goto controls -- 4: goto MainMenuScreen -- 9: volume down -- 10: volume up -- 11: restart game return true; case 0: @@ -860,7 +861,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ case 4: ss = null; cs = null; - mm.appear(); + mm.show(); return true; case 5: @@ -896,7 +897,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ } return true; case 11: - //create(); + create(); break; } @@ -910,6 +911,9 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ } public int click(int x, int y){ + if(es != null){ + return es.click(x, y); + } if(ps != null){ return ps.click(x,y); } @@ -924,9 +928,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{ } if(gs != null && isPaused == true){ - } - if(es != null){ - } return -1; } diff --git a/core/src/com/dungeoncrawler/view/EndScreen.java b/core/src/com/dungeoncrawler/view/EndScreen.java index f0f2838..7a3e148 100644 --- a/core/src/com/dungeoncrawler/view/EndScreen.java +++ b/core/src/com/dungeoncrawler/view/EndScreen.java @@ -20,11 +20,17 @@ import com.badlogic.gdx.math.Rectangle; * @author Jan */ public class EndScreen { + float w; + float h; Sprite backButton; public EndScreen(){ + w = Gdx.graphics.getWidth(); + h = Gdx.graphics.getHeight(); + float wc = w/2; + backButton = new Sprite(new Texture("sprites/backButton.png")); backButton.setPosition(0, 0); } @@ -38,7 +44,7 @@ public class EndScreen { public int click(int x, int y){ - Rectangle r = new Rectangle(x,y,1,1); + Rectangle r = new Rectangle(x,h-y,1,1); if(Intersector.overlaps(r, backButton.getBoundingRectangle())){ return 11; //NEUSTART } diff --git a/core/src/com/dungeoncrawler/view/GameScreen.java b/core/src/com/dungeoncrawler/view/GameScreen.java index 7808a75..d18cbbe 100644 --- a/core/src/com/dungeoncrawler/view/GameScreen.java +++ b/core/src/com/dungeoncrawler/view/GameScreen.java @@ -432,6 +432,7 @@ public class GameScreen { public void cleanUp(){ music.dispose(); animations.clear(); + animatePlayer.clear(); } public void startLoadingScreen(){ @@ -470,7 +471,6 @@ public class GameScreen { camera.translate(625f, 241f); animations.stop(); animatePlayer.stop(); - music.dispose(); } public void resume(){ camera.zoom = 700; @@ -478,6 +478,13 @@ public class GameScreen { animations.start(); animatePlayer.start(); } + public void end(){ + camera.zoom = 1600; + camera.translate(625f, 241f); + animations.stop(); + animatePlayer.stop(); + cleanUp(); + } public void createDmgFont(int value, int startX, int startY){ for(int i = 0; i < dmgContainer.length; i++){ diff --git a/core/src/com/dungeoncrawler/view/MainMenuScreen.java b/core/src/com/dungeoncrawler/view/MainMenuScreen.java index 750565b..0a7ce8b 100644 --- a/core/src/com/dungeoncrawler/view/MainMenuScreen.java +++ b/core/src/com/dungeoncrawler/view/MainMenuScreen.java @@ -199,7 +199,7 @@ public class MainMenuScreen{ hidden = true; } - public void appear(){ + public void show(){ hidden = false; } diff --git a/core/src/com/dungeoncrawler/view/PauseScreen.java b/core/src/com/dungeoncrawler/view/PauseScreen.java index b467ddd..c8c7bd2 100644 --- a/core/src/com/dungeoncrawler/view/PauseScreen.java +++ b/core/src/com/dungeoncrawler/view/PauseScreen.java @@ -59,9 +59,6 @@ public class PauseScreen{ public void render (SpriteBatch batch, float volume, OrthographicCamera camera) { - Gdx.gl.glClearColor(0, 0, 0, 1); - Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); - volumeButtonSprite.setPosition(0, 150); volumeDownSprite.setPosition(volumeButtonSprite.getX() + 230, volumeButtonSprite.getY()+28); diff --git a/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java b/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java index 2daa934..e32d395 100644 --- a/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java +++ b/desktop/src/com/dungeoncrawler/desktop/DesktopLauncher.java @@ -11,7 +11,7 @@ public class DesktopLauncher { config.width = 1600; config.height = 900; - config.title = "The fRestless Caverns - Der beste Dungeon Crawler ALLER ZEITEN"; + config.title = "The Restless Caverns - Der beste Dungeon Crawler ALLER ZEITEN"; config.resizable = true;