summaryrefslogtreecommitdiff
path: root/same-android
diff options
context:
space:
mode:
Diffstat (limited to 'same-android')
-rw-r--r--same-android/src/main/java/com/orbekk/same/GameView.java4
-rw-r--r--same-android/src/main/java/com/orbekk/same/android/ClientInterfaceBridge.java4
2 files changed, 5 insertions, 3 deletions
diff --git a/same-android/src/main/java/com/orbekk/same/GameView.java b/same-android/src/main/java/com/orbekk/same/GameView.java
index 527d3da..43cda27 100644
--- a/same-android/src/main/java/com/orbekk/same/GameView.java
+++ b/same-android/src/main/java/com/orbekk/same/GameView.java
@@ -92,7 +92,9 @@ public class GameView extends SurfaceView implements SurfaceHolder.Callback {
newPlayer.posX = x / width;
newPlayer.posY = y / width;
try {
- player.set(newPlayer);
+ if (!player.waitingForUpdate()) {
+ player.set(newPlayer);
+ }
} catch (UpdateConflict e) {
Toast.makeText(context, "Failed to update position.",
Toast.LENGTH_SHORT).show();
diff --git a/same-android/src/main/java/com/orbekk/same/android/ClientInterfaceBridge.java b/same-android/src/main/java/com/orbekk/same/android/ClientInterfaceBridge.java
index 4dde60c..aa4b0b6 100644
--- a/same-android/src/main/java/com/orbekk/same/android/ClientInterfaceBridge.java
+++ b/same-android/src/main/java/com/orbekk/same/android/ClientInterfaceBridge.java
@@ -88,7 +88,7 @@ public class ClientInterfaceBridge implements ClientInterface {
Intent intent = new Intent(context, SameService.class);
context.bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE);
}
-
+
private void disconnectFromService() {
Message message = Message.obtain(null, SameService.REMOVE_STATE_RECEIVER);
message.obj = responseMessenger;
@@ -123,7 +123,7 @@ public class ClientInterfaceBridge implements ClientInterface {
message.obj = component;
if (serviceMessenger == null) {
logger.warn("Not connected to service. Ignore update: {}", component);
- return;
+ throw new UpdateConflict("Not connected to Android Service.");
}
try {
serviceMessenger.send(message);