public override Job TryGiveJob(Pawn pawn) { if (!InteractionUtility.CanInitiateInteraction(pawn)) { return null; } Pawn pawn2 = SickPawnVisitUtility.FindRandomSickPawn(pawn, JoyCategory.Low); if (pawn2 == null) { return null; } return new Job(base.def.jobDef, pawn2, SickPawnVisitUtility.FindChair(pawn, pawn2)); }
public static bool CanInitiateRandomInteraction(Pawn p) { if (!InteractionUtility.CanInitiateInteraction(p)) { return(false); } if (p.RaceProps.Humanlike && !p.Downed && !p.InAggroMentalState) { if (p.Faction == null) { return(false); } return(true); } return(false); }
public bool CanInteractNowWith(Pawn recipient, InteractionDef interactionDef = null) { if (!recipient.Spawned) { return(false); } if (!InteractionUtility.IsGoodPositionForInteraction(pawn, recipient)) { return(false); } if (!InteractionUtility.CanInitiateInteraction(pawn, interactionDef) || !InteractionUtility.CanReceiveInteraction(recipient, interactionDef)) { return(false); } return(true); }
public bool CanInteractNowWith(Pawn recipient) { if (!recipient.Spawned) { return(false); } if (!InteractionUtility.IsGoodPositionForInteraction(this.pawn, recipient)) { return(false); } if (InteractionUtility.CanInitiateInteraction(this.pawn) && InteractionUtility.CanReceiveInteraction(recipient)) { return(true); } return(false); }
public override bool ShouldSkip(Pawn pawn, bool forced = false) { if (!InteractionUtility.CanInitiateInteraction(pawn)) { return(true); } List <Pawn> list = pawn.Map.mapPawns.SpawnedPawnsInFaction(Faction.OfPlayer); for (int i = 0; i < list.Count; i++) { if (list[i].InBed()) { return(false); } } return(true); }
public override Job TryGiveJob(Pawn pawn) { Job result; if (!InteractionUtility.CanInitiateInteraction(pawn)) { result = null; } else { Pawn pawn2 = SickPawnVisitUtility.FindRandomSickPawn(pawn, JoyCategory.Low); if (pawn2 == null) { result = null; } else { result = new Job(this.def.jobDef, pawn2, SickPawnVisitUtility.FindChair(pawn, pawn2)); } } return(result); }
// Token: 0x0600006E RID: 110 RVA: 0x0000463C File Offset: 0x0000283C public override Job TryGiveJob(Pawn pawn) { bool flag = !InteractionUtility.CanInitiateInteraction(pawn, null); Job result; if (flag) { result = null; } else { Pawn pawn2 = SickPawnVisitUtility.FindRandomSickPawn(pawn, JoyCategory.Low); bool flag2 = pawn2 == null; if (flag2) { result = null; } else { result = new Job(WPJobDefOf.WPVisitSickPawn, pawn2, SickPawnVisitUtility.FindChair(pawn, pawn2)); } } return(result); }
public override bool ShouldSkip(Pawn pawn) { return(!InteractionUtility.CanInitiateInteraction(pawn)); }
public bool CanInteractNowWith(Pawn recipient) { return(recipient.Spawned && InteractionUtility.IsGoodPositionForInteraction(this.pawn, recipient) && InteractionUtility.CanInitiateInteraction(this.pawn) && InteractionUtility.CanReceiveInteraction(recipient)); }
// Token: 0x060000C5 RID: 197 RVA: 0x00006290 File Offset: 0x00004490 public override bool ShouldSkip(Pawn pawn, bool forced = false) { return(!InteractionUtility.CanInitiateInteraction(pawn, null)); }
public static bool CanInitiateRandomInteraction(Pawn p) { return(InteractionUtility.CanInitiateInteraction(p) && p.RaceProps.Humanlike && !p.Downed && !p.InAggroMentalState && p.Faction != null); }