diff --git a/core/src/ru/deadsoftware/cavedroid/game/GameRenderer.java b/core/src/ru/deadsoftware/cavedroid/game/GameRenderer.java
index 36f6c75aadbe64eb4de8115db837ba7de59a8d35..2ae4756f54ab06b08b1c309ca3330348f4726d3c 100644 (file)
float camTargetX, camTargetY;
float camTargetX, camTargetY;
- if (player.controlMode == Player.ControlMode.WALK) {
+ boolean followPlayer = player.controlMode == Player.ControlMode.WALK || !mMainConfig.isTouch();
+
+ if (followPlayer) {
camTargetX = plTargetX + Math.min(player.getVelocity().x * 2, getWidth() / 2);
camTargetY = plTargetY + player.getVelocity().y;
} else {
camTargetX = plTargetX + Math.min(player.getVelocity().x * 2, getWidth() / 2);
camTargetY = plTargetY + player.getVelocity().y;
} else {
Vector2 moveVector = new Vector2(camTargetX - camCenterX, camTargetY - camCenterY);
Vector2 moveVector = new Vector2(camTargetX - camCenterX, camTargetY - camCenterY);
- if (player.controlMode == Player.ControlMode.WALK && player.getVelocity().isZero()) {
+ if (followPlayer && player.getVelocity().isZero()) {
mCameraDelayMs = TimeUtils.millis();
mCamCenterToPlayer.x = plTargetX - camCenterX;
mCamCenterToPlayer.y = plTargetY - camCenterY;
mCameraDelayMs = TimeUtils.millis();
mCamCenterToPlayer.x = plTargetX - camCenterX;
mCamCenterToPlayer.y = plTargetY - camCenterY;