1.5, added stuff, fixed stuff

- mod icon
- fixes for new vanilla clipping issues
- GenClosest optimization improving repairing, wardening, tending jobs
- caching for new ListerBuildings methods
- DynamicDrawManager single threading
- Type.GetFields caching
- StatParts analyzer category
- removed duplicate steam warning and optionally window
- added exception handling for debug menu, incidentworker, Graphic_Multi, InitializeComps, making all those now log what mod broke and not cause black screens or whatever
This commit is contained in:
bbradson
2024-04-27 22:31:07 +02:00
parent be3dae46bb
commit d34bc77869
76 changed files with 3061 additions and 1134 deletions
@@ -9,7 +9,11 @@ public sealed class Pawn_PsychicEntropyTrackerOptimization : ClassWithFishPatche
{
public sealed class Psylink_Patch : FirstPriorityFishPatch
{
public override string Description { get; } = "Caches/throttles the psylink method to only update every 32 ticks.";
public override List<Type> LinkedPatches { get; }
= [typeof(HediffSetCaching.DirtyCache)];
public override string Description { get; }
= "Caches/throttles the psylink method to only update on hediff changes or after 128 ticks";
public override MethodBase TargetMethodInfo { get; }
= AccessTools.PropertyGetter(typeof(Pawn_PsychicEntropyTracker),
@@ -22,7 +26,7 @@ public sealed class Pawn_PsychicEntropyTrackerOptimization : ClassWithFishPatche
if (__instance.psylinkCachedForTick <= TickHelper.TicksGame)
{
__instance.psylinkCached = __instance.pawn.GetMainPsylinkSource();
__instance.psylinkCachedForTick = TickHelper.TicksGame + 32;
__instance.psylinkCachedForTick = TickHelper.TicksGame + 128;
}
return __instance.psylinkCached;