void addForcesSelection() { /* add force MonoBehaviours to parts grabbed by the cursor */ Profiler.BeginSample("[RCSBA] RCSBuildAid addForcesSelection"); if (EditorLogic.SelectedPart == null) { Profiler.EndSample(); return; } const bool onlyConnected = false; var list = EditorUtils.GetSelectedModulesOf <ModuleRCS>(onlyConnected); foreach (var pm in list) { ModuleForces.Add <RCSForce>(pm); } var moduleEngineList = EditorUtils.GetSelectedModulesOf <ModuleEngines>(onlyConnected); var multiModeEngineList = EditorUtils.GetSelectedModulesOf <MultiModeEngine>(onlyConnected); list = sortEngineList(moduleEngineList, multiModeEngineList); foreach (var pm in list) { if (pm is MultiModeEngine) { ModuleForces.Add <MultiModeEngineForce>(pm); } else if (pm is ModuleEngines) { ModuleForces.Add <EngineForce>(pm); } } Profiler.EndSample(); }
void addForces() { /* add force MonoBehaviours to parts in vessel */ Profiler.BeginSample("[RCSBA] RCSBuildAid addForces"); foreach (var mod in rcsList) { ModuleForces.Add <RCSForce> (mod); } foreach (var mod in engineList) { if (mod is ModuleEngines) { ModuleForces.Add <EngineForce>(mod); } else if (mod is MultiModeEngine) { ModuleForces.Add <MultiModeEngineForce> (mod); } } Profiler.EndSample(); }