// Token: 0x06000071 RID: 113 RVA: 0x000046F8 File Offset: 0x000028F8 public static Toil FinalizeTend(Pawn patient) { Toil toil = new Toil(); toil.initAction = delegate() { Pawn actor = toil.actor; Medicine medicine = (Medicine)actor.jobs.curJob.targetB.Thing; float num = (!patient.RaceProps.Animal) ? 500f : 175f; TendUtility.DoTend(actor, patient, medicine); bool flag = medicine != null && medicine.Destroyed; if (flag) { actor.CurJob.SetTarget(TargetIndex.B, LocalTargetInfo.Invalid); } }; toil.defaultCompleteMode = ToilCompleteMode.Instant; return(toil); }
public static Toil FinalizeTend(Pawn patient) { Toil toil = new Toil(); toil.initAction = delegate { Pawn actor = toil.actor; Medicine medicine = (Medicine)actor.jobs.curJob.targetB.Thing; float num = (float)((!patient.RaceProps.Animal) ? 500.0 : 175.0); float num2 = (float)((medicine != null) ? medicine.def.MedicineTendXpGainFactor : 0.5); actor.skills.Learn(SkillDefOf.Medicine, num * num2, false); TendUtility.DoTend(actor, patient, medicine); if (medicine != null && medicine.Destroyed) { actor.CurJob.SetTarget(TargetIndex.B, LocalTargetInfo.Invalid); } }; toil.defaultCompleteMode = ToilCompleteMode.Instant; return(toil); }
public static Toil FinalizeTend(Pawn patient) { Toil toil = new Toil(); toil.initAction = delegate { Pawn actor = toil.actor; Medicine medicine = (Medicine)actor.CurJob.targetB.Thing; float num = patient.RaceProps.Animal ? 175f : 500f; float num2 = medicine?.def.MedicineTendXpGainFactor ?? 0.5f; actor.skills.Learn(SkillDefOf.Medicine, num * num2); TendUtility.DoTend(actor, patient, medicine); if (medicine != null && medicine.Destroyed) { actor.CurJob.SetTarget(TargetIndex.B, LocalTargetInfo.Invalid); } if (toil.actor.CurJob.endAfterTendedOnce) { actor.jobs.EndCurrentJob(JobCondition.Succeeded); } }; toil.defaultCompleteMode = ToilCompleteMode.Instant; return(toil); }