TimeLineAlertSeriailztion.cs 1.5 KB

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