Example #1
0
    public void PlaySequencer(string strSequencer)
    {
        if (m_IsPlay)
        {
            return;
        }

        if (strSequencer == "")
        {
            return;
        }

        //隐藏npc
        //Client.IEntitySystem es = Client.ClientGlobal.Instance().GetEntitySystem();
        //if (es != null)
        //    es.ShowEntity(false);
        try
        {
            m_SequencerGameObject = WellFired.USSequencerLoad.LoadSequencerFromXml(strSequencer);
        }
        catch
        {
            PlaybackFinished(null);
            goto Exit0;
        }

        if (m_SequencerGameObject != null)
        {
            WellFired.USSequencer sequencer = m_SequencerGameObject.GetComponent <WellFired.USSequencer>();

            if (sequencer != null)
            {
                sequencer.PlaybackFinished += this.PlaybackFinished;
                sequencer.BeforeUpdate     += this.BeforeUpdate;

                m_IsPlay = true;
                if (m_IsPlay == true)
                {
                    RoleStateBarManager.HideHeadStatus();//隐藏npc血条

                    //隐藏提示
                    TipsManager.Instance.EnableTips(false);

                    //关闭声音
                    //IClientGlobal的MuteGameSound方法
                    Client.ClientGlobal.Instance().MuteGameSound(true);


                    ///显示黑边
                    StoryPanel.StoryData data = new StoryPanel.StoryData();
                    data.Des              = "";
                    data.ShowSkip         = SequencerManager.Instance().IsShowSkipSequencerBtn();
                    data.SkipDlg          = SequencerManager.Instance().OnSkipSequencer;
                    data.ColliderClickDlg = SequencerManager.Instance().OnClickSequencer;

                    ////隐藏npc
                    Client.IEntitySystem es = Client.ClientGlobal.Instance().GetEntitySystem();
                    if (es != null)
                    {
                        es.ShowEntity(false);
                    }
                }

                sequencer.Play();
            }
        }



Exit0:
        return;
    }