Files
AppleHillsProduction/Assets/Scripts/Cinematics/LevelIntroDirector.cs
2025-12-14 17:02:37 +01:00

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);
}
}