TineLineAnimationPlayableSerialization.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #if !COMBAT_SERVER
  2. using UnityEngine.Playables;
  3. using UnityEngine.Timeline;
  4. #endif
  5. using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic;
  6. [System.Serializable]
  7. public class TineLineAnimationPlayableSerialization : TimeLineAssetSerialization
  8. {
  9. public string animName;
  10. /// <summary>
  11. /// 0=默认 1=开启循环 2=关闭循环
  12. /// </summary>
  13. public int loopMode;
  14. public bool isRunPlay;
  15. public int layerId;
  16. public TineLineAnimationPlayableSerialization()
  17. {
  18. }
  19. #if !COMBAT_SERVER
  20. public TineLineAnimationPlayableSerialization(PlayableDirector playableDirector, GroupTrack groupTrack,
  21. TimelineClip timelineClip) : base(groupTrack, timelineClip)
  22. {
  23. TimeLinePlayEntityAnimtionAsset animationPlayableAsset = timelineClip.asset as TimeLinePlayEntityAnimtionAsset;
  24. if (animationPlayableAsset.clip != null)
  25. {
  26. animName = animationPlayableAsset.clip.name;
  27. loopMode = (int) animationPlayableAsset.loop;
  28. isRunPlay = animationPlayableAsset.isRunPlay;
  29. layerId = animationPlayableAsset.layerId;
  30. }
  31. }
  32. #endif
  33. public override TimeLineEventLogicBasic CreateLogic()
  34. {
  35. return new TineLineAnimationEventLogic();
  36. }
  37. }