protected override OptionResult Run(GameHitParameters <GameObject> parameters) { LoopingAnimationBase interaction = parameters.mActor.InteractionQueue.GetCurrentInteraction() as LoopingAnimationBase; interaction.SetLookAt(parameters.mTarget); return(OptionResult.SuccessClose); }
protected override void OnPerform() { LoopingAnimationBase interaction = mInteractionInstance as LoopingAnimationBase; string value = StringInputDialog.Show(Common.Localize("Timing:MenuName"), Common.Localize("Timing:Prompt", interaction.TargetSim.IsFemale, new object[] { interaction.TargetSim }), interaction.Timing.ToString()); if (string.IsNullOrEmpty(value)) { return; } float timing = 0; if (!float.TryParse(value, out timing)) { AcceptCancelDialog.Show(Common.Localize("Numeric:Error")); return; } if (timing < 0) { timing = 0; } interaction.Timing = timing; mTone.mTiming = timing; Sims3.UI.Hud.InteractionQueue.Instance.UpdateQueueFull(); }
public override bool Test(InteractionInstance ii, out StringDelegate reason) { try { LoopingAnimationBase interaction = ii as LoopingAnimationBase; if (interaction.Paused) { reason = delegate { return(Common.Localize("Pause:Disabled")); }; return(false); } return(base.Test(ii, out reason)); } catch (Exception e) { reason = null; Common.Exception(ii.InstanceActor, e); return(false); } }
protected override OptionResult Run(GameHitParameters <Sim> parameters) { LoopingAnimationBase interaction = parameters.mActor.InteractionQueue.GetCurrentInteraction() as LoopingAnimationBase; interaction.DisposeLookAt(); return(OptionResult.SuccessClose); }
public override void OnSelectionBegin(InteractionInstance interactionInstance) { try { LoopingAnimationBase interaction = interactionInstance as LoopingAnimationBase; interaction.Cancel(); base.OnSelectionBegin(interactionInstance); } catch (Exception e) { Common.Exception(interactionInstance.InstanceActor, e); } }
public override bool Test(InteractionInstance ii, out StringDelegate reason) { try { LoopingAnimationBase interaction = ii as LoopingAnimationBase; mTiming = interaction.Timing; return(base.Test(ii, out reason)); } catch (Exception e) { reason = null; Common.Exception(ii.InstanceActor, e); return(false); } }
public static bool ControlLoop(LoopingAnimationBase interaction) { try { float start = SimClock.ElapsedTime(TimeUnit.Seconds); while (((interaction.Paused) || (interaction.Timing > (SimClock.ElapsedTime(TimeUnit.Seconds) - start))) && (!interaction.TargetSim.HasExitReason())) { SpeedTrap.Sleep(); } interaction.Iterations--; return (interaction.Iterations > 0); } catch (ResetException) { throw; } catch (Exception e) { Common.Exception(interaction.TargetSim, interaction.TargetSim, e); return false; } }
public static bool ControlLoop(LoopingAnimationBase interaction) { try { float start = SimClock.ElapsedTime(TimeUnit.Seconds); while (((interaction.Paused) || (interaction.Timing > (SimClock.ElapsedTime(TimeUnit.Seconds) - start))) && (!interaction.TargetSim.HasExitReason())) { SpeedTrap.Sleep(); } interaction.Iterations--; return(interaction.Iterations > 0); } catch (ResetException) { throw; } catch (Exception e) { Common.Exception(interaction.TargetSim, interaction.TargetSim, e); return(false); } }