using UnityEngine;

namespace NBF
{
    /// <summary>
    /// 线轴资产配置
    /// </summary>
    public class ReelAsset : PreviewableAsset
    {
        // "previewRotationEnabled": 1,
        // "previewRotation": {
        //     "x": 20.0,
        //     "y": -130.0,
        //     "z": 190.0
        // },
        // "reelType": 3,
        // "reelSize": 11,
        // "minLineMeshScale": 0.93,
        // "maxLineMeshScale": 2.0,
        // "scaleX": 0,
        // "scaleY": 1,
        // "scaleZ": 1,
        // "rollHandleAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": 5949981527590265242
        // },
        // "rollUkladchikAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": 8960665928823962917
        // },
        // "rollShpulyaAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": -8671758223453786131
        // },
        // "frictionAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": 0
        // },
        // "openAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": -2998254598457423134
        // },
        // "closeAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": -56605426968450186
        // },
        // "startEngineAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": 0
        // },
        // "stopEngineAnimation": {
        //     "m_FileID": 0,
        //     "m_PathID": 0
        // },
        // "handleAnimationLoopCycles": 6,
        // "ikLocatorFixEnabled": 0,
        // "ikLocatorFixRotation": {
        //     "x": 0.0,
        //     "y": 0.0,
        //     "z": 0.0
        // },
        // "shiftRod": 0.0,
        // "materialWithSerial": {
        //     "m_FileID": 0,
        //     "m_PathID": 0
        // }
        
        public enum Type
        {
            Normal = 0,
            Casting = 1
        }

        public Type type;

        /// <summary>
        /// 动画组件
        /// </summary>
        public Animator animator;

        /// <summary>
        /// 根连接处
        /// </summary>
        public Transform rootConnector;

        /// <summary>
        /// 
        /// </summary>
        public Transform rootCompensator;

        /// <summary>
        /// 线连接处
        /// </summary>
        public Transform lineConnector;

        /// <summary>
        /// 线相交处
        /// </summary>
        public Transform lineIntersect;

        public Transform lineIntersectHelper;

        /// <summary>
        /// ik抓握挂点
        /// </summary>
        public Transform handle;

        /// <summary>
        /// 手柄真实结束点
        /// </summary>
        public Transform handleEnd;
    }
}