summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tesseract/objects/remote/RemoteObject.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/tesseract/objects/remote/RemoteObject.java b/src/tesseract/objects/remote/RemoteObject.java
new file mode 100644
index 0000000..7c3e3be
--- /dev/null
+++ b/src/tesseract/objects/remote/RemoteObject.java
@@ -0,0 +1,54 @@
+package tesseract.objects.remote;
+
+import java.awt.event.KeyEvent;
+
+import javax.vecmath.Vector3f;
+
+import tesseract.objects.PhysicalObject;
+
+/**
+ * Parent class of network controlled objects.
+ *
+ * @author jesse
+ */
+public abstract class RemoteObject extends PhysicalObject {
+ /**
+ * Serial UID.
+ */
+ private static final long serialVersionUID = -6966379446377480998L;
+
+ /**
+ * Privately used by the key controller.
+ */
+ private static final float STEP = 0.01f;
+
+ public RemoteObject(Vector3f thePosition, float mass) {
+ super(thePosition, mass);
+ }
+
+ /**
+ * This method is called when a key event is received.
+ *
+ * @param event The KeyEvent recieved
+ */
+ protected void keyEventReceived(final KeyEvent event) {
+ switch (event.getKeyCode()) {
+ case KeyEvent.VK_W:
+ position.z -= STEP;
+ break;
+
+ case KeyEvent.VK_S:
+ position.z += STEP;
+ break;
+
+ case KeyEvent.VK_A:
+ position.x -= STEP;
+ break;
+
+ case KeyEvent.VK_D:
+ position.x += STEP;
+ break;
+ }
+ }
+
+}