{

	//幽灵召唤及管理脚本

    "AbilityName" : "Unagi_Follower_Create",

    "AbilityStacking": "Unique",



    "DefaultModifier" :

    {

        "OnAdded" :

        [

            //生成一个基于世界坐标的点（小幽灵始终跟随该点）

            {

                "$type": "MoleMole.ProcessAttachPointAction",

                "Target": "Self",

                "AttachPointName": "GhostFollowPoint_02",

                "HierarchyType": "World",

                "PosRot": 

                {

                    "CoordsOption": "ReferTarget",

                    "TargetOption": 

                    {

                        "$type": "MoleMole.ConfigPosRotReferTarget",

                        "OffsetReferTarget": "Self",

                        "AttachPoint": "GhostFollowPoint",

                        "IsUseAttachPointPos": true,

                        "IsUseAttachPointRotation": false,

                    },

                    "Offset": 

                    {

                        "PositionOffset": {"x": 0.0, "y": 0.0, "z": 0.0},

                        "AngleOffset": {"x": 0.0, "y": 0.0, "z": 0.0},

                        "IsUseRotationY": true,

                        "IsUseRotationXZ": false,

                    }

                }

            },

            //召唤小幽灵

            {

                "$type" : "MoleMole.TriggerAbilityAction",

                "AbilityName" : "Unagi_Follower_Create"

            }

        ]

    },



    "AbilityMixins" : 

    [

        {

            "$type" : "MoleMole.SummonMixin",

            "SummonType" : "Monster",

            "SummonID" : 199140411,

            "SummonDuration" : -1,

            "SummonTag" : ["UnagiGhost"],

            "TimesUpDelay" : 0,

            "OverrideDelay" : 0,



            //直接在目标点召唤小幽灵

            "SummonPosRot" : 

            {

                "CoordsOption" : "ReferTarget",

                "TargetOption": 

                {

                    "$type": "MoleMole.ConfigPosRotReferTarget",

                    "OffsetReferTarget": "Caster",

                    "AttachPoint": "GhostFollowPoint_02",

                    "IsUseAttachPointPos": true,

                    "IsUseAttachPointRotation": true

                },

                "Offset" : 

                {

                    "PositionOffset" : {"x":0.0, "y":0.0, "z":0.0},

                    "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0},

                    "IsUseRotationY" : true,

                    "IsUseRotationXZ" : true,

                    "IsClampOffsetDistance" : false

                }

            },

            

            //指定召唤出的小幽灵始终跟随GhostFollowPoint_02点，且面向一致

            "OnSummonCreatedActions" : 

            [

                {

                    "$type": "MoleMole.ApplyLogicMoveAction",

                    "Target": "Target",



                    "MovementConfig" :

                    {

                        "$type" : "MoleMole.ConfigMovementTarget",

                        "Duration" : -1,

                        "Gravity" : 0.0,

                        "HitTangentialRatio" : 1,

                        "HitNormalRatio" : 1,

                        "TimesUpMoveOption" : "Remain",

                        "TargetPosRot" : 

                        {

                            "CoordsOption" : "ReferTarget",

                            "TargetOption" : 

                            {

                                "$type" : "MoleMole.ConfigPosRotReferTarget",

                                "OffsetReferTarget" : "Caster",

                                "AttachPoint" : "GhostFollowPoint_02",

                                "IsUseAttachPointPos" : true,

                                "IsUseAttachPointRotation" : true

                            },

                            "Offset" : 

                            {

                                "PositionOffset" : {"x":0.0, "y":0.0, "z":0.0},

                                "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0},

                                "IsUseRotationY" : true,

                                "IsUseRotationXZ" : true,

                                "IsClampOffsetDistance" : false

                            }

                        },



                        //Instant跟随时，有跳动

                         "MoveType":

                         {

                             "$type" : "MoleMole.MovementTypeInstant",

                             "NeedRayCastCheck" : false,  //本次瞬移能够穿墙

                         },



                        "TargetUpdateMode" : "Always",

                        "ReachTargetStop" : false

                    },



                    "RotationConfig" :

                    {   

                        "$type" : "MoleMole.ConfigRotationToTarget",

                        "Duration" : -1,

                        "TargetPosRot" : 

                        {

                            "CoordsOption" : "ReferTarget",

                            "TargetOption" : 

                            {

                                "$type" : "MoleMole.ConfigPosRotReferTarget",

                                "OffsetReferTarget" : "Caster",

                                "AttachPoint" : "GhostFollowPoint_02",

                                "IsUseAttachPointPos" : true,

                                "IsUseAttachPointRotation" : true,

                            },

                            "Offset" : 

                            {

                                //看向目标点前方无限远处，即和目标点朝向保持一致

                                "PositionOffset" : {"x":0.0, "y":0.0, "z":99999.0},

                                "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0},

                                "IsUseRotationY" : true,

                                "IsUseRotationXZ" : true,

                                "IsClampOffsetDistance" : false

                            }

                        },

                        "RotateType" : "Lerp",

                        "RotateSpeed" : 8.0,

                        "TargetUpdateMode" : "Always",

                        "ReachTargetStop" : false

                    }

                }

            ]

        }

    ]

}