public void ForceSkipCurrentVignetteVideo()
 {
     if (m_CurrentScriptable != null && m_CurrentScriptable is VignetteScriptableVideoPlayer)
     {
         m_CurrentScriptable.ScriptableWrapUp();
         m_CurrentScriptable = null;
         Advance();
     }
 }
    public void ForceFinishCurrentVignette()
    {
        m_Finished             = true;
        m_FiredFinishingAction = false;
        m_ReadyToAdvanceAnimation.gameObject.SetActive(false);
        m_FadeCurve = null;
        UnPauseAllPreviouslyPlayingAudioSources();
        GameManager.Instance.PlayAudioSource(null);

        if (m_CurrentScriptable != null)
        {
            m_CurrentScriptable.ScriptableWrapUp();
            m_CurrentScriptable = null;
        }
    }
    private void DisplayStep(int index)
    {
        m_ReadyToAdvanceAnimation.gameObject.SetActive(false);
        VignetteVideoStepConfig config = m_Config.IndividualSteps[index];

        // start text
        text        = config.Text;
        m_Text.text = kInivisibleColorStart + text + kInivisibleColorEnd;
        textIndex   = 0;
        delayInSecsBeforeStarting = config.DelayInSecsBeforeTextShows;

        if (config.Extras.Length > 0)
        {
            if (config.Extras[0].AdjustMusicVolume)
            {
                m_TargetAudioSourceVolume = config.Extras[0].MusicVolume;
            }
            if (config.Extras[0].AdjustTextSpeed)
            {
                m_TextSpeed = config.Extras[0].TextSpeed;
            }

            if (config.Extras[0].ChangeBackground)
            {
                m_Background.sprite     = config.Extras[0].Background;
                m_BackgroundColor.color = config.Extras[0].BackgroundColor;
                RectTransform bgRectTransform = ((RectTransform)m_Background.transform);
                bgRectTransform.anchoredPosition = config.Extras[0].BackgroundImageOffset;

                if (config.Extras[0].BackgroundScale == 0)
                {
                    config.Extras[0].BackgroundScale = 1;
                }
                bgRectTransform.localScale = Vector3.one * config.Extras[0].BackgroundScale;
            }

            RectTransform rectTransform = ((RectTransform)m_Text.transform);
            rectTransform.anchoredPosition = m_Config.TextOffset + config.Extras[0].TextOffset;

            m_CurrentScriptable = config.Extras[0].ScriptToRun;
        }
        else
        {
            m_CurrentScriptable = null;

            RectTransform rectTransform = ((RectTransform)m_Text.transform);
            rectTransform.anchoredPosition = m_Config.TextOffset;
        }

        if (m_CurrentScriptable != null)
        {
            m_CurrentScriptable.StartScriptable();
        }

        m_TextFadeInSecsTotal  = m_TextFadeInSecs = config.TextFadeInSecs;
        m_TextFadeOutSecsTotal = config.TextFadeOutSecs;
        m_TextFadeOutSecs      = 0;

        if (m_TextFadeInSecsTotal <= 0)
        {
            m_TextColor.a = 1;
            m_Text.color  = m_TextColor;
        }


        UpdateBackgroundForVideo();
    }