Ejemplo n.º 1
0
        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();
        }
Ejemplo n.º 2
0
 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();
 }