public PawnRendererScaled(Pawn pawn, PawnDownedWiggler oldWiggler) { this.pawn = pawn; this.wiggler = oldWiggler; this.statusOverlays = new PawnHeadOverlays(pawn); this.woundOverlays = new PawnWoundDrawer(pawn); this.graphics = new PawnGraphicSet(pawn); }
private static void Prefix(Pawn ___pawn, PawnDownedWiggler __instance) { var pawn = ___pawn; if (!pawn.Downed || !pawn.Spawned) { return; } if (pawn.IsCaptiveOf(null)) { __instance.ticksToIncapIcon = 200; } }
// Verse.PawnDownedWiggler public static bool WigglerTick_PreFix(PawnDownedWiggler __instance) { Pawn pawn = Traverse.Create(__instance).Field("pawn").GetValue <Pawn>(); if (pawn != null) { CompVehicle compPilotable = pawn.GetComp <CompVehicle>(); if (compPilotable != null) { if (!compPilotable.Props.canWiggleWhenDowned) { return(false); } } } return(true); }