- Fix bug in physics stop button

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8604 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
3.0
nor..67 13 years ago
parent 5826b4cefe
commit 200801cd4e
  1. 13
      sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java

@ -462,7 +462,7 @@ public class SceneApplication extends Application implements LookupProvider, Loo
if (physicsState != null) { if (physicsState != null) {
physicsState.getPhysicsSpace().removeAll(rootNode); physicsState.getPhysicsSpace().removeAll(rootNode);
getStateManager().detach(physicsState); getStateManager().detach(physicsState);
physicsState=null; physicsState = null;
} }
currentSceneRequest.setDisplayed(false); currentSceneRequest.setDisplayed(false);
} }
@ -569,21 +569,22 @@ public class SceneApplication extends Application implements LookupProvider, Loo
} }
}); });
} }
public void setPhysicsEnabled(final boolean enabled){ public void setPhysicsEnabled(final boolean enabled) {
enqueue(new Callable() { enqueue(new Callable() {
public Object call() throws Exception { public Object call() throws Exception {
if (enabled) { if (enabled) {
if(physicsState==null){ if (physicsState == null) {
physicsState = new BulletAppState(); physicsState = new BulletAppState();
getStateManager().attach(physicsState); getStateManager().attach(physicsState);
physicsState.getPhysicsSpace().addAll(rootNode); physicsState.getPhysicsSpace().addAll(rootNode);
} }
}else{ } else {
if(physicsState!=null){ if (physicsState != null) {
physicsState.getPhysicsSpace().removeAll(rootNode); physicsState.getPhysicsSpace().removeAll(rootNode);
getStateManager().detach(physicsState); getStateManager().detach(physicsState);
physicsState = null;
} }
} }
return null; return null;

Loading…
Cancel
Save