private void SendCaravan() { this.caravanSent = true; CaravanFormingUtility.FormAndCreateCaravan(this.lord.ownedPawns.Concat( from x in this.downedPawns where JobGiver_PrepareCaravan_GatherDownedPawns.IsDownedPawnNearExitPoint(x, this.exitPoint) select x), this.lord.faction, base.Map.Tile, this.startingTile, this.destinationTile); }
private void SendCaravan() { caravanSent = true; CaravanHelper.ExitMapAndCreateVehicleCaravan(lord.ownedPawns.Concat( from x in downedPawns where JobGiver_PrepareCaravan_GatherDownedPawns.IsDownedPawnNearExitPoint(x, exitPoint) select x), lord.faction, Map.Tile, startingTile, destinationTile); }
static bool Prefix(LordToil_PrepareCaravan_GatherDownedPawns __instance) { if (Find.TickManager.TicksGame % 100 > RefcellRespeedConfig.currentTimeMultiplier - 1) { return(false); } bool flag = true; List <Pawn> downedPawns = ((LordJob_FormAndSendCaravan)__instance.lord.LordJob).downedPawns; for (int index = 0; index < downedPawns.Count; ++index) { if (!JobGiver_PrepareCaravan_GatherDownedPawns.IsDownedPawnNearExitPoint(downedPawns[index], __instance.exitSpot)) { flag = false; break; } } if (!flag) { return(false); } __instance.lord.ReceiveMemo("AllDownedPawnsGathered"); return(false); }