Files
HauntedBloodlines/Assets/Scripts/Scripted Events/AssignToPlayableTrack.cs
2025-05-29 22:31:40 +03:00

39 lines
1.3 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using Cinemachine;
public class AssignToPlayableTrack : MonoBehaviour
{
[SerializeField] PlayableDirector[] playableDirectors;
public void AssignPlayerToTimelines()
{
Animator playerAnimator = PlayerManager.GetInstance().FPSControllerAnimator;
CinemachineBrain mainCameraCinemachineBrain = PlayerManager.GetInstance().PlayerMainCamera.GetComponent<CinemachineBrain>();
for (int i = 0; i < playableDirectors.Length; i++)
{
var timelineAsset = playableDirectors[i].playableAsset as TimelineAsset;
var trackList = timelineAsset.GetOutputTracks();
foreach (var track in trackList)
{
#region Assign Player Related
if (track.name == "Player Animator Track")
{
playableDirectors[i].SetGenericBinding(track, playerAnimator);
}
if (track.name == "Main Camera Cinemachine Track")
{
playableDirectors[i].SetGenericBinding(track, mainCameraCinemachineBrain);
}
#endregion
playableDirectors[i].RebuildGraph();
}
}
}
}