Exemplo n.º 1
0
                static void ClearTrackingAfterUnload(JobDriver __instance)
                {
                    Debug.WriteLine($"{RealTime.frameCount} {__instance.pawn} STARTED UNLOAD.");

                    __instance.AddFinishAction(
                        () => {
                        haulTrackers.Remove(__instance.pawn);
                        Debug.WriteLine($"{RealTime.frameCount} {__instance.pawn} FINISHED UNLOAD. Wiped tracking.");
                    });
                }
Exemplo n.º 2
0
 public static void KeepLyingDown(this JobDriver driver, TargetIndex bedIndex)
 {
     driver.AddFinishAction(delegate
     {
         Pawn pawn = driver.pawn;
         if (!pawn.Drafted)
         {
             pawn.jobs.jobQueue.EnqueueFirst(new Job(JobDefOf.LayDown, pawn.CurJob.GetTarget(bedIndex)));
         }
     });
 }
Exemplo n.º 3
0
 static void AddJooFinish(JobDriver __instance)
 {
     __instance.AddFinishAction(() => Hauling.pawnHaulToCell.Remove(__instance.pawn));
 }