private void AttempToIgniteEngine() { if (initialIgnitions < 0) { return; } if (remainingIgnitions > 0) { remainingIgnitions--; } else { var message = Localizer.Format("#LOC_KSPIE_FNSimpleEngineIgnatorFX_PostMsg5");//"Failed to ignite engine, no remaining ignitors!" Debug.Log("[KSPI]: " + message); ScreenMessages.PostScreenMessage(message, 10f, ScreenMessageStyle.UPPER_CENTER); _engineFX.part.Effects.Event(_engineFX.flameoutEffectName, _engineFX.transform.hierarchyCount); _engineFX.SetRunningGroupsActive(false); foreach (BaseEvent baseEvent in _engineFX.Events) { if (baseEvent.name.IndexOf("shutdown", StringComparison.CurrentCultureIgnoreCase) >= 0) { baseEvent.Invoke(); } } _engineFX.SetRunningGroupsActive(false); _engineFX.maxFuelFlow = 1e-10f; } }