public static void IsAllowed_Postfix(ThingFilter __instance, ref bool __result, Thing t) { if (!__result) { return; } MyWorldComponent world = Find.World.GetComponent <MyWorldComponent>(); CompRottable rot = t.TryGetComp <CompRottable>(); if (rot != null && world.ShowSpoilTime(__instance)) { IntRange spoilTickRange = SpoilTimeCalc.convertToTicks(world.getSpoilTime(__instance)); int spoilTicks = rot.TicksUntilRotAtTemp(25.0f); if (spoilTickRange.min == -1 || spoilTicks < spoilTickRange.min) { __result = false; } else if (spoilTickRange.max != -1 && spoilTicks > spoilTickRange.max) { __result = false; } } }
public static int TicksUntilRotAtSetTemp(CompRottable instance, float temp) { temp = (float)Mathf.RoundToInt(temp); return(instance.TicksUntilRotAtTemp(temp)); }