From a13c54e093811a5a25cd456e2e68c70c2e39ef51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjetil=20=C3=98rbekk?= Date: Sun, 26 Feb 2012 22:44:45 +0100 Subject: Add Variable.waitForChange() with lots of bugs. --- same-android/src/main/java/com/orbekk/same/GameView.java | 4 +++- .../src/main/java/com/orbekk/same/android/ClientInterfaceBridge.java | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'same-android') 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); -- cgit v1.2.3