public void StopCutscene() { if (m_currentState == ECutsceneState.Stopped) { throw new InvalidOperationException(); } m_currentState = ECutsceneState.Stopped; m_startCutsceneInteraction.FinishExecution(); m_startCutsceneInteraction = null; BaseObjectEventArgs p_eventArgs = new BaseObjectEventArgs(this, Position); LegacyLogic.Instance.EventManager.InvokeEvent(this, EEventType.CUTSCENE_STOPPED, p_eventArgs); }
public void StartCutscene(CutsceneInteraction startCutsceneInteraction) { if (startCutsceneInteraction == null) { throw new ArgumentNullException(); } if (m_currentState == ECutsceneState.Started) { throw new InvalidOperationException(); } m_currentState = ECutsceneState.Started; m_startCutsceneInteraction = startCutsceneInteraction; BaseObjectEventArgs p_eventArgs = new BaseObjectEventArgs(this, Position); LegacyLogic.Instance.EventManager.InvokeEvent(this, EEventType.CUTSCENE_STARTED, p_eventArgs); }
/// <summary> /// Stop this instance. /// </summary> public void Stop() { m_State = ECutsceneState.Stop; CleanUp(); }
/// <summary> /// Play this instance. /// </summary> public void Play() { m_State = ECutsceneState.Playing; CleanUp(); StartAction(m_RootActionContainer); }