public static InteractionTuning InjectAndReset <Target, OldType, NewType>(bool clone) where Target : IGameObject where OldType : InteractionDefinition where NewType : InteractionDefinition { return(WoohooTuningControl.ResetTuning(Tunings.Inject <Target, OldType, NewType>(clone), false, false)); }
public override InteractionTestResult Test(ref InteractionInstanceParameters parameters, ref GreyedOutTooltipCallback greyedOutTooltipCallback) { using (WoohooTuningControl control = new WoohooTuningControl(parameters.InteractionObjectPair.Tuning, Woohooer.Settings.mAllowTeenWoohoo)) { return(base.Test(ref parameters, ref greyedOutTooltipCallback)); } }
public override InteractionTestResult Test(ref InteractionInstanceParameters parameters, ref GreyedOutTooltipCallback greyedOutTooltipCallback) { try { Sim actor = parameters.Actor as Sim; if (actor == null) { return(InteractionTestResult.Root_Null_Actor); } if ((actor.LotCurrent == null) || (actor.LotCurrent.IsWorldLot)) { greyedOutTooltipCallback = Common.DebugTooltip("World Lot"); return(InteractionTestResult.Tuning_LotAvailability); } WoohooLocationControl control = WoohooLocationControl.GetControl(GetLocation(parameters.Target)); if (control == null) { greyedOutTooltipCallback = Common.DebugTooltip("Control Denied"); return(InteractionTestResult.Def_TestFailed); } if (!control.AllowLocation(actor.SimDescription, false)) { greyedOutTooltipCallback = Common.DebugTooltip("Location Denied"); return(InteractionTestResult.Def_TestFailed); } using (WoohooTuningControl tuningControl = new WoohooTuningControl(parameters.InteractionObjectPair.Tuning, Woohooer.Settings.mAllowTeenWoohoo)) { InteractionTestResult result = base.Test(ref parameters, ref greyedOutTooltipCallback); if ((greyedOutTooltipCallback == null) && (Common.kDebugging)) { greyedOutTooltipCallback = delegate { return(result.ToString()); }; } return(result); } } catch (ResetException) { throw; } catch (Exception e) { Common.Exception(parameters.Actor, parameters.Target, e); return(InteractionTestResult.GenericFail); } }
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; } } }