ZenlessData/Data/Ben_ShieldManager.json

271 lines
7.6 KiB
JSON
Raw Normal View History

{
"AbilityMixins": [
{
"$type": "AttachStateWithModifierMixin",
"ConfigList": [
{
"AnimatorStateName": "Attack_Branch_01_Start",
"FrameCountHigh": 0,
"FrameCountLow": 0,
"IsLoop": false,
"LayerIndex": 0,
"MaxFrameCountHigh": true,
"MaxFrameCountLow": false,
"ModifierNameList": [
"HPShieldModifier_Controller"
]
},
{
"AnimatorStateName": "Attack_Branch_01_Loop",
"FrameCountHigh": 0,
"FrameCountLow": 0,
"IsLoop": true,
"LayerIndex": 0,
"MaxFrameCountHigh": true,
"MaxFrameCountLow": false,
"ModifierNameList": [
"HPShieldModifier_Controller"
]
},
{
"AnimatorStateName": "Attack_Branch_02_Start",
"FrameCountHigh": 0,
"FrameCountLow": 0,
"IsLoop": false,
"LayerIndex": 0,
"MaxFrameCountHigh": true,
"MaxFrameCountLow": false,
"ModifierNameList": [
"HPShieldModifier_Controller"
]
},
{
"AnimatorStateName": "Attack_Branch_02_Loop",
"FrameCountHigh": 0,
"FrameCountLow": 0,
"IsLoop": true,
"LayerIndex": 0,
"MaxFrameCountHigh": true,
"MaxFrameCountLow": false,
"ModifierNameList": [
"HPShieldModifier_Controller"
]
}
]
}
],
"AbilityName": "Ben_ShieldManager",
"AbilitySpecials": {
"AS_HpShieldComsumeAmount": {
"Value": 0.1
},
"AS_HpShieldComsumePercentage": {
"Value": 0.1
},
"AS_HpShieldRatioCur": {
"Value": 0
},
"AS_HpShieldRatioMax": {
"Value": 0.5
},
"AS_HpShieldRecoverPercentage": {
"Value": 0.1
},
"AS_HpShieldRemainAmount": {
"Value": 0
},
"AS_HpShieldRemainPercentage": {
"Value": 0
}
},
"AbilityStacking": "Unique",
"DefaultModifier": {
"OnAdded": [
{
"$type": "ModifyProperty",
"Amount": "%AS_HpShieldRatioMax",
"CustomPropertyType": "HpShieldRatioCur",
"IsUsePercentage": false,
"Percentage": 0,
"PropertyModifyFunction": "Replace",
"PropertyType": "Custom"
},
{
"$type": "ModifyProperty",
"Amount": "%AS_HpShieldRatioMax",
"CustomPropertyType": "HpShieldRatioMax",
"IsUsePercentage": false,
"Percentage": 0,
"PropertyModifyFunction": "Replace",
"PropertyType": "Custom"
},
{
"$type": "ApplyModifier",
"ModifierName": "HpShieldModifier_Recover",
"Target": "Self"
}
]
},
"Modifiers": {
"HPShieldModifier": {
"Duration": -1,
"ModifierMixins": [
{
"$type": "HpShieldMixin",
"AddedActions": [
{
"$type": "ModifyMaterialPropertyAction",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Greater",
"Param": 0,
"ParamName": "AS_HpShieldRatioCur",
"ParamType": "Float"
}
],
"Tag": "Avatar_Male_Size03_Ben_MA_BlockState_Mat01_OverrideRimGlow_01",
"Target": "Self",
"key": "Avatar_Male_Size03_Ben_MA_BlockState_Mat01_OverrideRimGlow_01"
}
],
"Duration": -1,
"EmptyActions": [
{
"$type": "InterruptMaterialPropertyAction",
"Tag": "Avatar_Male_Size03_Ben_MA_BlockState_Mat01_OverrideRimGlow_01",
"Target": "Self"
}
],
"Priority": 0,
"RecoverAmount": "%AS_HpShieldComsumeAmount",
"RecoverPercentage": 0,
"RemovedActions": [
{
"$type": "InterruptMaterialPropertyAction",
"Tag": "Avatar_Male_Size03_Ben_MA_BlockState_Mat01_OverrideRimGlow_01",
"Target": "Self"
}
],
"Tag": "Ben_Block_HpShield",
"TotalValueConfig": {
"Amount": 0,
"Percentage": "%AS_HpShieldRatioCur",
"PropertyType": "MaxHP"
}
}
],
"ModifierStacking": "Unique"
},
"HPShieldModifier_Controller": {
"Duration": -1,
"ModifierStacking": "Unique",
"OnAdded": [
{
"$type": "ModifyProperty",
"Amount": 0,
"CustomPropertyType": "HpShieldRatioCur",
"IsUsePercentage": false,
"Percentage": 1,
"Predicates": [
{
"$type": "ByAnimatorStateNormalizedTime",
"AnimatorStateName": "Attack_Branch_02_Start",
"FrameCountHigh": 0,
"FrameCountLow": 0,
"IsLoop": false,
"LayerIndex": 0,
"MaxFrameCountHigh": true,
"MaxFrameCountLow": false
}
],
"PropertyModifyFunction": "Replace",
"PropertyType": "Custom"
},
{
"$type": "SetAbilitySpecialsByPropertyAction",
"CustomPropertyType": "HpShieldRatioCur",
"ModifyFunction": "Replace",
"ParamName": "AS_HpShieldRatioCur",
"Percentage": 1,
"PropertyType": "Custom",
"Target": "Self"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "property(MaxHP)*property(HpShieldRatioMax)*specials(AS_HpShieldComsumePercentage)*(-1)",
"ParamName": "AS_HpShieldComsumeAmount",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "ApplyModifier",
"ModifierName": "HPShieldModifier",
"Target": "Self"
},
{
"$type": "RemoveModifier",
"ModifierName": "HpShieldModifier_Recover",
"Target": "Self"
}
],
"OnRemoved": [
{
"$type": "SetAbilitySpecialsByHpShiledValueAction",
"ModifyFunction": "Replace",
"ParamName": "AS_HpShieldRemainAmount",
"ParamType": "Float",
"Tag": "Ben_Block_HpShield",
"Target": "Self",
"ValueType": "CurValue"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_HpShieldRemainAmount)\/property(MaxHP)",
"ParamName": "AS_HpShieldRemainPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "ModifyProperty",
"Amount": "%AS_HpShieldRemainPercentage",
"CustomPropertyType": "HpShieldRatioCur",
"IsUsePercentage": false,
"Percentage": 0,
"PropertyModifyFunction": "Replace",
"PropertyType": "Custom"
},
{
"$type": "RemoveModifier",
"ModifierName": "HPShieldModifier",
"Target": "Self"
},
{
"$type": "ApplyModifier",
"ModifierName": "HpShieldModifier_Recover",
"Target": "Self"
}
]
},
"HpShieldModifier_Recover": {
"Duration": -1,
"ModifierMixins": [
{
"$type": "SmoothChangePropertyMixin",
"PropertyItems": [
{
"Amount": 0,
"CustomPropertyType": "HpShieldRatioCur",
"Percentage": "%AS_HpShieldRecoverPercentage",
"PropertyModifyFunction": "Add",
"PropertyType": "Custom"
}
]
}
],
"ModifierStacking": "Unique"
}
}
}