public void Start() { heatModule = this.GetComponents <ModuleSystemHeat>().ToList().Find(x => x.moduleID == systemHeatModuleID); if (heatModule == null) { heatModule.GetComponent <ModuleSystemHeat>(); } if (engineModuleID != "") { engineModule = this.GetComponents <ModuleEngines>().ToList().Find(x => x.engineID == engineModuleID); } if (engineModule == null) { engineModule = this.GetComponent <ModuleEngines>(); } multiModule = this.GetComponent <MultiModeEngine>(); if (SystemHeatSettings.DebugModules) { Utils.Log("[ModuleSystemHeatEngine] Setup completed"); } }
public void Start() { animationStates = SetUpAnimation(animationName, this.part); Events["ToggleAnimationEditor"].guiActive = !isOneShot; if (HighLogic.LoadedSceneIsFlight) { engines = this.GetComponents <ModuleEngines>().ToList(); multiController = this.GetComponent <MultiModeEngine>(); if (multiController != null) { hasMultiEngine = true; } wantEngineOn = QueryEngineOn(); if (wantEngineOn) { deployed = true; } } if (deployed) { SetAnimation(1, 0); } else { SetAnimation(0, 0); } }
public override void OnStart(StartState state) { base.OnStart(state); multiModeEngine = this.part.FindModuleImplementing <MultiModeEngine>(); if (multiModeEngine != null) { multiModeEngine.Fields["mode"].guiActiveEditor = false; multiModeEngine.Fields["mode"].guiActive = false; multiModeEngine.Events["DisableAutoSwitch"].guiActive = false; multiModeEngine.Events["DisableAutoSwitch"].guiActiveEditor = false; multiModeEngine.Events["EnableAutoSwitch"].guiActive = false; multiModeEngine.Events["EnableAutoSwitch"].guiActiveEditor = false; multiModeEngine.Events["ModeEvent"].guiActive = false; multiModeEngine.Events["ModeEvent"].guiActiveEditor = false; } decoupler = this.part.FindModuleImplementing <ModuleDecouple>(); if (decoupler != null) { decoupler.isEnabled = false; decoupler.enabled = false; decoupler.stagingEnabled = false; } }
public void SetRunningPrimary(bool state) { try { if (mmeIndex > -1) { MultiModeEngine mme = part.Modules[mmeIndex] as MultiModeEngine; // There doesn't appear to be a simpler way to switch modes. // One this I could do is store the even index instead of looping // over it every time we change modes. if (mme.runningPrimary != state) { var ev = mme.Events["ModeEvent"]; if (ev != null) { ev.Invoke(); } } } } catch { // no-op } }
public void Start() { animationStates = SetUpAnimation(animationName, this.part); if (HighLogic.LoadedSceneIsFlight) { engines = this.GetComponents <ModuleEngines>().ToList(); engineIsOn = QueryEngineOn() || (isOneShot && deployed); multiController = this.GetComponent <MultiModeEngine>(); if (multiController != null) { hasMultiEngine = true; } } foreach (AnimationState anim in animationStates) { if (engineIsOn) { anim.normalizedTime = 1f; } else { anim.normalizedTime = 0f; } } }
protected void setupEngines() { //See if we have multiple engines that we need to support engineSwitcher = this.part.FindModuleImplementing <MultiModeEngine>(); if (engineSwitcher != null) { List <ModuleEnginesFX> engines = this.part.FindModulesImplementing <ModuleEnginesFX>(); foreach (ModuleEnginesFX multiEngine in engines) { multiModeEngines.Add(multiEngine.engineID, multiEngine); } if (engineSwitcher.runningPrimary) { engine = multiModeEngines[engineSwitcher.primaryEngineID]; } else { engine = multiModeEngines[engineSwitcher.secondaryEngineID]; } return; } //Normal case: we only have one engine to support engine = this.part.FindModuleImplementing <ModuleEnginesFX>(); }
public override void OnAwake() { engines.AddUniqueRange(part.FindModulesImplementing <ModuleEngines>().FindAll(x => x.minThrust > 0)); engines.AddUniqueRange(part.FindModulesImplementing <ModuleEnginesFX>().ConvertAll(x => x as ModuleEngines).FindAll(x => x.minThrust > 0)); // Only looking for engines with nonzero minthrusts, so e.g. only the secondary mode of the RAPIER. if (part.FindModuleImplementing <MultiModeEngine>() != null) { mmeng = part.FindModuleImplementing <MultiModeEngine>(); } if (engines.Count == 1) { engine = engines[0]; } else { if (mmeng != null) { engine = engines.Find(x => x.engineID.Equals(mmeng.primaryEngineID)); } else { engine = engines[0]; } } }
public void Start() { engineStates = SetUpAnimation(EngineAnimationName, this.part); if (HighLogic.LoadedSceneIsFlight || HighLogic.LoadedSceneIsEditor) { //engines = this.GetComponents<ModuleEnginesFX>().ToList(); multiController = this.GetComponent<MultiModeEngine>(); if (multiController != null) { foreach (AnimationState anim in engineStates) { anim.enabled = true; if (multiController.runningPrimary) { anim.normalizedTime = 0f; } else { anim.normalizedTime = 1f; } } } } }
public void Start() { engineStates = SetUpAnimation(EngineAnimationName, this.part); if (HighLogic.LoadedSceneIsFlight || HighLogic.LoadedSceneIsEditor) { //engines = this.GetComponents<ModuleEnginesFX>().ToList(); multiController = this.GetComponent <MultiModeEngine>(); if (multiController != null) { foreach (AnimationState anim in engineStates) { anim.enabled = true; if (multiController.runningPrimary) { anim.normalizedTime = 0f; } else { anim.normalizedTime = 1f; } } } } }
public override bool Initialize(PartModule pm) { base.Initialize(pm); engines = pm.GetComponents <ModuleEnginesFX>(); multiEngine = pm.GetComponent <MultiModeEngine>(); return(true); }
public void Start() { Events["ToggleAnimationEditor"].guiName = Localizer.Format("#autoLOC_502068"); engineStates = SetUpAnimation(EngineAnimationName, this.part); if (HighLogic.LoadedSceneIsFlight) { engines = this.GetComponents <ModuleEnginesFX>().ToList(); engineIsOn = QueryEngineOn(); multiController = this.GetComponent <MultiModeEngine>(); if (multiController != null) { hasMultiEngine = true; } } foreach (AnimationState anim in engineStates) { if (engineIsOn) { anim.normalizedTime = 1f; } else { anim.normalizedTime = 0f; } } }
public override void Start() { if (HighLogic.LoadedSceneIsEditor || HighLogic.LoadedSceneIsFlight) { engineOnStates = new List <bool>(); engines = new List <EngineBaseData>(); ModuleEnginesFX[] engineModules = this.GetComponents <ModuleEnginesFX>(); foreach (ModuleEnginesFX fx in engineModules) { engines.Add(new EngineBaseData(fx)); engineOnStates.Add(false); } multiEngine = this.GetComponent <MultiModeEngine>(); if (GeneratesElectricity) { } else { Fields["ReactorOutput"].guiActive = false; } } base.Start(); }
public EngineValue(global::Part part, MultiModeEngine engine, SharedObjects sharedObj) : base(part, sharedObj) { MMengine = engine; var moduleEngines = part.Modules.GetModules<ModuleEngines>(); if (moduleEngines.Count == 2) { var modEngine1 = moduleEngines.Where(e => e.engineID == MMengine.primaryEngineID).FirstOrDefault(); if (modEngine1 != null) engine1 = new ModuleEngineAdapter(modEngine1); else throw new KOSException("Attempted to build a MultiModeEngine with no engine matching Primary ID"); var modEngine2 = moduleEngines.Where(e => e.engineID == MMengine.secondaryEngineID).FirstOrDefault(); if (modEngine2 != null) engine2 = new ModuleEngineAdapter(modEngine2); else throw new KOSException("Attempted to build a MultiModeEngine with no engine matching Secondary ID"); } else { throw new KOSException(string.Format("Attempted to build a MultiModeEngine with {0} engine modules defined instead of 2", moduleEngines.Count)); } MultiMode = true; findGimbal(); EngineInitializeSuffixes(); }
public void HideGUI() { List <ModuleEnginesFXWBI> engineList = this.part.FindModulesImplementing <ModuleEnginesFXWBI>(); multiModeEngine = this.part.FindModuleImplementing <MultiModeEngine>(); multiModeEngine.autoSwitch = false; multiModeEngine.Events["DisableAutoSwitch"].guiActive = false; multiModeEngine.Events["DisableAutoSwitch"].guiActiveEditor = false; multiModeEngine.Events["EnableAutoSwitch"].guiActive = false; multiModeEngine.Events["EnableAutoSwitch"].guiActiveEditor = false; //Hide engine gui foreach (ModuleEnginesFXWBI engine in engineList) { if (engine.engineID == primaryEngineID) { primaryEngine = engine; } else { secondaryEngine = engine; } engine.onActiveDelegate = OnEngineActive; engine.Events["Activate"].guiActive = false; engine.Events["Shutdown"].guiActive = false; engine.Events["Activate"].guiActiveEditor = false; engine.Events["Shutdown"].guiActiveEditor = false; } }
public SMIengineWrapper(Part part) { engine = part.Modules.OfType <ModuleEngines>().FirstOrDefault(); if (engine != null) { type = EngineType.ModuleEngine; } else { engineFX = part.Modules.OfType <ModuleEnginesFX>().FirstOrDefault(); if (engineFX != null) { type = EngineType.ModuleEngineFX; } else //multimode { engineFX2 = part.Modules.OfType <MultiModeEngine>().FirstOrDefault(); //multimode if (engineFX != null) { type = EngineType.ModuleEngineFX; //multimode } else { smiengine = part.Modules.OfType <SMIengine>().FirstOrDefault(); if (smiengine != null) { type = EngineType.SMIengine; } } } Debug.Log("SMIengineWrapper: engine type is " + type.ToString()); } }
public void Init(IShipconstruct v, CelestialBody body) { FARHook.UpdateCurrentBody(body); int threads = Threading.ThreadPool.ThreadCount; simulators.Clear(); for (int i = 0; i < threads; i++) { simulators.Add(new InstantConditionSimulationWrapper()); //(InstantConditionSimulationWrapper.Borrow()); } List <Part> oParts = v.Parts; int count = oParts.Count; bool lgWarning = false; int stage = 0; for (int i = 0; i < count; i++) { if (!lgWarning) { ModuleWheels.ModuleWheelDeployment gear = oParts[i].FindModuleImplementing <ModuleWheels.ModuleWheelDeployment>(); bool forcedRetract = !oParts[i].ShieldedFromAirstream && gear != null && gear.Position > 0; if (forcedRetract) { lgWarning = true; } } totalMass += oParts[i].mass + oParts[i].GetResourceMass(); dryMass += oParts[i].mass; CoM += (oParts[i].mass + oParts[i].GetResourceMass()) * oParts[i].transform.TransformPoint(oParts[i].CoMOffset); CoM_dry += (oParts[i].mass) * oParts[i].transform.TransformPoint(oParts[i].CoMOffset); if (oParts[i].inverseStage > stage) { VesselCache.SimulatedEngine.Release(engines); engines.Clear(); stage = oParts[i].inverseStage; } if (oParts[i].inverseStage >= stage) { MultiModeEngine multiMode = oParts[i].FindModuleImplementing <MultiModeEngine>(); if (multiMode != null) { engines.Add(VesselCache.SimulatedEngine.Borrow(oParts[i].FindModulesImplementing <ModuleEngines>().Find(engine => engine.engineID == multiMode.mode), this)); } else { ModuleEngines engine = oParts[i].FindModulesImplementing <ModuleEngines>().FirstOrDefault(); if (engine != null) { engines.Add(VesselCache.SimulatedEngine.Borrow(engine, this)); } } } } }
/// <summary> /// Start up the module and initialize it /// </summary> /// <param name="state">The start state of the module</param> public override void OnStart(StartState state) { base.OnStart(state); //find the MultiModeEngine if available for (int i = 0; i < part.Modules.Count; i++) { if (part.Modules[i] is MultiModeEngine) { engineMode = (MultiModeEngine)part.Modules[i]; break; } } //find all the engines for (int i = 0; i < part.Modules.Count; i++) { if (part.Modules[i] is ModuleEngines || part.Modules[i] is ModuleEnginesFX) { if (engineMode == null) { primaryEngine = (ModuleEngines)part.Modules[i]; break; } else if (engineMode.primaryEngineID == ((ModuleEngines)part.Modules[i]).engineID) { primaryEngine = (ModuleEngines)part.Modules[i]; } else { secondaryEngine = (ModuleEngines)part.Modules[i]; } } } primaryEngine.Fields["thrustPercentage"].guiActive = false; primaryEngine.Fields["thrustPercentage"].guiActiveEditor = false; if (secondaryEngine != null) { secondaryEngine.Fields["thrustPercentage"].guiActive = false; secondaryEngine.Fields["thrustPercentage"].guiActiveEditor = false; } thrustTransform = part.FindModelTransform(thrustVectorTransformName.Trim()); heightTransform = part.FindModelTransform(heightTransformName.Trim()); heightLocalRotation = heightTransform.localRotation; updateHoverStatus(); LoadPIDProfiles(part.partInfo.partConfig); updateAndvancedControlVisibility(); lastPercentage = thrustLimiter; if ((!customPID)) { ResetProfile(); } }
Engine(ModuleEngines engine) { part = new Part(engine.part); engines = new List <ModuleEngines> (); engines.Add(engine); multiModeEngine = null; gimbal = part.InternalPart.Module <ModuleGimbal> (); }
public override void OnStart(StartState state) { base.OnStart(state); multiMode = FindMultiModeModule(); if (multiMode == null) { LogError("Cannot find MultiModeEngine"); } }
internal Engine(Part part) { this.part = part; engines = part.InternalPart.Modules.OfType <ModuleEngines> ().ToList(); multiModeEngine = part.InternalPart.Module <MultiModeEngine> (); gimbal = part.InternalPart.Module <ModuleGimbal> (); if (engines.Count == 0) { throw new ArgumentException("Part is not an engine"); } }
public bool GetRunningPrimary() { if (mmeIndex == -1) { return(true); } else { MultiModeEngine mme = part.Modules[mmeIndex] as MultiModeEngine; return(mme.runningPrimary); } }
public override void OnStart(PartModule.StartState state) { base.OnStart(state); if (HighLogic.LoadedSceneIsFlight) { multiModeEngine = this.part.FindModuleImplementing <MultiModeEngine>(); if (multiModeEngine == null) { currentEngine = this.part.FindModuleImplementing <ModuleEngines>(); } else //Find the primary and secondary engines { List <ModuleEngines> engineList = this.part.FindModulesImplementing <ModuleEngines>(); foreach (ModuleEngines engine in engineList) { if (engine.engineID == multiModeEngine.primaryEngineID) { primaryEngine = engine; } else if (engine.engineID == multiModeEngine.secondaryEngineID) { secondaryEngine = engine; } } //Now set the current engine SetCurrentEngine(); } //Set min/max thrust SetMinMaxThrust(); //Set hover state if (hoverActive) { ActivateHover(); } else { DeactivateHover(); } //Set gui visible state SetGUIVisible(guiVisible); //Get the transforms for the turbine blades getTurbineTransforms(); //Setup the intake for the current engine mode. SetupIntake(); } }
private static bool IsAfterBurnerEngine(MultiModeEngine engine) { if (engine == null) { return(false); } if (!engine) { return(false); } return(engine.primaryEngineID == "Dry" && engine.secondaryEngineID == "Wet"); }
protected override void Init() { module = GetComponent<MultiModeEngine> (); if (module == null) { throw new Exception ("Missing MultiModeEngine component."); } var engines = module.GetComponents<ModuleEngines> (); foreach (var eng in engines) { modes [eng.engineID] = eng; } GimbalRotation.addTo (gameObject); }
void Awake() { module = GetComponent <MultiModeEngine> (); if (module == null) { throw new Exception("Missing MultiModeEngine component."); } ModuleEnginesFX[] engines = module.GetComponents <ModuleEnginesFX> (); foreach (ModuleEnginesFX eng in engines) { modes [eng.engineID] = eng; } base.Awake(module); }
internal static Engine Normalise(MultiModeEngine engine) { var engines = Resources.FindObjectsOfTypeAll<ModuleEnginesFX>() .Where(e => e.engineID == engine.primaryEngineID || e.engineID == engine.secondaryEngineID); var builder = Engine.CreateEngineWithName(Part.FromGO(engine.gameObject).partInfo.title); return engines.Aggregate(builder, (current, engineMode) => current.WithMode(mode => { mode.Name = Regex.Replace(engineMode.engineID, "([a-z])([A-Z])", "$1 $2"); mode.SeaLevelISP = engineMode.atmosphereCurve.Evaluate(1.0f); mode.VacuumISP = engineMode.atmosphereCurve.Evaluate(0.0f); })); }
public override void TestStartUp() { base.TestStartUp(); primaryEngine = AddPartModule <ModuleEnginesFX>(); secondaryEngine = AddPartModule <ModuleEnginesFX>(); multiModeEngine = AddPartModule <MultiModeEngine>(); primaryEngine.engineID = "primary"; secondaryEngine.engineID = "secondary"; multiModeEngine.primaryEngineID = primaryEngine.engineID; multiModeEngine.secondaryEngineID = secondaryEngine.engineID; multiModeEngine.OnStart(PartModule.StartState.None); }
internal static Engine Normalise(MultiModeEngine engine) { var engines = Resources.FindObjectsOfTypeAll <ModuleEnginesFX>() .Where(e => e.engineID == engine.primaryEngineID || e.engineID == engine.secondaryEngineID); var builder = Engine.CreateEngineWithName(Part.FromGO(engine.gameObject).partInfo.title); return(engines.Aggregate(builder, (current, engineMode) => current.WithMode(mode => { mode.Name = Regex.Replace(engineMode.engineID, "([a-z])([A-Z])", "$1 $2"); mode.SeaLevelISP = engineMode.atmosphereCurve.Evaluate(1.0f); mode.VacuumISP = engineMode.atmosphereCurve.Evaluate(0.0f); }))); }
public override void Start() { if (HighLogic.LoadedSceneIsEditor || HighLogic.LoadedSceneIsFlight) { engineOnStates = new List <bool>(); engines = this.GetComponents <ModuleEnginesFX>().ToList(); foreach (ModuleEnginesFX fx in engines) { engineOnStates.Add(false); } multiEngine = this.GetComponent <MultiModeEngine>(); } base.Start(); }
protected override void Init() { module = GetComponent <MultiModeEngine> (); if (module == null) { throw new Exception("Missing MultiModeEngine component."); } var engines = module.GetComponents <ModuleEngines> (); foreach (var eng in engines) { modes [eng.engineID] = eng; } GimbalRotation.addTo(gameObject); }
void Start() { if (HighLogic.LoadedSceneIsEditor || HighLogic.LoadedSceneIsFlight) { engineStates = new Dictionary <ModuleEnginesFX, bool>(); ModuleEnginesFX[] engines = this.GetComponents <ModuleEnginesFX>(); foreach (ModuleEnginesFX fx in engines) { engineStates.Add(fx, fx.EngineIgnited); } multiEngine = this.GetComponent <MultiModeEngine>(); } SetupAnimations(); SetupRecharge(); }
public void Start() { animationStates = SetUpAnimation(animationName, this.part); multiController = this.GetComponent <MultiModeEngine>(); if (multiController != null) { if (multiController.runningPrimary) { SetAnimation(0, 0); } else { SetAnimation(1, 0); } } }
protected void setupGUI() { //Hide seat GUI seat = this.part.FindModuleImplementing <KerbalSeat>(); seat.Events["BoardSeat"].guiActive = false; seat.Events["BoardSeat"].guiActiveEditor = false; seat.Events["BoardSeat"].guiActiveUnfocused = false; //Hide probe command GUI wingCommander = this.part.FindModuleImplementing <ModuleCommand>(); wingCommander.Events["MakeReference"].guiActive = false; wingCommander.Events["MakeReference"].guiActiveUnfocused = false; wingCommander.Events["RenameVessel"].guiActive = false; //Hide decoupler GUI decoupler = this.part.FindModuleImplementing <ModuleDecouple>(); decoupler.Events["Decouple"].guiActive = false; decoupler.Events["Decouple"].guiActiveEditor = false; decoupler.Events["Decouple"].guiActiveUnfocused = false; //Hide MultiModeEngine toggle button multiModeEngine = this.part.FindModuleImplementing <MultiModeEngine>(); multiModeEngine.Events["ModeEvent"].guiActive = false; multiModeEngine.Events["ModeEvent"].guiActiveEditor = false; multiModeEngine.Events["ModeEvent"].guiActiveUnfocused = false; //Hide the Close Intake button. ModuleResourceIntake intake = this.part.FindModuleImplementing <ModuleResourceIntake>(); intake.Events["Deactivate"].guiActive = false; //Hide RCS GUI ModuleRCS rcs = this.part.FindModuleImplementing <ModuleRCS>(); rcs.Fields["realISP"].guiActive = false; rcs.Fields["rcsEnabled"].guiActive = false; //Hide hover engine gui hoverEngine = this.part.FindModuleImplementing <WBIMultiEngineHover>(); hoverEngine.SetGUIVisible(false); //Set fuel type resourceSwitcher = this.part.FindModuleImplementing <WBIResourceSwitcher>(); resourceSwitcher.Fields["shortName"].guiName = "Fuel Type"; }
public void Start() { heatModule = ModuleUtils.FindHeatModule(this.part, systemHeatModuleID); if (engineModuleID != "") { engineModule = this.GetComponents <ModuleEngines>().ToList().Find(x => x.engineID == engineModuleID); } if (engineModule == null) { engineModule = this.GetComponent <ModuleEngines>(); } multiModule = this.GetComponent <MultiModeEngine>(); Utils.Log("[ModuleSystemHeatEngine] Setup completed", LogType.Modules); }
public void Start() { animationStates = SetUpAnimation(animationName, this.part); if(HighLogic.LoadedSceneIsFlight) { engines = this.GetComponents<ModuleEngines>().ToList(); engineIsOn = QueryEngineOn() || (isOneShot && deployed); multiController = this.GetComponent<MultiModeEngine>(); if (multiController != null) hasMultiEngine = true; } foreach(AnimationState anim in animationStates) { if (engineIsOn) { anim.normalizedTime = 1f; } else { anim.normalizedTime = 0f; } } }
public override void OnStart(PartModule.StartState state) { base.OnStart(state); if (HighLogic.LoadedSceneIsFlight) { multiModeEngine = this.part.FindModuleImplementing<MultiModeEngine>(); if (multiModeEngine == null) { currentEngine = this.part.FindModuleImplementing<ModuleEngines>(); } else //Find the primary and secondary engines { List<ModuleEngines> engineList = this.part.FindModulesImplementing<ModuleEngines>(); foreach (ModuleEngines engine in engineList) { if (engine.engineID == multiModeEngine.primaryEngineID) primaryEngine = engine; else if (engine.engineID == multiModeEngine.secondaryEngineID) secondaryEngine = engine; } //Now set the current engine SetCurrentEngine(); } //Set min/max thrust SetMinMaxThrust(); //Set hover state if (hoverActive) ActivateHover(); else DeactivateHover(); //Set gui visible state SetGUIVisible(guiVisible); //Get the transforms for the turbine blades getTurbineTransforms(); //Setup the intake for the current engine mode. SetupIntake(); } }
// Finds multiengine and ModuleEnginesFX private void LoadEngineModules() { engines = new List<ModuleEnginesFX>(); PartModuleList modules = part.Modules; foreach (PartModule mod in part.Modules) { if (mod.moduleName == "ModuleEnginesFX") { engines.Add((ModuleEnginesFX)mod); //Utils.Log("VariableIspEngine: " + ((ModuleEnginesFX)mod).runningEffectName); } if (mod.moduleName == "MultiModeEngine") multiEngine = mod.GetComponent<MultiModeEngine>(); } }
protected void setupGUI() { //Hide seat GUI seat = this.part.FindModuleImplementing<KerbalSeat>(); seat.Events["BoardSeat"].guiActive = false; seat.Events["BoardSeat"].guiActiveEditor = false; seat.Events["BoardSeat"].guiActiveUnfocused = false; //Hide probe command GUI wingCommander = this.part.FindModuleImplementing<ModuleCommand>(); wingCommander.Events["MakeReference"].guiActive = false; wingCommander.Events["MakeReference"].guiActiveUnfocused = false; wingCommander.Events["RenameVessel"].guiActive = false; //Hide decoupler GUI decoupler = this.part.FindModuleImplementing<ModuleDecouple>(); decoupler.Events["Decouple"].guiActive = false; decoupler.Events["Decouple"].guiActiveEditor = false; decoupler.Events["Decouple"].guiActiveUnfocused = false; //Hide MultiModeEngine toggle button multiModeEngine = this.part.FindModuleImplementing<MultiModeEngine>(); multiModeEngine.Events["ModeEvent"].guiActive = false; multiModeEngine.Events["ModeEvent"].guiActiveEditor = false; multiModeEngine.Events["ModeEvent"].guiActiveUnfocused = false; //Hide the Close Intake button. ModuleResourceIntake intake = this.part.FindModuleImplementing<ModuleResourceIntake>(); intake.Events["Deactivate"].guiActive = false; //Hide RCS GUI ModuleRCS rcs = this.part.FindModuleImplementing<ModuleRCS>(); rcs.Fields["realISP"].guiActive = false; rcs.Events["Disable"].guiActive = false; //Hide hover engine gui hoverEngine = this.part.FindModuleImplementing<WBIMultiEngineHover>(); hoverEngine.SetGUIVisible(false); //Set fuel type resourceSwitcher = this.part.FindModuleImplementing<WBIResourceSwitcher>(); resourceSwitcher.Fields["shortName"].guiName = "Fuel Type"; }
public void Start() { engineSwitch = part.GetComponent<MultiModeEngine>(); }