NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/Story/TimelineTrackWrapper.cs

28 lines
650 B
C#

using System.Linq;
using Sirenix.Utilities;
using UnityEngine.Timeline;
namespace Gameplay.Story
{
public class TimelineTrackWrapper<T> where T : TrackAsset
{
public T trackAsset;
private TimelineClip[] _clips;
public TimelineTrackWrapper(T trackAsset)
{
this.trackAsset = trackAsset;
}
public TimelineClip[] GetClips()
{
if (_clips == null)
{
_clips = trackAsset.GetClips().ToArray();
_clips.Sort((a, b) => a.start.CompareTo(b.start));
}
return _clips;
}
}
}