public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (density > 0)
         return mass - defaultMass;
     else
         return 0.0f;
 }
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     ProfileShape ps = getProfileType();
     if (ps == null)
         return 0f;
     return defaultCost * ps.costFactor;
 }
Ejemplo n.º 3
0
        public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
        {
            if(HighLogic.LoadedSceneIsEditor)
                return totalCrew * PhysicsGlobals.KerbalCrewMass;

            return 0f;
        }
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return massDelta;
 }
 public Vector3 GetModuleSize(Vector3 defaultSize, ModifierStagingSituation sit)
 {
     return Vector3.zero;
 }
Ejemplo n.º 6
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit) => density > 0 ? mass - defaultMass : 0;
Ejemplo n.º 7
0
        //implement IPartCostModifier component
        public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
        {
            // the 'sit' arg is irrelevant to us, but the interface requires it.

            return baseModuleCost + additionalCost;
        }
Ejemplo n.º 8
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit) => CurrentProceduralAvionicsTechNode.avionicsDensity > 0 ? GetAvionicsCost() : 0;
Ejemplo n.º 9
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return standAlonePart ? -defaultMass + modifiedMass : modifiedMass;
 }
Ejemplo n.º 10
0
 public virtual float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (StaticWingGlobals.FARactive)
         return 0;
     return (float)wingMass - defaultMass;
 }
Ejemplo n.º 11
0
        public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
        {
            float scaleMod = (defaultMass * currentScale * currentScale) - defaultMass;

            return(modifiedMass + scaleMod);
        }
Ejemplo n.º 12
0
        public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
        {
            float scaleMod = (defaultCost * currentScale * currentScale) - defaultCost;

            return(modifiedCost + scaleMod);
        }
Ejemplo n.º 13
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit) => avionicsDensity > 0 ? GetAvionicsCost() : 0;
Ejemplo n.º 14
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit) => avionicsDensity > 0 ? GetShieldedAvionicsMass() : 0;
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit) => Contents.Sum(p => p.mass);
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit) => Contents.Sum(p => p.partInfo.cost);
Ejemplo n.º 17
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return(design == null || design.broken ? 0 : design.mass - defaultMass);
 }
Ejemplo n.º 18
0
 /// <summary>
 /// Return the adjusted cost for the part based on current tank setup
 /// </summary>
 /// <param name="defaultCost"></param>
 /// <returns></returns>
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     if (currentTankCost < 0) { return 0; }
     return subtractCost ? -defaultCost + currentTankCost : currentTankCost;
 }
Ejemplo n.º 19
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return(-defaultMass + modifiedMass);
 }
 float IPartMassModifier.GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return currentState ? massOfBeingEnabled : 0;
 }
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return -defaultMass + modifiedMass;
 }
 //IModuleCostModifier Override
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     if (!adjustCost) { return 0; }
     if (currentEngineLayout != null && currentMountData != null)
     {
         modifiedCost = defaultCost * (float)currentEngineLayout.getLayoutData().positions.Count;
         modifiedCost += currentMountData.getModuleCost();
     }
     else { return 0f; }
     return -defaultCost + modifiedCost;
 }
Ejemplo n.º 23
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return(-defaultCost + modifiedCost);
 }
Ejemplo n.º 24
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit) => CurrentProceduralAvionicsTechNode.avionicsDensity > 0 ? GetShieldedAvionicsMass() : 0;
Ejemplo n.º 25
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (assemblyFARUsed)
         return 0;
     return aeroUIMass - defaultMass;
 }
Ejemplo n.º 26
0
 // mass change support
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return(deployed ? added_mass : 0.0f);
 }
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (sm != null) {
     return (float) sm.ResourceMass;
     }
     return 0;
 }
Ejemplo n.º 28
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation mss)
 {
     return(defaultCost + baseCost * getNumSeats());
 }
Ejemplo n.º 29
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return inflated? 0 : -inflationCost;
 }
Ejemplo n.º 30
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return((float)craft_mass);
 }
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (FARactive)
         return 0;
     return (float)wingMass - defaultMass;
 }
        public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
        {
            var moduleMassDelta = fixedMass ? initialMass : targetMass - initialMass;

            return((float)moduleMassDelta);
        }
Ejemplo n.º 33
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     double cst = 0;
     if (baseCostPV >= 0) {
         cst = volume * baseCostPV;
         if (PartResourceLibrary.Instance != null && tankList != null) {
             for (int i = 0; i < tankList.Count; i++) {
                 FuelTank t = tankList[i];
                 if (t.resource != null) {
                     PartResourceDefinition d = PartResourceLibrary.Instance.GetDefinition (t.resource.resourceName);
                     if (d != null) {
                         cst += t.maxAmount * (d.unitCost + t.cost / t.utilization);
                     }
                 }
             }
         }
     }
     return (float)cst;
 }
Ejemplo n.º 34
0
 // module cost support
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return(quality ? (float)extra_cost * part.partInfo.cost : 0.0f);
 }
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return (float) craft_mass;
 }
Ejemplo n.º 36
0
 // module mass support
 public float GetModuleMass(float defaultCost, ModifierStagingSituation sit)
 {
     return(quality ? (float)extra_mass * part.partInfo.partPrefab.mass : 0.0f);
 }
Ejemplo n.º 37
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (currentTankMass < 0) { return 0; }
     return subtractMass ? -defaultMass + currentTankMass : currentTankMass;
 }
Ejemplo n.º 38
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return(0);
     //return defaultCost;
 }
Ejemplo n.º 39
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return FuelGetAddedCost() + updateCost() - defaultCost;
 }
