private static bool IsInStasis(Thing pawn) { var holder = pawn.ParentHolder; return(holder != null && ThingOwnerUtility.ContentsSuspended(holder)); }
public static void Patch_Pawn_Tick(Pawn __instance) { if (__instance.equipment != null && (__instance.ParentHolder != null && !ThingOwnerUtility.ContentsSuspended(__instance.ParentHolder))) { //Tick shield. ThingWithComps shield = __instance.GetShield(); if (shield == null) { return; } CompShield shieldComp = shield.GetComp <CompShield>(); shield.Tick(); } }
public static bool Suspended(Thing thing) { if (thing.ATCompSurrogateOwner != null && thing.ATCompSurrogateOwner.skyCloudHost != null) { return(true); } if (thing.Spawned) { return(false); } if (thing.ParentHolder != null) { return(ThingOwnerUtility.ContentsSuspended(thing.ParentHolder)); } return(false); }
public void CustomTick() { if (!ThingOwnerUtility.ContentsSuspended(ParentHolder) && Map != null) { if (Spawned) { pather?.PatherTick(); jobs?.JobTrackerTick(); stances?.StanceTrackerTick(); verbTracker?.VerbsTick(); natives?.NativeVerbsTick(); Drawer?.DrawTrackerTick(); rotationTracker?.RotationTrackerTick(); health?.HealthTick(); } } if (state == ZombieState.Emerging) { HandleRubble(); } }