1
0
ZenlessData/Data/_unsorted/YiXuan_HPReset.json

409 lines
12 KiB
JSON

{
"AbilityName": "YiXuan_HPReset",
"AbilitySpecials": {
"AS_Player1_HPPercentage": {
"Value": 0,
"ValueType": "Float"
},
"AS_Player1_ResetHP": {
"Value": 0,
"ValueType": "Float"
},
"AS_Player1_Valid": {
"Value": 0,
"ValueType": "Integer"
},
"AS_Player2_HPPercentage": {
"Value": 0,
"ValueType": "Float"
},
"AS_Player2_ResetHP": {
"Value": 0,
"ValueType": "Float"
},
"AS_Player2_Valid": {
"Value": 0,
"ValueType": "Integer"
},
"AS_Player3_HPPercentage": {
"Value": 0,
"ValueType": "Float"
},
"AS_Player3_ResetHP": {
"Value": 0,
"ValueType": "Float"
},
"AS_Player3_Valid": {
"Value": 0,
"ValueType": "Integer"
},
"AS_ResetToHPPercentage": {
"Value": 0,
"ValueType": "Float"
},
"AS_TeamHPPercentage": {
"Value": 0,
"ValueType": "Float"
}
},
"AbilityStacking": "Unique",
"Modifiers": {
"IndexCheckModifier": {
"Duration": 5,
"ModifierStacking": "Replace",
"OnAdded": [
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 1
},
{
"$type": "ByAliveState",
"AliveState": "Alive",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "property(CurHP)\/property(MaxHP)",
"ParamName": "AS_Player1_HPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_TeamHPPercentage)+specials(AS_Player1_HPPercentage)",
"ParamName": "AS_TeamHPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 1,
"ParamName": "AS_Player1_Valid",
"ParamType": "Integer"
}
]
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 2
},
{
"$type": "ByAliveState",
"AliveState": "Alive",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "property(CurHP)\/property(MaxHP)",
"ParamName": "AS_Player2_HPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_TeamHPPercentage)+specials(AS_Player2_HPPercentage)",
"ParamName": "AS_TeamHPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 1,
"ParamName": "AS_Player2_Valid",
"ParamType": "Integer"
}
]
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 3
},
{
"$type": "ByAliveState",
"AliveState": "Alive",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "property(CurHP)\/property(MaxHP)",
"ParamName": "AS_Player3_HPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_TeamHPPercentage)+specials(AS_Player3_HPPercentage)",
"ParamName": "AS_TeamHPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 1,
"ParamName": "AS_Player3_Valid",
"ParamType": "Integer"
}
]
}
]
},
"ResetModifier": {
"Duration": 3,
"ModifierStacking": "Replace",
"OnAdded": [
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 1
},
{
"$type": "ByAliveState",
"AliveState": "Alive",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_ResetToHPPercentage)-specials(AS_Player1_HPPercentage)",
"ParamName": "AS_Player1_ResetHP",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAbilitySpecial",
"CompareType": "GreaterEqual",
"Param": 0,
"ParamName": "AS_Player1_ResetHP",
"ParamType": "Float",
"Target": "Self"
}
],
"FailureActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_Player1_ResetHP)*(-1)",
"ParamName": "AS_Player1_ResetHP",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "DecreaseHPAction",
"IgnoreInvincible": true,
"Percentage": "%AS_Player1_ResetHP"
}
],
"SuccessActions": [
{
"$type": "RecoverHPAction",
"Percentage": "%AS_Player1_ResetHP"
}
]
}
]
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 2
},
{
"$type": "ByAliveState",
"AliveState": "Alive",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_ResetToHPPercentage)-specials(AS_Player2_HPPercentage)",
"ParamName": "AS_Player2_ResetHP",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAbilitySpecial",
"CompareType": "GreaterEqual",
"Param": 0,
"ParamName": "AS_Player2_ResetHP",
"ParamType": "Float",
"Target": "Self"
}
],
"FailureActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_Player2_ResetHP)*(-1)",
"ParamName": "AS_Player2_ResetHP",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "DecreaseHPAction",
"IgnoreInvincible": true,
"Percentage": "%AS_Player2_ResetHP"
}
],
"SuccessActions": [
{
"$type": "RecoverHPAction",
"Percentage": "%AS_Player2_ResetHP"
}
]
}
]
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAvatarTeamIndex",
"Target": "Self",
"TeamIndex": 3
},
{
"$type": "ByAliveState",
"AliveState": "Alive",
"Target": "Self"
}
],
"SuccessActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_ResetToHPPercentage)-specials(AS_Player3_HPPercentage)",
"ParamName": "AS_Player3_ResetHP",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "BranchOperator",
"Conditions": [
{
"$type": "ByAbilitySpecial",
"CompareType": "GreaterEqual",
"Param": 0,
"ParamName": "AS_Player3_ResetHP",
"ParamType": "Float",
"Target": "Self"
}
],
"FailureActions": [
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_Player3_ResetHP)*(-1)",
"ParamName": "AS_Player3_ResetHP",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "DecreaseHPAction",
"IgnoreInvincible": true,
"Percentage": "%AS_Player3_ResetHP"
}
],
"SuccessActions": [
{
"$type": "RecoverHPAction",
"Percentage": "%AS_Player3_ResetHP"
}
]
}
]
}
]
}
},
"OnAbilityTrigger": [
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 0,
"ParamName": "AS_Player1_Valid",
"ParamType": "Integer"
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 0,
"ParamName": "AS_Player2_Valid",
"ParamType": "Integer"
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 0,
"ParamName": "AS_Player3_Valid",
"ParamType": "Integer"
},
{
"$type": "SetAbilitySpecialAction",
"ModifyFunction": "Replace",
"Param": 0,
"ParamName": "AS_TeamHPPercentage",
"ParamType": "Integer"
},
{
"$type": "ApplyModifier",
"ModifierName": "IndexCheckModifier",
"Target": "TeamAvatars"
},
{
"$type": "SetAbilitySpecialByExpression",
"DoRefresh": true,
"Expression": "specials(AS_TeamHPPercentage)\/(specials(AS_Player1_Valid)+specials(AS_Player2_Valid)+specials(AS_Player3_Valid))",
"ParamName": "AS_ResetToHPPercentage",
"Target": "Self",
"ValueType": "Float"
},
{
"$type": "ApplyModifier",
"ModifierName": "ResetModifier",
"Target": "TeamAvatars"
}
]
}