static bool ShouldSkipPostfix(bool __result, WorkGiver_OperateScanner __instance, Pawn pawn, bool forced)
 {
     if (__result && pawn.IsPrisonerOfColony)
     {
         return(CanOperate(pawn, __instance));
     }
     return(__result);
 }
        private static bool CanOperate(Pawn pawn, WorkGiver_OperateScanner __instance)
        {
            List <Thing> list = pawn.Map.listerThings.ThingsOfDef(__instance.ScannerDef);

            for (int i = 0; i < list.Count; i++)
            {
                if (list[i].Faction == Faction.OfPlayer)
                {
                    CompScanner compScanner = list[i].TryGetComp <CompScanner>();
                    if (compScanner != null && compScanner.CanUseNow)
                    {
                        return(false);
                    }
                }
            }
            return(true);
        }