summaryrefslogtreecommitdiffstats
path: root/core/src/ch/asynk/rustanddust/screens
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/ch/asynk/rustanddust/screens')
-rw-r--r--core/src/ch/asynk/rustanddust/screens/GameScreen.java19
1 files changed, 11 insertions, 8 deletions
diff --git a/core/src/ch/asynk/rustanddust/screens/GameScreen.java b/core/src/ch/asynk/rustanddust/screens/GameScreen.java
index 53f079a..6c58c1b 100644
--- a/core/src/ch/asynk/rustanddust/screens/GameScreen.java
+++ b/core/src/ch/asynk/rustanddust/screens/GameScreen.java
@@ -14,6 +14,7 @@ import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.math.Vector2;
+import com.badlogic.gdx.math.Vector3;
import ch.asynk.rustanddust.RustAndDust;
@@ -44,6 +45,8 @@ public class GameScreen implements Screen
private boolean blocked;
private float inputDelay = 0f;
private Vector2 dragPos = new Vector2();
+ private Vector3 hudTouch = new Vector3();
+ private Vector3 mapTouch = new Vector3();
public GameScreen(final RustAndDust game)
{
@@ -87,8 +90,8 @@ public class GameScreen implements Screen
int dx = (int) (dragPos.x - x);
int dy = (int) (dragPos.y - y);
dragPos.set(x, y);
- cam.unprojectHud(x, y, ctrl.hudTouch);
- if (!ctrl.drag(-dx, dy))
+ cam.unprojectHud(x, y, hudTouch);
+ if (!ctrl.drag(hudTouch.x, hudTouch.y, -dx, dy))
cam.translate(dx, dy);
return true;
}
@@ -98,9 +101,9 @@ public class GameScreen implements Screen
if (blocked) return true;
if (button == Input.Buttons.LEFT) {
dragPos.set(x, y);
- cam.unproject(x, y, ctrl.mapTouch);
- cam.unprojectHud(x, y, ctrl.hudTouch);
- ctrl.touchDown();
+ cam.unproject(x, y, mapTouch);
+ cam.unprojectHud(x, y, hudTouch);
+ ctrl.touchDown(hudTouch.x, hudTouch.y, mapTouch.x, mapTouch.y);
}
return true;
}
@@ -114,9 +117,9 @@ public class GameScreen implements Screen
}
dragged = 0;
if (button == Input.Buttons.LEFT) {
- cam.unproject(x, y, ctrl.mapTouch);
- cam.unprojectHud(x, y, ctrl.hudTouch);
- ctrl.touchUp();
+ cam.unproject(x, y, mapTouch);
+ cam.unprojectHud(x, y, hudTouch);
+ ctrl.touchUp(hudTouch.x, hudTouch.y, mapTouch.x, mapTouch.y);
}
return true;
}