예제 #1
0
 public override float GetValueUnfinalized(StatRequest req, bool applyPostProcess = true)
 {
     if (req.Thing == null)
     {
         Log.Error("Getting " + this.GetType().FullName + " for " + req.Def.defName + " without concrete thing. This always returns 1. This is a bug. Contact the dev.");
         return(1);
     }
     return(SOS2HS_SOS2_Heatsink.GetMaxHeatOutputPerSecond(req, applyPostProcess));
 }
예제 #2
0
        public override string GetExplanationUnfinalized(StatRequest req, ToStringNumberSense numberSense)
        {
            var   heatPushed          = SOS2HS_SOS2_Heatsink.GetMaxHeatPushed();
            var   heatPushTick        = SOS2HS_SOS2_Heatsink.GetHeatVentTick(req);
            float surface             = SOS2HS_SOS2_Heatsink.GetRoomSurface(req.Thing);
            float heatPushedPerSecond = heatPushed / heatPushTick * 60;
            float heatOutputPerSecond = heatPushedPerSecond / surface;

            SEB seb = new SEB("StatsReport_SOS2HS");

            seb.Simple("MaxHeatPushed", heatPushed);
            seb.Simple("HeatPushTickInterval", heatPushTick);
            seb.Simple("RoomSurface", surface);
            seb.Full("HeatPushedPerSecond", heatPushedPerSecond, heatPushed, heatPushTick);
            seb.Full("HeatOutputPerSecond", heatOutputPerSecond, heatPushedPerSecond, surface);

            return(seb.ToString());
        }