private BaseBlueprintDef GetBaseBlueprint() { BaseBlueprintDef print = DefDatabase <BaseBlueprintDef> .AllDefs.Where(b => b.Categories != null && b.Categories.Contains(blueprintsPattern)).RandomElement(); if (print == null) { print = BlueprintDefOfLocal.SiegeCampBase2_1; } return(print); }
public override void PostMapGenerate() { base.PostMapGenerate(); BaseBlueprintDef basePrint = GetBaseBlueprint(); BlueprintHandler.CreateBlueprintAt(settlement.Map.Center, settlement.Map, basePrint, settlement.Faction, null, out Dictionary <Pawn, LordType> pawns, out float totalThreat, true); foreach (var p in pawns.Keys) { friendlyPawns.Add(p); if (p != null) { p.SetFaction(Faction.OfPlayer); } } friendlyPawnsBeforeAttack = friendlyPawns.Count; if (HelpShowed == false) { ShowHelp(); } }