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));
		}
Esempio n. 2
0
 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);
 }
Esempio n. 3
0
 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);
 }
Esempio n. 4
0
 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);
 }
Esempio n. 5
0
        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);
        }
Esempio n. 8
0
 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));
 }
Esempio n. 10
0
 // 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);
 }