private static float MinPossibleAgeGapAtMinAgeToGenerateAsLovers(Pawn p1, Pawn p2) { float num = (float)(p1.ageTracker.AgeChronologicalYearsFloat - 14.0); if (num < 0.0) { Log.Warning("at < 0"); return(0f); } float num2 = PawnRelationUtility.MaxPossibleBioAgeAt(p2.ageTracker.AgeBiologicalYearsFloat, p2.ageTracker.AgeChronologicalYearsFloat, num); float num3 = PawnRelationUtility.MinPossibleBioAgeAt(p2.ageTracker.AgeBiologicalYearsFloat, num); if (num2 < 0.0) { return(-1f); } if (num2 < 14.0) { return(-1f); } if (num3 <= 14.0) { return(0f); } return((float)(num3 - 14.0)); }
private static float GetParentAgeFactor(Pawn parent, Pawn child, float minAgeToHaveChildren, float usualAgeToHaveChildren, float maxAgeToHaveChildren) { float num = PawnRelationUtility.MaxPossibleBioAgeAt(parent.ageTracker.AgeBiologicalYearsFloat, parent.ageTracker.AgeChronologicalYearsFloat, child.ageTracker.AgeChronologicalYearsFloat); float num2 = PawnRelationUtility.MinPossibleBioAgeAt(parent.ageTracker.AgeBiologicalYearsFloat, child.ageTracker.AgeChronologicalYearsFloat); if (num <= 0f) { return(0f); } if (num2 > num) { if (num2 > num + 0.1f) { Log.Warning(string.Concat(new object[] { "Min possible bio age (", num2, ") is greater than max possible bio age (", num, ")." }), false); } return(0f); } if (num2 <= usualAgeToHaveChildren && num >= usualAgeToHaveChildren) { return(1f); } float ageFactor = ChildRelationUtility.GetAgeFactor(num2, minAgeToHaveChildren, maxAgeToHaveChildren, usualAgeToHaveChildren); float ageFactor2 = ChildRelationUtility.GetAgeFactor(num, minAgeToHaveChildren, maxAgeToHaveChildren, usualAgeToHaveChildren); return(Mathf.Max(ageFactor, ageFactor2)); }
private static float MinPossibleAgeGapAtMinAgeToGenerateAsLovers(Pawn p1, Pawn p2) { float num = p1.ageTracker.AgeChronologicalYearsFloat - 14f; float result; if (num < 0f) { Log.Warning("at < 0", false); result = 0f; } else { float num2 = PawnRelationUtility.MaxPossibleBioAgeAt(p2.ageTracker.AgeBiologicalYearsFloat, p2.ageTracker.AgeChronologicalYearsFloat, num); float num3 = PawnRelationUtility.MinPossibleBioAgeAt(p2.ageTracker.AgeBiologicalYearsFloat, num); if (num2 < 0f) { result = -1f; } else if (num2 < 14f) { result = -1f; } else if (num3 <= 14f) { result = 0f; } else { result = num3 - 14f; } } return(result); }