diff --git a/core/src/ru/deadsoftware/cavecraft/misc/InputHandlerGame.java b/core/src/ru/deadsoftware/cavecraft/misc/InputHandlerGame.java
index 9978e0c99a9edebe2b7620bf07d6bf43c5210036..b8460e018de1eab888bf21fe902043ba853c0c4b 100644 (file)
import com.badlogic.gdx.InputProcessor;
import ru.deadsoftware.cavecraft.CaveGame;
import ru.deadsoftware.cavecraft.game.GameInput;
-import ru.deadsoftware.cavecraft.game.GameProc;
import static ru.deadsoftware.cavecraft.GameScreen.getHeight;
import static ru.deadsoftware.cavecraft.GameScreen.getWidth;
+import static ru.deadsoftware.cavecraft.GameScreen.GP;
public class InputHandlerGame implements InputProcessor {
- private GameProc gameProc;
private GameInput gameInput;
- private float tWidth, tHeight;
-
- public InputHandlerGame(GameProc gameProc) {
- this.gameProc = gameProc;
- this.gameInput = new GameInput(gameProc);
- tWidth = gameProc.renderer.camera.viewportWidth;
- tHeight = gameProc.renderer.camera.viewportHeight;
+ public InputHandlerGame() {
+ this.gameInput = new GameInput();
}
@Override
@Override
public boolean touchDown(int screenX, int screenY, int pointer, int button) {
- int tx = (int) (screenX * tWidth / getWidth());
- int ty = (int) (screenY * tHeight / getHeight());
- screenX *= gameProc.renderer.camera.viewportWidth / getWidth();
- screenY *= gameProc.renderer.camera.viewportHeight / getHeight();
+ screenX *= GP.renderer.getWidth() / getWidth();
+ screenY *= GP.renderer.getHeight() / getHeight();
if (CaveGame.TOUCH) {
- if (tx > 26 && tx < 52 && ty > tHeight - 52 && ty < tHeight - 26) {
- if (gameProc.ctrlMode == 1) gameInput.keyDown(Input.Keys.W);
+ if (screenX > 26 && screenX < 52 && screenY > GP.renderer.getHeight() - 52 &&
+ screenY < GP.renderer.getHeight() - 26) {
+ if (GP.ctrlMode == 1) gameInput.keyDown(Input.Keys.W);
else gameInput.keyDown(Input.Keys.SPACE);
- } else if (tx > 0 && tx < 26 && ty > tHeight - 26) {
+ } else if (screenX > 0 && screenX < 26 && screenY > GP.renderer.getHeight() - 26) {
gameInput.keyDown(Input.Keys.A);
- } else if (tx > 26 && tx < 52 && ty > tHeight - 26) {
- if (gameProc.ctrlMode == 1) gameInput.keyDown(Input.Keys.S);
+ } else if (screenX > 26 && screenX < 52 && screenY > GP.renderer.getHeight() - 26) {
+ if (GP.ctrlMode == 1) gameInput.keyDown(Input.Keys.S);
else gameInput.keyDown(Input.Keys.CONTROL_LEFT);
- } else if (tx > 52 && tx < 78 && ty > tHeight - 26) {
+ } else if (screenX > 52 && screenX < 78 && screenY > GP.renderer.getHeight() - 26) {
gameInput.keyDown(Input.Keys.D);
- } else if (tx > 78 && tx < 104 && ty > tHeight - 26) {
+ } else if (screenX > 78 && screenX < 104 && screenY > GP.renderer.getHeight() - 26) {
gameInput.keyDown(Input.Keys.ALT_LEFT);
- } else if (tx > tWidth - 52 && tx < tWidth - 26 && ty > tHeight - 26) {
+ } else if (screenX > GP.renderer.getWidth() - 52 && screenX < GP.renderer.getWidth() - 26 &&
+ screenY > GP.renderer.getHeight() - 26) {
gameInput.touchDown(screenX, screenY, Input.Buttons.LEFT);
- } else if (tx > tWidth - 26 && screenY > ty - 26) {
+ } else if (screenX > GP.renderer.getWidth() - 26 && screenY > screenY - 26) {
gameInput.touchDown(screenX, screenY, Input.Buttons.RIGHT);
} else {
gameInput.touchDown(screenX, screenY, -1);
@Override
public boolean touchUp(int screenX, int screenY, int pointer, int button) {
- int tx = (int) (screenX * tWidth / getWidth());
- int ty = (int) (screenY * tHeight / getHeight());
- screenX *= gameProc.renderer.camera.viewportWidth / getWidth();
- screenY *= gameProc.renderer.camera.viewportHeight / getHeight();
+ screenX *= GP.renderer.getWidth() / getWidth();
+ screenY *= GP.renderer.getHeight() / getHeight();
if (CaveGame.TOUCH) {
- if (tx > 26 && tx < 52 && ty > tHeight - 52 && ty < tHeight - 26) {
- if (gameProc.ctrlMode == 1) gameInput.keyUp(Input.Keys.W);
+ if (screenX > 26 && screenX < 52 && screenY > GP.renderer.getHeight() - 52 &&
+ screenY < GP.renderer.getHeight() - 26) {
+ if (GP.ctrlMode == 1) gameInput.keyUp(Input.Keys.W);
else gameInput.keyUp(Input.Keys.SPACE);
- } else if (tx > 0 && tx < 26 && ty > tHeight - 26) {
+ } else if (screenX > 0 && screenX < 26 && screenY > GP.renderer.getHeight() - 26) {
gameInput.keyUp(Input.Keys.A);
- } else if (tx > 26 && tx < 52 && ty > tHeight - 26) {
- if (gameProc.ctrlMode == 1) gameInput.keyUp(Input.Keys.S);
+ } else if (screenX > 26 && screenX < 52 && screenY > GP.renderer.getHeight() - 26) {
+ if (GP.ctrlMode == 1) gameInput.keyUp(Input.Keys.S);
else gameInput.keyUp(Input.Keys.CONTROL_LEFT);
- } else if (tx > 52 && tx < 78 && ty > tHeight - 26) {
+ } else if (screenX > 52 && screenX < 78 && screenY > GP.renderer.getHeight() - 26) {
gameInput.keyUp(Input.Keys.D);
- } else if (tx > 78 && tx < 104 && ty > tHeight - 26) {
+ } else if (screenX > 78 && screenX < 104 && screenY > GP.renderer.getHeight() - 26) {
gameInput.keyUp(Input.Keys.ALT_LEFT);
- } else if (tx > tWidth - 52 && tx < tWidth - 26 && ty > tHeight - 26) {
+ } else if (screenX > GP.renderer.getWidth() - 52 && screenX < GP.renderer.getWidth() - 26 &&
+ screenY > GP.renderer.getHeight() - 26) {
gameInput.touchUp(screenX, screenY, Input.Buttons.LEFT);
- } else if (tx > tWidth - 26 && screenY > ty - 26) {
+ } else if (screenX > GP.renderer.getWidth() - 26 && screenY > screenY - 26) {
gameInput.touchUp(screenX, screenY, Input.Buttons.RIGHT);
} else {
gameInput.touchUp(screenX, screenY, -1);
@Override
public boolean touchDragged(int screenX, int screenY, int pointer) {
- screenX *= gameProc.renderer.camera.viewportWidth / getWidth();
- screenY *= gameProc.renderer.camera.viewportHeight / getHeight();
- if (gameProc.isKeyDown && (screenX > 78 || screenY < gameProc.renderer.getHeight() - 52)) {
- gameInput.keyUp(gameProc.keyDownCode);
+ screenX *= GP.renderer.getWidth() / getWidth();
+ screenY *= GP.renderer.getHeight() / getHeight();
+ if (GP.isKeyDown && (screenX > 78 || screenY < GP.renderer.getHeight() - 52)) {
+ gameInput.keyUp(GP.keyDownCode);
} else {
gameInput.touchDragged(screenX, screenY);
}
@Override
public boolean mouseMoved(int screenX, int screenY) {
- screenX *= gameProc.renderer.camera.viewportWidth / getWidth();
- screenY *= gameProc.renderer.camera.viewportHeight / getHeight();
- gameInput.mouseMoved(screenX, screenY);
return false;
}
gameInput.scrolled(amount);
return false;
}
-}
\ No newline at end of file
+}