{ "AbilityMixins": [ { "$type": "AttachStateWithModifierMixin", "ConfigList": [ { "AnimatorStateName": "Attack_Landed", "FrameCountHigh": 170, "FrameCountLow": 1, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "SpecialAttackModifier" ] }, { "AnimatorStateName": "Attack_Landed_Burst", "FrameCountHigh": 170, "FrameCountLow": 1, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "SpecialAttackModifier" ] } ] } ], "AbilityName": "Bangboo_Battleboo_MathSkill", "AbilitySpecials": { "AS_AddedDamageRatio": { "Value": 0.25, "ValueType": "Float" }, "AS_AddedDamageRatio_Real": { "Value": 0.25, "ValueType": "Float" }, "AS_BuffCount": { "Value": 0, "ValueType": "Float" }, "AS_MathSkillCountParam": { "Value": 2, "ValueType": "Integer" }, "AS_PairACount": { "Value": 0 } }, "AbilityStacking": "Unique", "DefaultModifier": { "OnAdded": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "AS_PairACount", "ParamType": "Float" }, { "$type": "RemoveModifier", "ModifierName": "PairCheckModifier", "Target": "TeamAvatars" }, { "$type": "ApplyModifier", "ModifierName": "PairCheckModifier", "Target": "TeamAvatars" } ], "OnHitOther": [ { "$type": "BranchOperator", "Conditions": [ { "$type": "ByAbilitySpecial", "CompareType": "GreaterEqual", "Param": 2, "ParamName": "AS_BuffCount", "ParamType": "Float", "Target": "Self" } ], "FailureActions": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Trigger_AttackLanded", "ParamType": 1, "Predicates": [ { "$type": "ByAnimEventIDs", "AnimEventIDs": [ "Bangboo_Battleboo_Attackproperty_HitCheck" ] } ], "Target": "Self" } ], "SuccessActions": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Trigger_AttackLanded_Burst", "ParamType": 1, "Predicates": [ { "$type": "ByAnimEventIDs", "AnimEventIDs": [ "Bangboo_Battleboo_Attackproperty_HitCheck" ] } ], "Target": "Self" } ] } ], "OnTeamAvatarConstructed": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "AS_PairACount", "ParamType": "Float" }, { "$type": "RemoveModifier", "ModifierName": "PairCheckModifier", "Target": "TeamAvatars" }, { "$type": "ApplyModifier", "ModifierName": "PairCheckModifier", "Target": "TeamAvatars" } ] }, "Modifiers": { "BuffAdditiveCD": { "Duration": 5, "ModifierStacking": "Unique" }, "MathSkillModifier": { "Duration": -1, "ModifierStacking": "Unique", "OnHitOther": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Add", "Param": 1, "ParamName": "AS_BuffCount", "Predicates": [ { "$type": "ByAnimTagList", "TagList": [ "ChainAttack" ] }, { "$type": "ByNot", "Predicates": [ { "$type": "ByHasModifier", "ModifierNameList": [ "BuffAdditiveCD" ], "Target": "Caster" } ], "Target": "Caster" }, { "$type": "ByAbilitySpecial", "CompareType": "Less", "Param": 2, "ParamName": "AS_BuffCount", "ParamType": "Float", "Target": "Caster" } ], "Target": "Caster" }, { "$type": "ApplyModifier", "ModifierName": "BuffAdditiveCD", "Predicates": [ { "$type": "ByAnimTagList", "TagList": [ "ChainAttack" ] }, { "$type": "ByNot", "Predicates": [ { "$type": "ByHasModifier", "ModifierNameList": [ "BuffAdditiveCD" ], "Target": "Caster" } ], "Target": "Caster" }, { "$type": "ByAbilitySpecial", "CompareType": "Less", "Param": 2, "ParamName": "AS_BuffCount", "ParamType": "Float", "Target": "Caster" } ], "Target": "Caster" } ] }, "PairAModifier": { "Duration": 1, "IgnoreTimeScale": false, "ModifierStacking": "MultipleRefresh", "OnAdded": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Add", "Param": 1, "ParamName": "AS_PairACount", "ParamType": "Float" }, { "$type": "ApplyModifier", "ModifierName": "MathSkillModifier", "Predicates": [ { "$type": "ByAbilitySpecial", "CompareType": "GreaterEqual", "Param": "%AS_MathSkillCountParam", "ParamName": "AS_PairACount", "ParamType": "Float", "Target": "Self" }, { "$type": "ByBuddyTeamType", "CheckBuddyTeam": "Fighting", "Target": "Self" } ], "Target": "TeamAvatars" } ] }, "PairCheckModifier": { "Duration": 1, "IgnoreTimeScale": false, "ModifierStacking": "Unique", "OnAdded": [ { "$type": "ApplyModifier", "ModifierName": "PairAModifier", "Predicates": [ { "$type": "ByAvatarCamp", "Camp": 5, "Target": "Self" } ], "Target": "Caster" } ] }, "SpecialAttackModifier": { "Duration": -1, "IgnoreTimeScale": false, "ModifierStacking": "Unique", "OnHitOther": [ { "$type": "SetAbilitySpecialByExpression", "Expression": "specials(AS_AddedDamageRatio)*specials(AS_BuffCount)", "ParamName": "AS_AddedDamageRatio_Real", "Target": "Self", "ValueType": "Float" }, { "$type": "ModifyAttackDataAction", "PropertyKey": "Actor_AddedDamageRatio", "PropertyValue": "%AS_AddedDamageRatio_Real", "Target": "Self", "ValueType": "Float" } ], "OnRemoved": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "AS_BuffCount", "Target": "Self" } ] } } }