Example #1
0
    void BeforeLeave()
    {
        sdGlobalDatabase.Instance.globalData["moviedialogue"] = false;
        BuffChange(false);
        sdGameCamera   gameCamera = sdGameLevel.instance.mainCamera;
        List <stMovie> movieList  = stageMovie.movieList;

        if (m_nDialogueIndex < movieList.Count)
        {
            stMovie movieData = movieList[m_nDialogueIndex];
            if (movieData.npcNoShow == 1)
            {
                GameObject obj = GameObject.Find(movieData.npcModel);
                if (obj != null)
                {
                    obj.SetActive(false);
                }
            }
        }
        sdUICharacter.Instance.DialogueCharacterList.Clear();
        sdGameLevel.instance.mainCamera.MainCharFollow = true;

        m_mainCamera.transform.position = m_cameraSavePosition;
        m_mainCamera.transform.rotation = m_cameraSaveRotate;

        HideUI(m_headImage);
        HideUI(m_texImage);

        if (m_bGuide)
        {
            sdGameLevel.instance.SetFingerObjectActive(true);
        }
        sdUICharacter.Instance.ShowFightUi();
        SetTime(leaveTime);
        m_nStage = 7;
    }
    // Update is called once per frame
    void Update()
    {
        if (fTime > 0.0f)
        {
            sdGameCamera cam = sdGameLevel.instance.mainCamera;
            if (cam != null)
            {
                float old = cam.OrginZommIn;

                cam.OrginZommIn = Mathf.Lerp(old, fTarget, Mathf.Pow(1.0f - fTime / FadeTime, 0.5f));
            }
            float t = Time.unscaledDeltaTime;
            if (t > 0.02)
            {
                t = 0.02f;
            }
            fTime -= t;
            Debug.Log(cam.OrginZommIn);
        }
        else
        {
            fTime = -1.0f;
        }
    }