// Token: 0x0600007C RID: 124 RVA: 0x000067F8 File Offset: 0x000049F8 public static void RemoveTrait(Pawn pawn, Trait trait, string doer, MessageTypeDef MsgType, bool SendMsg = true) { Pawn_StoryTracker story = pawn.story; Trait remTrait = (story != null) ? (from x in story.traits.allTraits where x.def == trait.def select x).FirstOrDefault() : null; if (remTrait == null) { return; } if (pawn != null) { Pawn_StoryTracker story2 = pawn.story; if (story2 != null) { story2.traits.allTraits.Remove(remTrait); } } MSTraitChanger.TraitsUpdated(pawn); if (SendMsg) { string key = "MSExotic.TraitRemoved"; NamedArgument arg = pawn?.LabelShort.CapitalizeFirst(); Trait trait2 = trait; Messages.Message(key.Translate(arg, trait2?.Label.CapitalizeFirst(), doer.CapitalizeFirst()), pawn, MsgType, true); } }
// Token: 0x0600007D RID: 125 RVA: 0x000068C8 File Offset: 0x00004AC8 public static void AddTrait(Pawn pawn, Trait trait, string doer, MessageTypeDef MsgType, bool SendMsg = true) { if (pawn != null) { Pawn_StoryTracker story = pawn.story; if (story != null) { story.traits.GainTrait(trait); } } MSTraitChanger.TraitsUpdated(pawn); if (SendMsg) { Messages.Message("MSExotic.TraitAdded".Translate(pawn?.LabelShort.CapitalizeFirst(), trait?.Label.CapitalizeFirst(), doer.CapitalizeFirst()), pawn, MsgType, true); } }