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

411 lines
12 KiB
JSON

{
"AbilityName": "CampIdle_envbuff_04_shield",
"AbilitySpecials": {
"CurShieldAmount": {
"Value": 0
},
"MaxShieldAmount": {
"Value": 0
},
"ShieldAfterAdd": {
"Value": 0
},
"ShieldAmount": {
"Value": 0
},
"ShieldAmountInitial": {
"Value": 0
},
"ShieldGetCD": {
"Value": 2
},
"ShieldPercent": {
"Value": 0.025
},
"ShieldToMaxHp": {
"Value": 0
},
"Shield_tag": {
"Value": " ",
"ValueType": "String"
}
},
"AbilityStacking": "Unique",
"DefaultModifier": {
"OnAdded": [
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": "envbuff_04_shield_01",
"ParamName": "Shield_tag",
"ParamType": "String",
"Predicates": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 1
}
]
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": "envbuff_04_shield_02",
"ParamName": "Shield_tag",
"ParamType": "String",
"Predicates": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 2
}
]
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": "envbuff_04_shield_03",
"ParamName": "Shield_tag",
"ParamType": "String",
"Predicates": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 3
}
]
},
{
"$type": "ApplyModifier",
"ModifierName": "GetShield_01",
"Predicates": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 1
}
],
"Target": "Self"
},
{
"$type": "ApplyModifier",
"ModifierName": "GetShield_02",
"Predicates": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 2
}
],
"Target": "Self"
},
{
"$type": "ApplyModifier",
"ModifierName": "GetShield_03",
"Predicates": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 3
}
],
"Target": "Self"
}
]
},
"Modifiers": {
"GetShield_01": {
"Duration": -1,
"ModifierMixins": [
{
"$type": "HpShieldMixin",
"Duration": -1,
"IfTakeRestDamageWhenEmpty": true,
"Priority": 0,
"RecoverAmount": 0,
"RecoverPercentage": 0,
"Tag": "envbuff_04_shield_01",
"TotalValueConfig": {
"Amount": "%ShieldAmountInitial"
}
}
],
"ModifierStacking": "Unique"
},
"GetShield_02": {
"Duration": -1,
"ModifierMixins": [
{
"$type": "HpShieldMixin",
"Duration": -1,
"IfTakeRestDamageWhenEmpty": true,
"Priority": 0,
"RecoverAmount": 0,
"RecoverPercentage": 0,
"Tag": "envbuff_04_shield_02",
"TotalValueConfig": {
"Amount": "%ShieldAmountInitial"
}
}
],
"ModifierStacking": "Unique"
},
"GetShield_03": {
"Duration": -1,
"ModifierMixins": [
{
"$type": "HpShieldMixin",
"Duration": -1,
"IfTakeRestDamageWhenEmpty": true,
"Priority": 0,
"RecoverAmount": 0,
"RecoverPercentage": 0,
"Tag": "envbuff_04_shield_03",
"TotalValueConfig": {
"Amount": "%ShieldAmountInitial"
}
}
],
"ModifierStacking": "Unique"
}
},
"OnAbilityTrigger": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": false,
"Expression": "property(MaxHP)*0.5",
"ParamName": "MaxShieldAmount",
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(ShieldPercent)*property(MaxHP)",
"ParamName": "ShieldAmount",
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByPlayerPropertyValue",
"CompareType": "GreaterEqual",
"Denominator": "MaxSP",
"IsUsePercent": true,
"Numerator": "CurSP",
"Target": "Self",
"Val1": 1
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialsByHpShiledValueAction",
"ModifyFunction": "Replace",
"ParamName": "CurShieldAmount",
"ParamType": "Integer",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_01",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_01",
"Target": "Self",
"ValueType": "CurValue"
},
{
"$type": "SetAbilitySpecialsByHpShiledValueAction",
"ModifyFunction": "Replace",
"ParamName": "CurShieldAmount",
"ParamType": "Integer",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_02",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_02",
"Target": "Self",
"ValueType": "CurValue"
},
{
"$type": "SetAbilitySpecialsByHpShiledValueAction",
"ModifyFunction": "Replace",
"ParamName": "CurShieldAmount",
"ParamType": "Integer",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_03",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_03",
"Target": "Self",
"ValueType": "CurValue"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Less",
"Param": "%MaxShieldAmount",
"ParamName": "CurShieldAmount",
"ParamType": "Integer"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(CurShieldAmount)+specials(ShieldAmount)",
"ParamName": "ShieldAfterAdd",
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Greater",
"Param": "%MaxShieldAmount",
"ParamName": "ShieldAfterAdd",
"ParamType": "Integer"
}
],
"FailureActions": [
{
"$type": "ModifyHpShieldAction",
"CurValueDelta": "%ShieldAmount",
"MaxValueDelta": "%ShieldAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_01",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_01",
"Target": "Self"
},
{
"$type": "ModifyHpShieldAction",
"CurValueDelta": "%ShieldAmount",
"MaxValueDelta": "%ShieldAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_02",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_02",
"Target": "Self"
},
{
"$type": "ModifyHpShieldAction",
"CurValueDelta": "%ShieldAmount",
"MaxValueDelta": "%ShieldAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_03",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_03",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(MaxShieldAmount)-specials(CurShieldAmount)",
"ParamName": "ShieldAmount",
"Target": "Self",
"ValueType": "Integer"
},
{
"$type": "ModifyHpShieldAction",
"CurValueDelta": "%ShieldAmount",
"MaxValueDelta": "%ShieldAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_01",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_01",
"Target": "Self"
},
{
"$type": "ModifyHpShieldAction",
"CurValueDelta": "%ShieldAmount",
"MaxValueDelta": "%ShieldAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_02",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_02",
"Target": "Self"
},
{
"$type": "ModifyHpShieldAction",
"CurValueDelta": "%ShieldAmount",
"MaxValueDelta": "%ShieldAmount",
"Predicates": [
{
"$type": "ByAbilitySpecial",
"CompareType": "Equal",
"Param": "envbuff_04_shield_03",
"ParamName": "Shield_tag",
"ParamType": "String",
"Target": "Self"
}
],
"Tag": "envbuff_04_shield_03",
"Target": "Self"
}
]
}
]
}
]
}
]
}