protected static void ForceChangeState(Relationship relation, LongTermRelationshipTypes state) { LongTermRelationship.InteractionBits bits = relation.LTR.LTRInteractionBits & (LongTermRelationship.InteractionBits.HaveBeenBestFriends | LongTermRelationship.InteractionBits.HaveBeenFriends | LongTermRelationship.InteractionBits.HaveBeenPartners); relation.LTR.ForceChangeState(state); relation.LTR.AddInteractionBit(bits); }
protected static void ForceChangeState(Relationship relation, LongTermRelationshipTypes state) { LongTermRelationship.InteractionBits bits = relation.LTR.LTRInteractionBits & (LongTermRelationship.InteractionBits.HaveBeenBestFriends | LongTermRelationship.InteractionBits.HaveBeenFriends | LongTermRelationship.InteractionBits.HaveBeenPartners); LTRData data = LTRData.Get(state); if (relation.LTR.RelationshipIsInappropriate(data)) { relation.LTR.ChangeBitsForState(state); relation.LTR.ChangeState(state); relation.LTR.UpdateUI(); } else { relation.LTR.ForceChangeState(state); } if (state == LongTermRelationshipTypes.Spouse) { relation.SimDescriptionA.Genealogy.Marry(relation.SimDescriptionB.Genealogy); MidlifeCrisisManager.OnBecameMarried(relation.SimDescriptionA, relation.SimDescriptionB); relation.LTR.RemoveInteractionBit(LongTermRelationship.InteractionBits.Divorce); relation.LTR.AddInteractionBit(LongTermRelationship.InteractionBits.Marry); relation.SetMarriedInGame(); if (SeasonsManager.Enabled) { relation.WeddingAnniversary = new WeddingAnniversary(SeasonsManager.CurrentSeason, (int)SeasonsManager.DaysElapsed); relation.WeddingAnniversary.SimA = relation.SimDescriptionA; relation.WeddingAnniversary.SimB = relation.SimDescriptionB; relation.WeddingAnniversary.CreateAlarm(); } } relation.LTR.AddInteractionBit(bits); }
public RelationshipBitScoring(int hit, int miss, LongTermRelationship.InteractionBits bit) : base(hit, miss) { mBit = bit; }