From 9ffaaac2d072edea8c4b1dfe84ad75d355d11baf Mon Sep 17 00:00:00 2001 From: Steve Date: Sun, 6 Mar 2011 11:53:44 +0000 Subject: Added method to in PObj to swithpositions when tranmitted Added the new method in the world just before all call to transmit --- src/tesseract/World.java | 9 ++++++++- src/tesseract/objects/PhysicalObject.java | 11 +++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/tesseract/World.java b/src/tesseract/World.java index c68b774..73b712b 100644 --- a/src/tesseract/World.java +++ b/src/tesseract/World.java @@ -356,7 +356,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(j_object.getVelocity().getX(), j_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { - //switch positions + j_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object); indexToRemove = j; @@ -374,6 +374,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(j_object.getVelocity().getX(), j_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + j_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object); indexToRemove = j; @@ -391,6 +392,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(j_object.getVelocity().getX(), j_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + j_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object); indexToRemove = j; @@ -407,6 +409,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(j_object.getVelocity().getX(), j_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + j_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object); indexToRemove = j; @@ -425,6 +428,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(i_object.getVelocity().getX(), i_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + i_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object); indexToRemove = i; @@ -441,6 +445,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(i_object.getVelocity().getX(), i_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + i_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object); indexToRemove = i; @@ -457,6 +462,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(i_object.getVelocity().getX(), i_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + i_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object); indexToRemove = i; @@ -473,6 +479,7 @@ public class World implements Observer { PeerInformation info = myPeer.getPeerInDirection(i_object.getVelocity().getX(), i_object.getVelocity().getZ()); System.out.println("PeerInfo: " + info); if (info != null) { + i_object.switchPosition(); myPeer.sendPayloadToPeer(myPeer.getPeerInDirection (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object); indexToRemove = i; diff --git a/src/tesseract/objects/PhysicalObject.java b/src/tesseract/objects/PhysicalObject.java index 4c19381..2497153 100644 --- a/src/tesseract/objects/PhysicalObject.java +++ b/src/tesseract/objects/PhysicalObject.java @@ -111,6 +111,17 @@ public class PhysicalObject extends CollidableObject { return position; } + /** + * Switches the position of the object before transmission. + */ + public void switchPosition() { + float x = position.getX(); + float z = position.getZ(); + + position.x = -x; + position.z = -z; + } + /** * @return The orientation of the object. */ -- cgit v1.2.3