Пример #1
0
            public override InteractionTestResult Test(ref InteractionInstanceParameters parameters, ref GreyedOutTooltipCallback greyedOutTooltipCallback)
            {
                SwimHere.SwimHereType type = mSwimHereType;
                try
                {
                    // Bypass some world restrictions encoded into the snorkel check
                    mSwimHereType = SwimHere.SwimHereType.None;

                    InteractionTestResult result = base.Test(ref parameters, ref greyedOutTooltipCallback);

                    //Bypass pregnancy check
                    if (result == InteractionTestResult.Tuning_Pregnant && greyedOutTooltipCallback != null)
                    {
                        result = InteractionTestResult.Pass;
                    }
                    if (result == InteractionTestResult.Pass)
                    {
                        //Stress test moved to the end
                        Sim actor = parameters.Actor as Sim;

                        if (actor.MoodManager.StressInteractionTest(ref greyedOutTooltipCallback) || actor.Motives.StressInteractionTest(ref greyedOutTooltipCallback, null))
                        {
                            result = InteractionTestResult.GenericFail;
                        }
                    }
                    return(result);
                }
                finally
                {
                    mSwimHereType = type;
                }
            }
Пример #2
0
            public override InteractionTestResult Test(ref InteractionInstanceParameters parameters, ref GreyedOutTooltipCallback greyedOutTooltipCallback)
            {
                if (Pool.GetPoolNearestPoint(parameters.Hit.mPoint) == null)
                {
                    return(InteractionTestResult.Gen_BadTerrainType);
                }

                using (WoohooTuningControl control = new WoohooTuningControl(parameters.InteractionObjectPair.Tuning, Woohooer.Settings.mAllowTeenSkinnyDip))
                {
                    SwimHere.SwimHereType type = mSwimHereType;
                    try
                    {
                        mSwimHereType = SwimHere.SwimHereType.None;

                        return(base.Test(ref parameters, ref greyedOutTooltipCallback));
                    }
                    finally
                    {
                        mSwimHereType = type;
                    }
                }
            }