public static void SpawnStartingColonists() { foreach (Pawn current in MapInitParams.colonists) { current.psychology.thoughts.GainThought(ThoughtDef.Named("NewColonyOptimism")); current.SetFactionDirect(Faction.OfColony); current.AddAndRemoveComponentsAsAppropriate(); PawnInventoryGenerator.GiveAppropriateKeysTo(current); } EnsureAllWorkTypesAreAssigned(); bool startedDirectInEditor = MapInitParams.StartedDirectInEditor; List <List <Thing> > list = new List <List <Thing> >(); foreach (Pawn current2 in MapInitParams.colonists) { list.Add(new List <Thing> { current2 }); } int num = 0; foreach (StartingItemRecord current3 in StartingItems) { Thing thing = ThingMaker.MakeThing(current3.thingDef); thing.SetFactionDirect(Faction.OfColony); list[num].Add(thing); num++; if (num >= list.Count) { num = 0; } } bool canInstaDropDuringInit = startedDirectInEditor; DropPodUtility.DropThingGroupsNear(MapGenerator.PlayerStartSpot, list, 110, canInstaDropDuringInit, true); List <Thing> list2 = new List <Thing>(); for (int i = 0; i < 16; i++) { Thing item = ThingMaker.MakeThing(ThingDef.Named("MealSurvivalPack")); list2.Add(item); } List <List <Thing> > list3 = new List <List <Thing> >(); list3.Add(list2); canInstaDropDuringInit = startedDirectInEditor; DropPodUtility.DropThingGroupsNear(MapGenerator.PlayerStartSpot + new IntVec3(7, 0, 7), list3, 110, canInstaDropDuringInit, true); }
public static void SpawnStuff() { foreach (Pawn current in ModdedMapInitParams.colonists) { current.psychology.thoughts.GainThought(ThoughtDef.Named("NewColonyOptimism")); current.SetFactionDirect(Faction.OfColony); current.AddAndRemoveComponentsAsAppropriate(); PawnInventoryGenerator.GiveAppropriateKeysTo(current); } EnsureAllWorkTypesAreAssigned(); bool canInstaDropDuringInit = ModdedMapInitParams.StartedDirectInEditor; List <List <Thing> > list = new List <List <Thing> >(); foreach (Pawn current2 in ModdedMapInitParams.colonists) { list.Add(new List <Thing> { current2 }); } DropPodUtility.DropThingGroupsNear(MapGenerator.PlayerStartSpot, list, 110, canInstaDropDuringInit, false); List <Thing> list2 = new List <Thing>(); for (int i = 0; i < 16; i++) { Thing item = ThingMaker.MakeThing(ThingDef.Named("MealSurvivalPack")); list2.Add(item); } List <List <Thing> > list3 = new List <List <Thing> >(); list3.Add(list2); try { DropPodUtility.DropThingGroupsNear(MapGenerator.PlayerStartSpot + new IntVec3(7, 0, 7), list3, 110, canInstaDropDuringInit, true); } catch (Exception e) { Log.Message(e.Message); } }