diff --git a/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java b/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java index f952404ae..82cccd9ed 100644 --- a/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java +++ b/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java @@ -466,7 +466,7 @@ public class BasicEventSimulationEngine implements SimulationEngine { // Check whether any motor in the active stages is active anymore for (MotorClusterState state : currentStatus.getActiveMotors() ) { - if ( state.isSpent() ) { + if (state.isDelaying() || state.isSpent()) { continue; } currentStatus.getWarnings().add(Warning.RECOVERY_DEPLOYMENT_WHILE_BURNING); diff --git a/core/src/net/sf/openrocket/simulation/MotorClusterState.java b/core/src/net/sf/openrocket/simulation/MotorClusterState.java index 39a97d746..ecf48f94d 100644 --- a/core/src/net/sf/openrocket/simulation/MotorClusterState.java +++ b/core/src/net/sf/openrocket/simulation/MotorClusterState.java @@ -162,6 +162,10 @@ public class MotorClusterState { return ! isPlugged(); } + public boolean isDelaying() { + return currentState == ThrustState.DELAYING; + } + public boolean isSpent(){ return currentState == ThrustState.SPENT; } @@ -196,4 +200,4 @@ public class MotorClusterState { -} \ No newline at end of file +} diff --git a/core/src/net/sf/openrocket/simulation/SimulationStatus.java b/core/src/net/sf/openrocket/simulation/SimulationStatus.java index a3aeaf510..3b1b4c32f 100644 --- a/core/src/net/sf/openrocket/simulation/SimulationStatus.java +++ b/core/src/net/sf/openrocket/simulation/SimulationStatus.java @@ -229,7 +229,7 @@ public class SimulationStatus implements Monitorable { public Collection getActiveMotors() { List activeList = new ArrayList(); for( MotorClusterState state: this.motorStateList ){ - if(( ! state.isSpent()) && (this.configuration.isComponentActive( state.getMount()))){ + if (this.configuration.isComponentActive( state.getMount())) { activeList.add( state ); } }