From 4474ee26b3eee38d1ad33bb3d771d6f804fedfcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjetil=20=C3=98rbekk?= Date: Fri, 2 Mar 2012 16:04:55 +0100 Subject: Move all Android cleasses to com.orbekk.same.android package. --- .../com/orbekk/same/android/GameController.java | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 same-android/src/main/java/com/orbekk/same/android/GameController.java (limited to 'same-android/src/main/java/com/orbekk/same/android/GameController.java') diff --git a/same-android/src/main/java/com/orbekk/same/android/GameController.java b/same-android/src/main/java/com/orbekk/same/android/GameController.java new file mode 100644 index 0000000..2678208 --- /dev/null +++ b/same-android/src/main/java/com/orbekk/same/android/GameController.java @@ -0,0 +1,72 @@ +package com.orbekk.same.android; + +import java.util.ArrayList; +import java.util.List; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.orbekk.same.StateChangedListener; +import com.orbekk.same.UpdateConflict; + +import android.graphics.Paint; + +public class GameController { + private Logger logger = LoggerFactory.getLogger(getClass()); + private List remotePlayers = new ArrayList(); + private Player localPlayer; + private ChangeListener changeListener = null; +// private SameInterface same; + + public static class Player { + public Paint color; + public float posX; + public float posY; + } + + public interface ChangeListener { + void playerStatesChanged(); + } + + public static Player newPlayer() { + Player player = new Player(); + player.color = new Paint(); + player.color.setARGB(255, 255, 0, 0); + player.posX = 0.5f; + player.posY = 0.5f; + return player; + } + + public static GameController create(Player localPlayer) { + GameController controller = new GameController(localPlayer); +// same.addStateChangedListener(controller); + return controller; + } + + GameController(Player localPlayer) { + this.localPlayer = localPlayer; + } + + public void setMyPosition(float x, float y) throws UpdateConflict { + this.localPlayer.posX = x; + this.localPlayer.posY = y; + changeListener.playerStatesChanged(); + } + + public Player getLocalPlayer() { + return localPlayer; + } + + public List getRemotePlayers() { + return remotePlayers; + } + + public void setChangeListener(ChangeListener listener) { + this.changeListener = listener; + } + +// @Override +// public void stateChanged(String id, String data) { +// logger.info("StateChanged({}, {})", id, data); +// } +} -- cgit v1.2.3