| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 | 
							- #if !COMBAT_SERVER
 
- using UnityEngine;
 
- using UnityEngine.Playables;
 
- using UnityEngine.Timeline;
 
- #endif
 
- using CombatCore.SerializationTimeLine.TimeLineSerialization;
 
- using Fort23.Core;
 
- using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic;
 
- using Object = System.Object;
 
- using Random = System.Random;
 
- /// <summary>
 
- /// 播放特效
 
- /// </summary>
 
- [System.Serializable]
 
- public class TimeLinePlayFxSerializtion : TimeLineAssetSerialization
 
- {
 
-     public string fxName;
 
-     public uint randomSeed;
 
-     public FXLocationType locationType;
 
-     public string targetSpecialDotName;
 
-     public string hitPointGroupName;
 
-     public bool isGround;
 
-     /// <summary>
 
-     /// 是否跟随目标
 
-     /// </summary>
 
-     public bool isFollowTarget;
 
-     public bool isFollowRootTarget;
 
-     /// <summary>
 
-     /// 是否不旋转 (默认是跟随目标旋转)
 
-     /// </summary>
 
-     public bool isNotRotate;
 
-     /// <summary>
 
-     /// 是否跟随攻击速度进行播放te
 
-     /// </summary>
 
-     public bool isAttSpeed;
 
-     public int CustomTargetPosIndex;
 
-     public bool isActivityCustomTargetPos;
 
-     /// <summary>
 
-     /// 是否循环
 
-     /// </summary>
 
-     public bool isLoop;
 
-     /// <summary>
 
-     /// 循环独立
 
-     /// </summary>
 
-     public bool loopAlone;
 
-     public float intervalTime;
 
-     public bool isRoat;
 
-     public int roatIndex;
 
-     public bool isUseRandom;
 
-     public TimeLineVector2 xoff;
 
-     public TimeLineVector2 yoff;
 
-     public TimeLineVector2 zoff;
 
-  
 
-     public int randomGroup;
 
-     public TimeLinePlayFxSerializtion()
 
-     {
 
-     }
 
- #if !COMBAT_SERVER
 
-     public TimeLinePlayFxSerializtion(PlayableDirector playableDirector, GroupTrack groupTrack,
 
-         TimelineClip timelineClip) : base(groupTrack, timelineClip)
 
-     {
 
-         TimeLineParticleSystemAsset controlPlayableAsset = timelineClip.asset as TimeLineParticleSystemAsset;
 
-         if (controlPlayableAsset == null)
 
-         {
 
-             return;
 
-         }
 
-         GameObject go = null;
 
-         if (controlPlayableAsset.prefabGameObject != null)
 
-         {
 
-             go = controlPlayableAsset.prefabGameObject;
 
-         }
 
-         else if (playableDirector.playableGraph.GetResolver() != null)
 
-         {
 
-             go = controlPlayableAsset.sourceGameObject.Resolve(playableDirector.playableGraph.GetResolver());
 
-         }
 
-         Object obj = controlPlayableAsset.sourceGameObject.defaultValue;
 
-         // Debug.Log(playableDirector.playableGraph.GetResolver());
 
-         if (go != null)
 
-         {
 
-             fxName = go.name;
 
-             randomSeed = controlPlayableAsset.particleRandomSeed;
 
-             locationType = controlPlayableAsset.LocationType;
 
-             targetSpecialDotName = controlPlayableAsset.targetSpecialDotName;
 
-             hitPointGroupName = controlPlayableAsset.hitPointGroupName;
 
-             isFollowTarget = controlPlayableAsset.isFollowTarget;
 
-             isFollowRootTarget = controlPlayableAsset.isFollowRootTarget;
 
-             isGround = controlPlayableAsset.isGround;
 
-             isNotRotate = controlPlayableAsset.isNotRotate;
 
-             isAttSpeed = controlPlayableAsset.isAttSpeed;
 
-             targetEntityType = controlPlayableAsset.targetType;
 
-             CustomTargetPosIndex = controlPlayableAsset.CustomTargetPosIndex;
 
-             isActivityCustomTargetPos = controlPlayableAsset.isActivityCustomTargetPos;
 
-             loopAlone = controlPlayableAsset.loopAlone;
 
-             isLoop = controlPlayableAsset.isLoop;
 
-             intervalTime = controlPlayableAsset.intervalTime;
 
-             isRoat = controlPlayableAsset.isRoat;
 
-             roatIndex = controlPlayableAsset.roatIndex;
 
-             isUseRandom = controlPlayableAsset.isUseRandom;
 
-             xoff = controlPlayableAsset.xoff;
 
-             yoff = controlPlayableAsset.yoff;
 
-             zoff = controlPlayableAsset.zoff;
 
-             randomGroup = controlPlayableAsset.randomGroup;
 
-         }
 
-     }
 
-   
 
- #endif
 
-     public override TimeLineEventLogicBasic CreateLogic()
 
-     {
 
-         return CObjectPool.Instance.Fetch<TimeLineEventParticleLogicBasic>();
 
-     }
 
- }
 
 
  |