private static void TryTakeScheduledDrugs(Pawn pawn, Caravan caravan) { if (pawn.drugs == null) { return; } DrugPolicy currentPolicy = pawn.drugs.CurrentPolicy; for (int i = 0; i < currentPolicy.Count; i++) { if (pawn.drugs.ShouldTryToTakeScheduledNow(currentPolicy[i].drug) && CaravanInventoryUtility.TryGetThingOfDef(caravan, currentPolicy[i].drug, out Thing thing, out Pawn owner)) { caravan.needs.IngestDrug(pawn, thing, owner); } } }
private static void TryTakeScheduledDrugs(Pawn pawn, Caravan caravan) { if (pawn.drugs != null) { DrugPolicy currentPolicy = pawn.drugs.CurrentPolicy; for (int i = 0; i < currentPolicy.Count; i++) { if (pawn.drugs.ShouldTryToTakeScheduledNow(currentPolicy[i].drug)) { Thing drug; Pawn drugOwner; if (CaravanInventoryUtility.TryGetThingOfDef(caravan, currentPolicy[i].drug, out drug, out drugOwner)) { CaravanPawnsNeedsUtility.IngestDrug(pawn, drug, drugOwner, caravan); } } } } }