diff options
author | Jesse Morgan <jesse@jesterpm.net> | 2011-03-09 01:33:49 +0000 |
---|---|---|
committer | Jesse Morgan <jesse@jesterpm.net> | 2011-03-09 01:33:49 +0000 |
commit | b280c5726f8813b26a92614abee946d1cea657fc (patch) | |
tree | dc6e5e7d12383f9ad7323c1bed28b88c2fd522cd /src/tesseract | |
parent | d79a1c6abbf5ce378208dd1fb7ed594ca64c595c (diff) |
Sending in background.
Diffstat (limited to 'src/tesseract')
-rw-r--r-- | src/tesseract/World.java | 18 | ||||
-rw-r--r-- | src/tesseract/generators/GeneratorsMenu.java | 2 |
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)); } } |