summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2011-03-09 01:33:49 +0000
committerJesse Morgan <jesse@jesterpm.net>2011-03-09 01:33:49 +0000
commitb280c5726f8813b26a92614abee946d1cea657fc (patch)
treedc6e5e7d12383f9ad7323c1bed28b88c2fd522cd
parentd79a1c6abbf5ce378208dd1fb7ed594ca64c595c (diff)
Sending in background.
-rw-r--r--src/tesseract/World.java18
-rw-r--r--src/tesseract/generators/GeneratorsMenu.java2
2 files changed, 17 insertions, 3 deletions
diff --git a/src/tesseract/World.java b/src/tesseract/World.java
index da385e1..2063aba 100644
--- a/src/tesseract/World.java
+++ b/src/tesseract/World.java
@@ -18,6 +18,7 @@ import javax.media.j3d.IndexedLineArray;
import javax.media.j3d.Light;
import javax.media.j3d.Node;
import javax.media.j3d.Shape3D;
+import javax.swing.SwingWorker;
import javax.vecmath.Color3f;
import javax.vecmath.Point3d;
import javax.vecmath.Vector3f;
@@ -276,14 +277,27 @@ public class World implements Observer {
// Was there a halfspace involved? If so, was it a side?
if (hs != null && hs.normal.y != 1 && hs.normal.y != -1 && myPeer.getPeerSize() > 0) {
// Side collision, is there a peer?
- PeerInformation peer = myPeer.getPeerInDirection(o.getVelocity().x, -o.getVelocity().z);
+ final PeerInformation peer = myPeer.getPeerInDirection(o.getVelocity().x, -o.getVelocity().z);
if (peer != null) {
+ final CollidableObject sendMe = o;
+
o.rotateForTransmission(myPeer.getPeerInformation(), peer);
- myPeer.sendPayloadToPeer(peer, o);
o.detach();
myObjects.remove(o);
+ new SwingWorker<Object, Object>() {
+ protected Object doInBackground()
+ throws Exception {
+ myPeer.sendPayloadToPeer(peer, sendMe);
+ this.done();
+
+ return null;
+ }
+
+ }.execute();
+
+
// Moving on
continue;
}
diff --git a/src/tesseract/generators/GeneratorsMenu.java b/src/tesseract/generators/GeneratorsMenu.java
index 0256d8b..41cbc23 100644
--- a/src/tesseract/generators/GeneratorsMenu.java
+++ b/src/tesseract/generators/GeneratorsMenu.java
@@ -23,7 +23,7 @@ public class GeneratorsMenu extends JMenu {
super("Generators");
// Build the menu of generators.
- //add(new SphereField(theWorld));
+ add(new SphereField(theWorld));
add(new ParticleField(theWorld));
}
}