public static bool MeetsCommonAfterschoolActivityRequirements(SimDescription actor, AfterschoolActivityType activityToCheck, ref GreyedOutTooltipCallback greyedOutTooltipCallback) { bool teen = actor.Teen; if (!actor.Child && !teen) { return(false); } School school = actor.CareerManager.School; if (school == null) { return(false); } else if (actor.IsEnrolledInBoardingSchool()) { return(false); } /* * else if (!AfterschoolActivity.WorldHasSchoolRabbitHole()) * { * return false; * } */ else if (HasAfterschoolActivityOfType(actor, activityToCheck)) { return(false); } else if (HasAfterschoolActivityOnDays(actor, GetDaysForActivityType(activityToCheck))) { greyedOutTooltipCallback = InteractionInstance.CreateTooltipCallback(AfterschoolActivity.LocalizeString(actor.IsFemale, "DayConflict", new object[0x0])); return(false); } else if (DoesActivityConflictWithJob(actor, activityToCheck)) { return(false); } else if (teen && school.HasCompletedTeenAfterschoolActivityRecital) { return(false); } else if (HasCompletedRecitalForType(school, activityToCheck)) { return(false); } else if (IsChildActivity(activityToCheck) && AlreadyHasChildActivity(actor)) { return(false); } AgingManager singleton = AgingManager.Singleton; float num = singleton.AgingYearsToSimDays(singleton.GetCurrentAgingStageLength(actor)); float num2 = singleton.AgingYearsToSimDays(actor.AgingYearsSinceLastAgeTransition); float num3 = num - num2; if (num3 <= AfterschoolActivity.kDaysBeforeAgingTrigger) { greyedOutTooltipCallback = InteractionInstance.CreateTooltipCallback(AfterschoolActivity.LocalizeString(actor.IsFemale, "AboutToAgeUp", new object[] { actor })); return(false); } return(true); }