ZenlessData/Data/CampIdle_envbuff_02.json
2024-09-23 09:11:37 -03:00

160 lines
4.1 KiB
JSON

{
"AbilityName": "CampIdle_envbuff_02",
"AbilitySpecials": {
"AS_Damage": {
"Value": 0
},
"AS_RecoverFever_Initial": {
"Value": 1200
},
"DamageToRecoverRatio": {
"Value": 1
},
"FeverRecover": {
"Value": 0
},
"HpAfterRecover": {
"Value": 0
},
"HpRecoverAmount": {
"Value": 0.2
},
"HpRecoverMax": {
"Value": 0
},
"HpToFeverRatio": {
"Value": 1
},
"MaxHpRecoverRatio": {
"Value": 0.1
}
},
"AbilityStacking": "Unique",
"DefaultModifier": {
"OnAdded": [
{
"$type": "PushChangeMaxFeverAction",
"MaxFeverValue": 9999,
"Tag": "Player_Change_Max_Fever"
},
{
"$type": "RecoverFeverAction",
"Amount": "%AS_RecoverFever_Initial",
"IgnoreRatio": true,
"Percentage": 0,
"Target": "Self"
}
],
"OnDamageCalculated": [
{
"$type": "SetAbilitySpecialByAttackData",
"AttackDataType": "Damage",
"DoRefresh": true,
"ModifyFunction": "Replace",
"ParamName": "AS_Damage",
"Target": "Self"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_Damage)*specials(DamageToRecoverRatio)",
"ParamName": "HpRecoverAmount",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "ApplyModifier",
"ModifierName": "RecoverHp",
"Target": "TeamAvatars"
}
],
"OnRemoved": [
{
"$type": "PopChangeMaxFeverAction",
"Tag": "Player_Change_Max_Fever"
}
]
},
"Modifiers": {
"RecoverHp": {
"ModifierStacking": "Replace",
"OnAdded": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "property(MaxHP)*specials(MaxHpRecoverRatio)",
"ParamName": "HpRecoverMax",
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(HpRecoverMax)",
"ParamName": "HpRecoverAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "LessEqual",
"Param": "%HpRecoverAmount",
"ParamName": "HpRecoverMax",
"ParamType": "Integer"
}
],
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "property(CurHP)+specials(HpRecoverAmount)",
"ParamName": "HpAfterRecover",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByPlayerPropertyValue",
"CompareType": "GreaterEqual",
"IsUsePercent": false,
"Numerator": "MaxHP",
"Target": "Self",
"Val1": "%HpAfterRecover"
}
],
"FailureActions": [
{
"$type": "RecoverHPAction",
"Amount": "%HpRecoverAmount",
"Target": "Self"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "(specials(HpAfterRecover)-property(MaxHP))*specials(HpToFeverRatio)",
"ParamName": "FeverRecover",
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "RecoverFeverAction",
"Amount": "%FeverRecover",
"IgnoreRatio": false,
"Percentage": 0,
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "RecoverHPAction",
"Amount": "%HpRecoverAmount",
"Target": "Self"
}
]
}
]
}
}
}