{

    "AbilityName" : "Bangboo_Eous001_Skill_Shield_Death",

    "AbilityStacking":"Unique",



    //生化护盾，护盾值为随从最大耐力的一定百分比（200% * MaxEndurance +100）

    //拾取掉落物时，延长护盾的持续时间（3秒），并回复少量护盾值（10% * MaxEndurance），有1.5秒内置冷却时间，持续期间免疫所有伤害



    "DefaultModifier" :

    {

        "OnAdded" :

        [

            {

                "$type": "MoleMole.ApplyAbilityAction",

                "AbilityName": "Bangboo_Eous001_Skill_Shield_Death_Attack_01",

                "IsAutoTrigger": false,

                "Target" : "Self"

            },

            {

                "$type": "MoleMole.ApplyAbilityAction",

                "AbilityName": "Bangboo_Eous001_Skill_Shield_Death_Attack_02",

                "IsAutoTrigger": false,

                "Target" : "Self"

            },

            {

                "$type": "MoleMole.SetAbilitySpecialsByPropertyAction",

                "Target": "Self",

                "ParamName": "AS_ShieldValueDelta",

                "ModifyFunction": "Replace",

                "PropertyType" : "MaxEndurance",

                "Percentage" : 0.1

            },

        ],

    },



    "OnAbilityStart":

    [

        {

            "$type": "MoleMole.ApplyModifier",

            "ModifierName": "ShieldModifier",

            "Target" : "Self"

        },

    ],



    "Modifiers" :

    {

        "ShieldModifier" : 

        {

            "ModifierStacking" : "MultipleRefresh",

            "Duration" : -1, //ModifierMixin与Modifier同生共死

            "MaxStackingNumber" : 1, //达到叠层上限后，最新的取代最旧的

            "IgnoreTimeScale" : false,



            "OnAdded" :

            [

                //技能进入CD

                {

                    "$type": "MoleMole.SkillStartAction",

                    "StartedSkillName": "Bangboo_Eous001_Skill_Shield_Death",

                    "Target" : "Self"

                },

                //护盾发动期间，护盾技能CD暂停读秒

                {

                    "$type": "MoleMole.PauseSkillCDAction",

                    "Target" : "Self",

                    "IsPause": true,

                    "SkillNames": 

                    [

                        "Bangboo_Eous001_Skill_Shield_Death"

                    ],

                },

                //添加指示物标记

                {

                    "$type": "MoleMole.ApplyModifier",

                    "ModifierName": "IndicatorBuffModifier",

                    "Target": "TeamAvatars"

                },

            ],



            "ModifierMixins" : 

            [

                {

                    "$type": "MoleMole.ValueProtectShieldMixin", //按时间



                    "TotalDuration": -1, //有效时长

                    "DestroyRecoverTime": 99999, //破损后的再生CD



                    "EffectTarget": "TeamAvatars", //作用对象



                    "TotalValueConfig": 

                    {

                        "PropertyType": "MaxEndurance",

                        // "CustomPropertyType": "EnhanceNum",

                        "Percentage": "%AS_ShieldValueRatio",

                        "Amount": 100,

                    }, 



                    //触发结算的伤害类型

                    "ProtectHitTypes": 

                    [

                        0, //Range

                        1, //Melee

                    ],

                    

                    //"FollowEffectPattern": "Eff_Buff_DefenseUpSmall_Start",

                    //"ProtectSuccessEffectPattern": "Eff_RandomSkill_ElectricShield_Hit",



                    "ColliderConfig": 

                    {

                        "ColliderType": "Sphere",

                        "SphereColliderRadius": 0.8,

                        "ColliderPosOffset": {"x": 0.0, "y": 0.8, "z": 0.0},

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

                    },



                    //护盾启动

                    "ShieldStartActions": 

                    [

                        {

                            "$type": "MoleMole.ApplyMatCapAction",

                            "MatCapKey": "Bangboo_Shield_Death_ShaderMatCap_Start",

                            "Target": "LocalAvatar"

                        },

                        {  

                            "$type" : "MoleMole.FireEffect",

                            "EffectPattern" : "Eff_Bangboo_Shield_Death_Start",

                            "Target" : "LocalAvatar"

                        },



                    ],



                    //护盾赋予

                    "ShieldOpenActions": 

                    [

                        {

                            "$type": "MoleMole.ApplyModifier",

                            "ModifierName": "HitListenerModifier",

                            "Target": "Target"

                        },



                    ],



                    //护盾回收

                    "ShieldCloseActions": 

                    [

                        {

                            "$type": "MoleMole.RemoveModifier",

                            "ModifierName": "HitListenerModifier",

                            "Target": "Target"

                        },

                    ],



                    //护盾用完

                    "ShieldEmptyActions": 

                    [

                        {  

                            "$type" : "MoleMole.FireEffect",

                            "EffectPattern" : "Eff_Bangboo_Shield_Death_End",

                            "Target" : "LocalAvatar"

                        },

                        {

                            "$type": "MoleMole.RemoveModifier",

                            "ModifierName": "ShieldModifier",

                            "Target": "Self"

                        },

                    ],



                    //护盾到达持续时间

                    "ShieldTimesUpActions": 

                    [

                        {

                            "$type": "MoleMole.ApplyMatCapAction",

                            "MatCapKey": "Bangboo_Shield_Death_ShaderMatCap_End",

                            "Target": "LocalAvatar"

                        },

                        {  

                            "$type" : "MoleMole.FireEffect",

                            "EffectPattern" : "Eff_Bangboo_Shield_Death_End",

                            "Target" : "LocalAvatar"

                        },

                        {

                            "$type": "MoleMole.RemoveModifier",

                            "ModifierName": "ShieldModifier",

                            "Target": "Self"

                        },

                    ]

                }

            ],

            

            "OnRemoved":

            [

                //护盾技能CD开始读秒

                {

                    "$type": "MoleMole.PauseSkillCDAction",

                    "Target" : "Self",

                    "IsPause": false,

                    "SkillNames": 

                    [

                        "Bangboo_Eous001_Skill_Shield_Death"

                    ],

                },

                //去除内置CD

                {

                    "$type" : "MoleMole.RemoveModifier",

                    "ModifierName" : "CDModifier_Attack",

                    "Target" : "Self",

                },

                //去除指示物标记

                {

                    "$type": "MoleMole.RemoveModifier",

                    "ModifierName": "IndicatorBuffModifier",

                    "Target": "TeamAvatars"

                },

            ],

        },



        //护盾保护对象身上，用于监听受击

        "HitListenerModifier" : 

        {

            "ModifierStacking" : "Unique",

            "Duration" : -1,



            "OnBeingHitPre":

            [

                //免伤

                {

                    "$type": "MoleMole.ApplyModifier",

                    "ModifierName": "ReduceDamageModifier",

                    "Target": "Self",

                },

                //反击（有内置CD）

                {

                    "$type": "MoleMole.ApplyModifier",

                    "ModifierName": "CounterAttackModifier",

                    "Target": "Self",

                    "Predicates": 

                    [

                        {

                            "$type" : "MoleMole.ByAbilitySpecial",

                            "Target" : "Caster",

                            "ParamName": "AS_CDIndicate",

                            "ParamType": "int",

                            "CompareType": "Equal",

                            "Param" : 0,

                        },

                    ]

                },

            ],



            "OnGetItem" :

            [

                {

                    "$type": "MoleMole.ApplyModifier",

                    "ModifierName": "CDModifier_Recover", 

                    "Target": "Caster",

                    // "Predicates":

                    // [

                    //     {

                    //         "$type": "MoleMole.ByGetItem",

                    //         "GoodID": 1001,

                    //         "Target" : "LocalAvatar"

                    //     }

                    // ]

                }

            ],

        },



        //护盾保护对象身上，用于受击保护

        "ReduceDamageModifier" :

        {

            "ModifierStacking" : "Unique",

            "Duration" : -1,



            "OnBeingHitPre":

            [

                //免伤

                {

                    "$type": "MoleMole.ModifyAttackDataAction",

                    "Target" : "Self",

                    "PropertyKey": "Actor_DamageTakeRatio", 

                    "PropertyValue": -10, 

                },

                //霸体

                {

                    "$type" : "MoleMole.ApplyModifier",

                    "ModifierName" : "ResistBreakLevelModifier",

                    "Target" : "Self",

                },

                //受击表现

                {

                    "$type" : "MoleMole.ApplyModifier",

                    "ModifierName" : "SpecialEffectModifier",

                    "Target" : "Self",

                },

            ],



            "OnBeingHitResolved":

            [

                {

                    "$type" : "MoleMole.RemoveModifier",

                    "ModifierName" : "ResistBreakLevelModifier",

                    "Target" : "Self",

                },

                {

                    "$type": "MoleMole.RemoveModifier",

                    "ModifierName": "ReduceDamageModifier",

                    "Target": "Self"

                },

            ]

        },



        //护盾保护对象身上，用于特效表现内置CD

        "SpecialEffectModifier" :

        {

            "ModifierStacking" : "Unique",

            "Duration" : "%AS_InternalCD_SpecialEffect",

            "IgnoreTimeScale" : false,



            "OnAdded":

            [

                {

                    "$type": "MoleMole.ApplyMatCapAction",

                    "MatCapKey": "Bangboo_Shield_Death_ShaderMatCap_Hit",

                    "Target": "Self"

                },

            ],

        },



        //护盾保护对象身上，用于反击，同时触发内置CD

        "CounterAttackModifier" :

        {

            "ModifierStacking" : "Unique",

            "Duration" : -1,



            "OnBeingHitPre":

            [

                //由施法者发动的子弹打击

                {

                    "$type" : "MoleMole.TriggerAbilityAction",

                    "AbilityName" : "Bangboo_Eous001_Skill_Shield_Death_Attack_01",

                    "Target" : "Caster",

                },

                {

                    "$type" : "MoleMole.TriggerAbilityAction",

                    "AbilityName" : "Bangboo_Eous001_Skill_Shield_Death_Attack_02",

                    "Target" : "Caster",

                },

                //向施法者添加内置CD倒计时

                {

                    "$type": "MoleMole.ApplyModifier",

                    "ModifierName": "CDModifier_Attack",

                    "Target": "Caster"

                },

            ],



            "OnBeingHitResolved":

            [

                {

                    "$type": "MoleMole.RemoveModifier",

                    "ModifierName": "CounterAttackModifier",

                    "Target": "Self"

                },

            ]

        },



        //施法者身上，用于内置CD倒计时（造成伤害）

        "CDModifier_Attack" :

        {

            "ModifierStacking" : "Unique",

            "Duration" : "%AS_InternalCD_Attack",

            "IgnoreTimeScale" : false,



            "OnAdded":

            [

                {

                    "$type": "MoleMole.SetAbilitySpecialAction",

                    "Target": "Caster",

                    "ParamName": "AS_CDIndicate",

                    "ParamType": "int",

                    "ModifyFunction": "Replace",

                    "Param": 1

                },

            ],



            "OnRemoved":

            [

                {

                    "$type": "MoleMole.SetAbilitySpecialAction",

                    "Target": "Self",

                    "ParamName": "AS_CDIndicate",

                    "ParamType": "int",

                    "ModifyFunction": "Replace",

                    "Param": 0

                },

            ]

        },



        //施法者身上，用于内置CD倒计时（护盾回复）

        "CDModifier_Recover" :

        {

            "ModifierStacking" : "Unique",

            "Duration" : "%AS_InternalCD_Recover",

            "IgnoreTimeScale" : false,



            "OnAdded":

            [

                {

                    "$type": "MoleMole.ModifyArcanaCommonPropertyAction",

                    "ArcanaProperty": "ShieldDuration",

                    "Delta": "%AS_ShiledDurationDelta",

                    "Target": "Self"

                },

                {

                    "$type": "MoleMole.ModifyArcanaCommonPropertyAction",

                    "ArcanaProperty": "ShieldValue",

                    "Delta": "%AS_ShieldValueDelta",

                    "Target": "Self"

                },

                {

                    "$type": "MoleMole.ApplyMatCapAction",

                    "MatCapKey": "Bangboo_Shield_Death_ShaderMatCap_Recover",

                    "Target": "LocalAvatar"

                },

            ],

        },



        "ResistBreakLevelModifier":

        {

            "ModifierStacking": "MultipleRefresh",

            "Duration" : -1,



            "OnAdded":

            [

                {

                    "$type": "MoleMole.SetRBLAction",

                    "Tag": "Shield_Death",

                    "RBL": 3,

                    "Target": "Self"

                },

            ],



            "OnRemoved":

            [

                {

                    "$type": "MoleMole.UnsetRBLAction",

                    "Tag": "Shield_Death",

                    "Target": "Self"

                },

            ],

        },



        "IndicatorBuffModifier":

        {

            "Duration": -1,

            "IgnoreTimeScale" : false,

            "Buff":

            {

                "BuffID" : 500003,

                "IsOverrideDuration" : true

            }

        }

    },



    "AbilitySpecials":

    {

        //护盾值系数

        "AS_ShieldValueRatio":

        {

            "Value" : 2

        },



        //触发反击的内置CD

        "AS_InternalCD_Attack":

        {

            "Value" : 1

        },



        //触发回复的内置CD

        "AS_InternalCD_Recover":

        {

            "Value" : 1.5

        },



        //触发受击表现特效

        "AS_InternalCD_SpecialEffect":

        {

            "Value" : 0.15

        },



        //倒计时指示器，0为Ready，1为CD中

        "AS_CDIndicate":

        {

            "Value" : 0

        },



        //护盾时间回复量

        "AS_ShiledDurationDelta":

        {

            "Value" : 3.0

        },



        //护盾值回复量（10% * MaxEndurance）

        "AS_ShieldValueDelta":

        {

            "Value" : 0.0

        },

    }

}