TimeLineAudioSeralization.cs 1017 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #if !COMBAT_SERVER
  2. using UnityEngine.Playables;
  3. using UnityEngine.Timeline;
  4. #endif
  5. using Fort23.Core;
  6. using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic;
  7. [System.Serializable]
  8. public class TimeLineAudioSeralization : TimeLineAssetSerialization
  9. {
  10. public string audioName;
  11. public bool isLoop;
  12. // public float volume;
  13. public TimeLineAudioSeralization()
  14. {
  15. }
  16. #if !COMBAT_SERVER
  17. public TimeLineAudioSeralization(PlayableDirector playableDirector, GroupTrack groupTrack,
  18. TimelineClip timelineClip) : base(groupTrack, timelineClip)
  19. {
  20. AudioPlayableAsset audioPlayableAsset = timelineClip.asset as AudioPlayableAsset;
  21. if (audioPlayableAsset.clip != null)
  22. {
  23. audioName = audioPlayableAsset.clip.name;
  24. isLoop = audioPlayableAsset.loop;
  25. // volume = 1;
  26. }
  27. }
  28. #endif
  29. public override TimeLineEventLogicBasic CreateLogic()
  30. {
  31. return CObjectPool.Instance.Fetch<TimeLineAudioEventLogic>();
  32. }
  33. }