public static void Postfix(Pawn_HealthTracker __instance)
        {
            var traverse = Traverse.Create(__instance);
            var pp       = traverse.Field("pawn").GetValue <Pawn>();

            if (!pp.IsWarframe())
            {
                return;
            }

            if (!pp.Spawned)
            {
                return;
            }

            if (!WarframeStaticMethods.PawnInControlCell(pp))
            {
                var job = new Job(DefDatabase <JobDef> .GetNamed("WFWait"));
                pp.jobs.TryTakeOrderedJob(job, JobTag.Misc);
            }
            else
            {
                if (pp.jobs.curJob.def == DefDatabase <JobDef> .GetNamed("WFWait"))
                {
                    pp.jobs.EndCurrentJob(JobCondition.None);
                }
            }
        }
        public static void Postfix(Pawn_DraftController __instance, ref IEnumerable <Gizmo> __result)
        {
            var tv   = Traverse.Create(__instance);
            var pawn = tv.Field("pawn").GetValue <Pawn>();

            if (!pawn.kindDef.defName.StartsWith("Warframe_"))
            {
                return;
            }

            if (WarframeStaticMethods.PawnInControlCell(pawn))
            {
                return;
            }

            var list = __result.ToList();

            list[0].disabled       = !WarframeStaticMethods.PawnInControlCell(pawn);
            list[0].disabledReason = "OnlyControlCell".Translate();
            __result = list.AsEnumerable();
        }