protected override bool Run(SimDescription me, bool singleSelection) { List <SimTrait.Item> allOptions = new List <SimTrait.Item>(); foreach (Sims3.Gameplay.ActorSystems.Trait trait in TraitManager.GetDictionaryTraits) { if (trait.IsReward) { continue; } if (!trait.TraitValidForAgeSpecies(me.GetCASAGSAvailabilityFlags())) { continue; } int count = 0; if (me.TraitManager.mUniversityGraduateTraitGuid == trait.Guid) { count = 1; } else if (me.HasTrait(trait.Guid)) { continue; } allOptions.Add(new SimTrait.Item(trait.Guid, count)); } SimTrait.Item selection = new CommonSelection <SimTrait.Item>(Name, me.FullName, allOptions, new SimTrait.AuxillaryColumn()).SelectSingle(); if (selection == null) { return(false); } TraitNames traitName = selection.Value; me.RemoveUniversityGraduateTrait(); if (traitName != me.TraitManager.mUniversityGraduateTraitGuid) { Sims3.Gameplay.ActorSystems.Trait selTrait = TraitManager.GetTraitFromDictionary(traitName); if (selTrait != null) { me.TraitManager.mUniversityGraduateTraitEnabled = true; me.AddUniversityGraduateTrait(selTrait); } } if ((me.CreatedSim != null) && (me.CreatedSim.SocialComponent != null)) { me.CreatedSim.SocialComponent.UpdateTraits(); } return(true); }
protected override bool Run(SimDescription me, bool singleSelection) { List<SimTrait.Item> allOptions = new List<SimTrait.Item>(); foreach (Sims3.Gameplay.ActorSystems.Trait trait in TraitManager.GetDictionaryTraits) { if (trait.IsReward) continue; if (!trait.TraitValidForAgeSpecies(me.GetCASAGSAvailabilityFlags())) continue; int count = 0; if (me.TraitManager.mUniversityGraduateTraitGuid == trait.Guid) { count = 1; } else if (me.HasTrait(trait.Guid)) { continue; } allOptions.Add(new SimTrait.Item (trait.Guid, count)); } SimTrait.Item selection = new CommonSelection<SimTrait.Item>(Name, me.FullName, allOptions, new SimTrait.AuxillaryColumn()).SelectSingle(); if (selection == null) return false; TraitNames traitName = selection.Value; me.RemoveUniversityGraduateTrait(); if (traitName != me.TraitManager.mUniversityGraduateTraitGuid) { Sims3.Gameplay.ActorSystems.Trait selTrait = TraitManager.GetTraitFromDictionary(traitName); if (selTrait != null) { me.TraitManager.mUniversityGraduateTraitEnabled = true; me.AddUniversityGraduateTrait(selTrait); } } if ((me.CreatedSim != null) && (me.CreatedSim.SocialComponent != null)) { me.CreatedSim.SocialComponent.UpdateTraits(); } return true; }