Beispiel #1
0
        public override float Calculate(Pawn observer, Pawn assessed)
        {
            float affairReluctance  = 1f;
            float affairReluctance2 = 1f;

            if (observerCuckold != null)
            {
                affairReluctance  = RelationshipUtility.AffairReluctance(RelationshipUtility.MostAdvancedRelationshipBetween(observer, observerCuckold));
                affairReluctance *= Mathf.Pow(Mathf.InverseLerp(-100f, 5f, observer.relations.OpinionOf(observerCuckold)), -0.33f);
            }
            if (assessedCuckold != null)
            {
                affairReluctance2  = RelationshipUtility.AffairReluctance(RelationshipUtility.MostAdvancedRelationshipBetween(assessed, assessedCuckold));
                affairReluctance2 *= Mathf.Pow(Mathf.InverseLerp(-100f, 5f, observer.relations.OpinionOf(assessedCuckold)), -0.33f);
            }
            return(Mathf.Min(affairReluctance, affairReluctance2));
        }