TimeLineAlertSeriailztion.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using UnityEngine.Playables;
  2. using UnityEngine.Timeline;
  3. using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic;
  4. [System.Serializable]
  5. public class TimeLineAlertSeriailztion : TimeLineAssetSerialization
  6. {
  7. public string guid;
  8. public int angle;
  9. public bool isFindEnemy;
  10. public bool isFindMyHero;
  11. public TimeLineAlertType alertType;
  12. public bool manualClose;
  13. public enum TimeLineAlertType
  14. {
  15. /// <summary>
  16. /// 默认
  17. /// </summary>
  18. Default,
  19. // /// <summary>
  20. // /// 危险型,玩家可以闪避
  21. // /// </summary>
  22. Dangerous,
  23. }
  24. // public float volume;
  25. public TimeLineAlertSeriailztion()
  26. {
  27. }
  28. #if !COMBAT_SERVER
  29. public TimeLineAlertSeriailztion(PlayableDirector playableDirector, GroupTrack groupTrack,
  30. TimelineClip timelineClip) : base(groupTrack, timelineClip)
  31. {
  32. TimeLineAlertAsset audioPlayableAsset = timelineClip.asset as TimeLineAlertAsset;
  33. guid = audioPlayableAsset.pointGuid;
  34. angle = audioPlayableAsset.angle;
  35. alertType = audioPlayableAsset.alertType;
  36. isFindEnemy = audioPlayableAsset.isFindEnemy;
  37. isFindMyHero = audioPlayableAsset.isFindMyHero;
  38. manualClose = audioPlayableAsset.manualClose;
  39. }
  40. #endif
  41. public override TimeLineEventLogicBasic CreateLogic()
  42. {
  43. return new TimeLineAlertLogic();
  44. }
  45. }