Ejemplo n.º 1
0
 public override string GetExplanationUnfinalized(StatRequest req, ToStringNumberSense numberSense)
 {
     if (req.HasThing && req.Thing is Pawn)
     {
         Pawn          pawn          = (Pawn)req.Thing;
         StringBuilder stringBuilder = new StringBuilder(base.GetExplanationUnfinalized(req, numberSense));
         PriceUtility.PawnQualityPriceFactor(pawn, stringBuilder);
         PriceUtility.PawnQualityPriceOffset(pawn, stringBuilder);
         return(stringBuilder.ToString());
     }
     if (req.StatBases.StatListContains(StatDefOf.MarketValue))
     {
         return(base.GetExplanationUnfinalized(req, numberSense));
     }
     return("StatsReport_MarketValueFromStuffsAndWork".TranslateSimple().TrimEnd('.') + ": " + CalculatedBaseMarketValue(req.BuildableDef, req.StuffDef).ToStringByStyle(stat.ToStringStyleUnfinalized, numberSense));
 }
Ejemplo n.º 2
0
        public override float GetValueUnfinalized(StatRequest req, bool applyPostProcess = true)
        {
            float result;

            if (req.HasThing && req.Thing is Pawn)
            {
                result = base.GetValueUnfinalized(StatRequest.For(req.Def, req.StuffDef, QualityCategory.Normal), applyPostProcess) * PriceUtility.PawnQualityPriceFactor((Pawn)req.Thing);
            }
            else if (req.Def.statBases.StatListContains(StatDefOf.MarketValue))
            {
                result = base.GetValueUnfinalized(req, true);
            }
            else
            {
                result = StatWorker_MarketValue.CalculatedMarketValue(req.Def, req.StuffDef);
            }
            return(result);
        }
Ejemplo n.º 3
0
        public override string GetExplanationUnfinalized(StatRequest req, ToStringNumberSense numberSense)
        {
            string result;

            if (req.HasThing && req.Thing is Pawn)
            {
                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.Append(base.GetExplanationUnfinalized(req, numberSense));
                stringBuilder.AppendLine();
                stringBuilder.AppendLine();
                Pawn pawn = req.Thing as Pawn;
                stringBuilder.Append("StatsReport_CharacterQuality".Translate() + ": x" + PriceUtility.PawnQualityPriceFactor(pawn).ToStringPercent());
                result = stringBuilder.ToString();
            }
            else if (req.Def.statBases.StatListContains(StatDefOf.MarketValue))
            {
                result = base.GetExplanationUnfinalized(req, numberSense);
            }
            else
            {
                StringBuilder stringBuilder2 = new StringBuilder();
                stringBuilder2.AppendLine("StatsReport_MarketValueFromStuffsAndWork".Translate());
                result = stringBuilder2.ToString();
            }
            return(result);
        }
Ejemplo n.º 4
0
        public override float GetValueUnfinalized(StatRequest req, bool applyPostProcess = true)
        {
            if (req.HasThing && req.Thing is Pawn)
            {
                return(base.GetValueUnfinalized(StatRequest.For(req.Def, req.StuffDef, QualityCategory.Normal), applyPostProcess) * PriceUtility.PawnQualityPriceFactor((Pawn)req.Thing));
            }
            if (req.Def.statBases.StatListContains(StatDefOf.MarketValue))
            {
                return(base.GetValueUnfinalized(req, true));
            }
            float num = 0f;

            if (req.Def.costList != null)
            {
                for (int i = 0; i < req.Def.costList.Count; i++)
                {
                    num += (float)req.Def.costList[i].count * req.Def.costList[i].thingDef.BaseMarketValue;
                }
            }
            if (req.Def.costStuffCount > 0)
            {
                num = (float)((req.StuffDef == null) ? (num + (float)req.Def.costStuffCount * 2.0) : (num + (float)req.Def.costStuffCount / req.StuffDef.VolumePerUnit * req.StuffDef.GetStatValueAbstract(StatDefOf.MarketValue, null)));
            }
            float num2 = Mathf.Max(req.Def.GetStatValueAbstract(StatDefOf.WorkToMake, req.StuffDef), req.Def.GetStatValueAbstract(StatDefOf.WorkToBuild, req.StuffDef));

            return((float)(num + num2 * 0.003599999938160181));
        }
Ejemplo n.º 5
0
 public override float GetValueUnfinalized(StatRequest req, bool applyPostProcess = true)
 {
     if (req.HasThing && req.Thing is Pawn)
     {
         return(base.GetValueUnfinalized(StatRequest.For(req.BuildableDef, req.StuffDef), applyPostProcess) * PriceUtility.PawnQualityPriceFactor((Pawn)req.Thing) + PriceUtility.PawnQualityPriceOffset((Pawn)req.Thing));
     }
     if (req.StatBases.StatListContains(StatDefOf.MarketValue))
     {
         return(base.GetValueUnfinalized(req));
     }
     return(CalculatedBaseMarketValue(req.BuildableDef, req.StuffDef));
 }