Flamed out engines are no longer counted as active engines.
Flamed out engines are no longer counted as active engines.

--- a/KerbalEngineer/VesselSimulator/EngineSim.cs
+++ b/KerbalEngineer/VesselSimulator/EngineSim.cs
@@ -39,6 +39,7 @@
         public PartSim partSim;
         public List<AppliedForce> appliedForces = new List<AppliedForce>();
         public float maxMach;
+        public bool isFlamedOut;
 
         public double thrust = 0;
 
@@ -65,6 +66,7 @@
             engineSim.appliedForces.Clear();
             engineSim.thrust = 0;
             engineSim.maxMach = 0f;
+            engineSim.isFlamedOut = false;
         }
 
         public void Release()
@@ -98,6 +100,7 @@
             List<Propellant> propellants = engineMod.propellants;
             bool active = engineMod.isOperational;
             float resultingThrust = engineMod.resultingThrust;
+            bool isFlamedOut = engineMod.flameout;
 			
 			EngineSim engineSim = pool.Borrow();
 
@@ -107,6 +110,7 @@
             engineSim.partSim = theEngine;
             engineSim.isActive = active;
             engineSim.thrustVec = vecThrust;
+            engineSim.isFlamedOut = isFlamedOut;
             engineSim.resourceConsumptions.Reset();
             engineSim.resourceFlowModes.Reset();
             engineSim.appliedForces.Clear();

--- a/KerbalEngineer/VesselSimulator/Simulation.cs
+++ b/KerbalEngineer/VesselSimulator/Simulation.cs
@@ -30,7 +30,6 @@
 
 namespace KerbalEngineer.VesselSimulator
 {
-    using System.ComponentModel;
     using CompoundParts;
     using Extensions;
     using Helpers;
@@ -792,7 +791,7 @@
             for (int i = 0; i < allEngines.Count; ++i)
             {
                 EngineSim engine = allEngines[i];
-                if (engine.isActive)
+                if (engine.isActive && engine.isFlamedOut == false)
                 {
                     this.activeEngines.Add(engine);
                 }