X-Git-Url: https://deadsoftware.ru/gitweb?p=cavedroid.git;a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavecraft%2Fgame%2FGameInputHandler.java;h=102a0f7b003f79471cca77e2dc3c65778debe6a3;hp=313675d414b6788dfa8b1ca935677f87dd0cbd87;hb=769c26b45cc2bc91439f5f4f92bb7ac75fadfa91;hpb=48de33432d9615967da21b22b950bd526b330572 diff --git a/core/src/ru/deadsoftware/cavecraft/game/GameInputHandler.java b/core/src/ru/deadsoftware/cavecraft/game/GameInputHandler.java index 313675d..102a0f7 100644 --- a/core/src/ru/deadsoftware/cavecraft/game/GameInputHandler.java +++ b/core/src/ru/deadsoftware/cavecraft/game/GameInputHandler.java @@ -49,14 +49,31 @@ public class GameInputHandler { gameProc.cursorY = (int)(gameProc.player.position.y/16); if (gameProc.ctrlMode > 1) gameProc.ctrlMode = 0; } - if (keyCode == Input.Keys.SPACE && - gameProc.player.canJump) gameProc.player.moveY.add(0, -8); + if (keyCode == Input.Keys.SPACE) { + if (gameProc.player.canJump) { + gameProc.player.moveY.add(0, -7); + } else if (!gameProc.player.flyMode) { + gameProc.player.flyMode = true; + gameProc.player.moveY.setZero(); + } else { + gameProc.player.moveY.y = -GamePhysics.PL_SPEED; + } + } + if (keyCode == Input.Keys.CONTROL_LEFT) { + gameProc.player.moveY.y = GamePhysics.PL_SPEED; + } } public void keyUp(int keyCode) { if (keyCode == Input.Keys.A || keyCode == Input.Keys.D) { gameProc.player.moveX.x = 0; } + if (keyCode == Input.Keys.SPACE) { + if (gameProc.player.flyMode) gameProc.player.moveY.setZero(); + } + if (keyCode == Input.Keys.CONTROL_LEFT) { + if (gameProc.player.flyMode) gameProc.player.moveY.setZero(); + } } public void mouseMoved(int screenX, int screenY) {