Ejemplo n.º 40
0
        //public float GetModuleCost(float stdCost)
        //{
        //    return thrust * 0.5f * costMultiplier;
        //}

        #region IPartCostModifier implementation

        public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
        {
            return(thrust * 0.5f * costMultiplier);
        }
Ejemplo n.º 41
0
 public virtual Vector3 GetModuleSize(Vector3 defaultSize, ModifierStagingSituation sit)
 {
     // todo : implement size interface...
     return Vector3.zero;
 }
Ejemplo n.º 42
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit) => shieldingCost;
Ejemplo n.º 43
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return standAlonePart ? -defaultCost + modifiedCost : modifiedCost;
 }
Ejemplo n.º 44
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return(updateCost());
 }
Ejemplo n.º 45
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     if (modifiedCost == 0) { return 0; }
     return -defaultCost + modifiedCost;
 }
Ejemplo n.º 46
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return(subtractCost ? -defaultCost + moduleCost : moduleCost);
 }
 float IPartCostModifier.GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return currentState ? costOfBeingEnabled : 0;
 }
Ejemplo n.º 48
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return(subtractMass ? -defaultMass + moduleMass : moduleMass);
 }
Ejemplo n.º 49
0
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     /*if (!useStockFuel)
         return aeroUICost;
     else
         return FuelGetAddedCost () + aeroUICost;*/
     return FuelGetAddedCost() + aeroUICost - defaultCost;
 }
Ejemplo n.º 50
0
        public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
        {
            float scale = currentDiameter / modelDiameter;

            return(-defaultCost + defaultCost * Mathf.Pow(scale, 3f));
        }
        public float GetModuleCost(float stdCost, ModifierStagingSituation sit)
        {
            if (HighLogic.LoadedScene == GameScenes.EDITOR)
            {
                //Debug.Log("stdCost: " + stdCost);
                float cost = baseCost;
                if ((object)shape != null)
                    cost += shape.GetCurrentCostMult() * shape.Volume * costPerkL;
                //Debug.Log(cost);
                foreach (PartModule pm in part.Modules)
                {
                    if(pm is ICostMultiplier)
                    {
                       cost *= (pm as ICostMultiplier).GetCurrentCostMult();
                    }
                }
                float dryCost=0;
                float actualCost=0;

                if (!part.Modules.Contains("ModuleFuelTanks") && (object)PartResourceLibrary.Instance != null)
                {
                    if (!costsIncludeResources)
                    {
                        dryCost = cost;
                        actualCost = cost;
                        foreach (PartResource r in part.Resources)
                        {
                            PartResourceDefinition d = PartResourceLibrary.Instance.GetDefinition(r.resourceName);
                            if ((object)d != null)
                            {
                                cost += (float)(r.maxAmount * d.unitCost);
                                actualCost += (float)(r.amount * d.unitCost);
                            }
                        }
                    }
                    else
                    {
                        float minimumCosts = 0;

                        foreach (PartResource r in part.Resources)
                        {
                            PartResourceDefinition d = PartResourceLibrary.Instance.GetDefinition(r.resourceName);
                            if ((object)d != null)
                            {
                                minimumCosts += (float)(r.maxAmount * d.unitCost);
                            }
                        }
                        cost = Mathf.Max(minimumCosts, cost);
                        dryCost = cost;
                        actualCost = cost;

                        foreach (PartResource r in part.Resources)
                        {
                            PartResourceDefinition d = PartResourceLibrary.Instance.GetDefinition(r.resourceName);
                            if ((object)d != null)
                            {
                                dryCost -= (float)(r.maxAmount * d.unitCost);
                                actualCost -= (float)((r.maxAmount - r.amount) * d.unitCost);
                            }
                        }
                    }
                }
                moduleCost = cost;

                costDisplay = String.Format("Dry: {0:N0} Wet: {1:N0}", dryCost, actualCost);
            }
            return moduleCost;
        }
Ejemplo n.º 52
0
        //implement IPartCostModifier component
        public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
        {
            // the 'sit' arg is irrelevant to us, but the interface requires it.

            return(baseModuleCost + additionalCost);
        }
 //IModuleMassModifier Override
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     if (!adjustMass) { return 0; }
     if (modifiedMass < 0) { return 0; }
     return -defaultMass + modifiedMass;
 }
Ejemplo n.º 54
0
        //implement IPartMassModifier component
        public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
        {
            // the 'sit' arg is irrelevant to us, but the interface requires it.

            return(baseModuleMass + additionalMass);
        }
Ejemplo n.º 55
0
        //implement IPartMassModifier component
        public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
        {
            // the 'sit' arg is irrelevant to us, but the interface requires it.

            return part.mass - defaultMass; //copied this fix from ProceduralParts mod as we already changed part.mass
            //return additionalMass;
        }
 //Gives the cost for this parachute
 public float GetModuleCost(float defaultCost, ModifierStagingSituation sit)
 {
     return((float)Math.Round(this.DeployedArea * areaCost));
 }
Ejemplo n.º 57
0
        //implement IPartMassModifier component
        public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
        {
            // the 'sit' arg is irrelevant to us, but the interface requires it.

            return baseModuleMass + additionalMass;
        }
 //For IPartMassModifier
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return(this.massDelta);
 }
Ejemplo n.º 59
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return inflated? 0 : -inflationMass;
 }
Ejemplo n.º 60
0
 public float GetModuleMass(float defaultMass, ModifierStagingSituation sit)
 {
     return(standAlonePart ? -defaultMass + modifiedMass : modifiedMass);
 }