| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | using System.Collections.Generic;using CombatLibrary.CombatLibrary.CombatCore.Utility;using Fort23.Core;#if !COMBAT_SERVERusing UnityEngine;using UnityEngine.Playables;using UnityEngine.Timeline;#endifusing UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic;[System.Serializable]public class TimeLineCurveSerializtion : TimeLineAssetSerialization{    public List<CurveInfo> CurveInfos = new List<CurveInfo>();    public string guid;    public TimeLineCurveSerializtion()    {    }#if !COMBAT_SERVER    public TimeLineCurveSerializtion(PlayableDirector playableDirector, GroupTrack groupTrack, TimelineClip timelineClip) : base(groupTrack, timelineClip)    {        TimeLineCurveAsset timelineClipAsset = timelineClip.asset as TimeLineCurveAsset;        if (timelineClipAsset.AnimationCurve != null)        {            Keyframe[] keys = timelineClipAsset.AnimationCurve.keys;            for (int i = 0; i < keys.Length; i++)            {                CurveInfo curveInfo = new CurveInfo();                curveInfo.t = keys[i].time;                curveInfo.v = keys[i].value;                curveInfo.it = keys[i].inTangent;                curveInfo.ot = keys[i].outTangent;                CurveInfos.Add(curveInfo);            }            guid = timelineClipAsset.guid;        }    }#endif    public override TimeLineEventLogicBasic CreateLogic()    {         return CObjectPool.Instance.Fetch<DefaultTimeLineLogic>();    }}
 |