37 lines
850 B
C#
37 lines
850 B
C#
using UnityEngine;
|
|
using Core;
|
|
using Core.Lifecycle;
|
|
using UnityEngine.Playables;
|
|
using Input;
|
|
|
|
public class LevelIntroDirector : ManagedBehaviour
|
|
{
|
|
public bool playOnSceneReady;
|
|
|
|
[HideInInspector]
|
|
public PlayableDirector introPlayableDirector;
|
|
|
|
internal override void OnSceneReady()
|
|
{
|
|
base.OnSceneReady();
|
|
introPlayableDirector = GetComponent<PlayableDirector>();
|
|
introPlayableDirector.stopped += IntroTimelineStopped;
|
|
if (playOnSceneReady)
|
|
{
|
|
PlayIntroTimeline();
|
|
}
|
|
}
|
|
|
|
private void IntroTimelineStopped(PlayableDirector director)
|
|
{
|
|
InputManager.Instance.SetInputMode(InputMode.Game);
|
|
}
|
|
|
|
public void PlayIntroTimeline()
|
|
{
|
|
introPlayableDirector.Play();
|
|
InputManager.Instance.SetInputMode(InputMode.InputDisabled);
|
|
}
|
|
|
|
}
|