using CombatCore.SerializationTimeLine.TimeLineSerialization;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[System.Serializable]
public class TimeLineParticleSystemAsset : ControlPlayableAsset
{
    [Header("作用目标")] public FXTargetType targetType;
    [Header("播放目标位置")] public FXLocationType LocationType;
    [Header("特定目标位置名")] public string targetSpecialDotName;
    [Header("随机范围组")] public int randomGroup;
    [Header("是否使用随机范围点")] public bool isUseRandom;
    [Header("x范围")]  public TimeLineVector2 xoff;
    [Header("y范围")]  public TimeLineVector2 yoff;
    [Header("z范围")]  public TimeLineVector2 zoff;
    [Header("指定hit点里面的点")] public string hitPointGroupName;
    [Header("高度设置再地面")]  public  bool isGround;
    /// 
    /// 是否跟随目标
    /// 
    [Header("是否跟随目标")] public bool isFollowTarget;
    /// 
    /// 是否不旋转 (默认是跟随目标旋转)
    /// 
    [Header("是否不跟随目标旋转")] public bool isNotRotate;
    /// 
    /// 是否跟随目标
    /// 
    [Header("是否跟随root目标")] public bool isFollowRootTarget;
    // /// 
    // /// 是否跟随目标
    // /// 
    // [Header("是否跟随root目标")] public bool isFollowRootRotate;
  
    /// 
    /// 是否跟随攻击速度进行播放te
    /// 
    [Header("攻击速度播放特效")] public bool isAttSpeed;
    [Header("是否是循环特效")] public bool isLoop;
    [Header("循环独占")] public bool loopAlone;
    [Header("激活自定义目标点")] public bool isActivityCustomTargetPos;
    [Header("自定义目标点下标")] public int CustomTargetPosIndex;
    [Header("间隔时间")] public float intervalTime;
    [Header("是否自定义旋转")] public bool isRoat;
    [Header("旋转值下标")] public int roatIndex;
    public override Playable CreatePlayable(PlayableGraph graph, GameObject go)
    {
        return base.CreatePlayable(graph, go);
    }
}