Esempio n. 1
0
 public override void OnStartFinished(StartState state)
 {
     engineModule = part.GetComponents <ModuleEnginesFX>().Where(x => x.engineID == engineID).FirstOrDefault();
     if (engineModule == null)
     {
         engineModule = part.GetComponents <ModuleEnginesFX>().FirstOrDefault();
         ROLLog.error($"ROLDeployableEngine.OnStartFinished(): Could not locate engine by ID: {engineID} on part {part}.  This will cause errors during gameplay.  Trying default: {engineModule}");
     }
     SetupEngineModuleGui();
 }
 public void UpdateHeatshieldValues()
 {
     ROLLog.debug("UpdateHeatshieldValues()");
     ROLLog.debug($"HeatShieldAblator: {HeatShieldAblator}");
     ROLLog.debug($"heatShieldDensity: {heatShieldDensity}");
     ROLLog.debug($"HeatShieldMass: {HeatShieldMass}");
     part.Resources["Ablator"].maxAmount        = part.Resources["Ablator"].amount = HeatShieldAblator;
     part.Resources["CharredAblator"].maxAmount = HeatShieldAblator;
     part.Resources["CharredAblator"].amount    = 0;
     hsMass = HeatShieldMass;
 }
Esempio n. 3
0
        /// <summary>
        /// Updates all dimensions for the PAW and tooling.
        /// </summary>
        private void updateDimensions()
        {
            float noseMaxDiam, mountMaxDiam = 0.0f;

            noseMaxDiam = Math.Max(noseModule.moduleLowerDiameter, noseModule.moduleUpperDiameter);
            ROLLog.debug("currentMount: " + currentMount);
            if (currentMount.Contains("Mount"))
            {
                ROLLog.debug("currentMount: " + currentMount);
                mountMaxDiam = mountModule.moduleUpperDiameter;
            }
            else
            {
                mountMaxDiam = Math.Max(mountModule.moduleLowerDiameter, mountModule.moduleUpperDiameter);
            }

            totalTankLength = getTotalHeight();
            ROLLog.debug("The Total Tank Length is: " + totalTankLength);
            largestDiameter = Math.Max(currentDiameter, Math.Max(noseMaxDiam, mountMaxDiam));
        }
 public override void OnStartFinished(StartState state)
 {
     base.OnStartFinished(state);
     modAblator  = part.FindModuleImplementing <ModuleAblator>();
     modularPart = part.FindModuleImplementing <ModuleROTank>();
     if (!(modAblator is ModuleAblator && modularPart is ModuleROTank))
     {
         ROLLog.error($"{part} Unable to find ModuleAblator or ModuleROTank modules");
         isEnabled = enabled = false;
         return;
     }
     else
     {
         if (modularPart is ModuleROTank)
         {
             modularPart.Fields[nameof(modularPart.currentDiameter)].uiControlEditor.onFieldChanged += OnDiameterChange;
         }
         UpdateHeatshieldValues();
     }
 }