예제 #1
0
    public void EndResetNarrativeController()
    {
        if (Time.timeScale == 1)
        {
            // Hide UI
            AM.PlayConsistentOneShot(speakersMoveInSound, speakersMoveInVolume);

            speakerUILeft.Hide();
            speakerUILeft.HideSprite();

            if (N != null && !N.isMonologue)
            {
                speakerUIRight.Hide();
                speakerUIRight.HideSprite();
            }

            cinematicController.PlayNarrativeSlideOut();

            // Hide Cursor
            if (hideCursorAfter)
            {
                Cursor.visible   = false;
                Cursor.lockState = CursorLockMode.Locked;
            }

            // Re-emable enemies
            Toolbox.GetInstance().GetLevelManager().UnPauseAllEnemies();

            // Reset tutorial tracking vars
            hasDisplayedTutorial    = false;
            tutorialsPlayed         = 0;
            tutorialsRemaining      = true;
            activeTutorialLineIndex = 0;

            // Reset controller vars
            narTrigger.DisableTrigger();
            N = null;
            activeLineIndex         = 0;
            isNarrativeEventRunning = false;
            AM.DampenAllAudio(false);

            if (narTrigger.isDampenMusic)
            {
                AM.DampenBGMusic(false);
            }

            // If this trigger has a cinematic attached to it, play it now
            if (narTrigger.hasCinematic)
            {
                narTrigger.PlayPostNarrativeCinematic();
            }
            else
            {
                // Re-Enable player
                StartCoroutine(HoldEnablePCON());
            }
        }
    }