public static TaleData_Trader GenerateRandom() { PawnKindDef pawnKindDef = (from d in DefDatabase <PawnKindDef> .AllDefs where d.trader select d).RandomElement <PawnKindDef>(); Pawn pawn = PawnGenerator.GeneratePawn(pawnKindDef, FactionUtility.DefaultFactionFrom(pawnKindDef.defaultFactionType)); pawn.mindState.wantsToTradeWithColony = true; PawnComponentsUtility.AddAndRemoveDynamicComponents(pawn, true); return(TaleData_Trader.GenerateFrom(pawn)); }
public static TaleData_Trader GenerateFrom(ITrader trader) { TaleData_Trader taleData_Trader = new TaleData_Trader(); taleData_Trader.name = trader.TraderName; Pawn pawn = trader as Pawn; if (pawn != null) { taleData_Trader.pawnID = pawn.thingIDNumber; taleData_Trader.gender = pawn.gender; } return(taleData_Trader); }
public override void GenerateTestData() { base.GenerateTestData(); traderData = TaleData_Trader.GenerateRandom(); }
public Tale_DoublePawnAndTrader(Pawn firstPawn, Pawn secondPawn, ITrader trader) : base(firstPawn, secondPawn) { traderData = TaleData_Trader.GenerateFrom(trader); }
public Tale_SinglePawnAndTrader(Pawn pawn, ITrader trader) : base(pawn) { traderData = TaleData_Trader.GenerateFrom(trader); }