public void SpawnSetup() { backstoryDef = new BackstoryDef(); backstoryDef.defName = ListerDroids.AllDroids.Count + "DroidBS"; backstoryDef.bodyTypeFemale = BodyType.Male; backstoryDef.bodyTypeMale = BodyType.Male; backstoryDef.title = "Droid"; backstoryDef.titleShort = "Droid"; backstoryDef.baseDescription = "A droid."; backstoryDef.shuffleable = false; backstoryDef.saveKeyIdentifier = "MD2"; backstoryDef.slot = BackstorySlot.Childhood; backstoryDef.spawnCategories = new List<string>() { "Civil" }; List<WorkTags> workTags = new List<WorkTags>(); foreach(var t in parent.work.AllRequiredWorkTags) { if (!workTags.Contains(t)) workTags.Add(t); } backstoryDef.workAllows = workTags; backstoryDef.ResolveReferences(); parent.story.adulthood = BackstoryDatabase.GetWithKey(backstoryDef.UniqueSaveKeyFor()); parent.story.childhood = BackstoryDatabase.GetWithKey(backstoryDef.UniqueSaveKeyFor()); }
public static string GetNumberedNameFor(BackstoryDef backstoryDef, string titleShort) { int num = 1; if (!listerDroids.droidTypesDict.TryGetValue(backstoryDef, out num)) { num = 1; listerDroids.droidTypesDict.Add(backstoryDef, 2); } else { listerDroids.droidTypesDict[backstoryDef]++; } return titleShort + " " + num.ToString(); }