{ "AbilityMixins": [ { "$type": "WatchEntityMixin", "EntityTypes": [ "Avatar" ], "OnEntityAwaked": [ { "$type": "RemoveModifier", "ModifierName": "DisorderListenModifier", "Target": "TeamAvatars" }, { "$type": "ApplyModifier", "ModifierName": "DisorderListenModifier", "Predicates": [ { "$type": "ByMathSkillSuccess" } ], "Target": "TeamAvatars" } ], "Relationships": [ "Allied" ] } ], "AbilityName": "Alice_MathSkill", "AbilitySpecials": { "AS_ElementAbnormalPowerRequire": { "Value": 100 }, "AS_ElementMysteryDeltaBase": { "Value": 5 }, "AS_ElementMysteryDeltaFinal": { "Value": 0 }, "AS_RecoverSabreCD": { "Value": 180, "ValueType": "Float" }, "AS_RecoverSabreCD_Cache": { "Value": 0, "ValueType": "Float" }, "AS_RecoverSabreCD_Real": { "Value": 0, "ValueType": "Float" }, "AS_RecoverSabre_Disorder": { "Value": 100 }, "AS_RecoverSabre_OnAdded": { "Value": 300 } }, "AbilityStacking": "Unique", "DefaultModifier": { "OnAdded": [ { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "(property(ElementAbnormalPower_Battle)-specials(AS_ElementAbnormalPowerRequire))*specials(AS_ElementMysteryDeltaBase)", "ParamName": "AS_ElementMysteryDeltaFinal", "Predicates": [ { "$type": "ByPlayerPropertyValue", "CompareType": "GreaterEqual", "IsUsePercent": false, "Numerator": "ElementAbnormalPower_Battle", "Val1": "%AS_ElementAbnormalPowerRequire" } ] }, { "$type": "ApplyModifier", "ModifierName": "ElementMysteryDeltaModifier", "Predicates": [ { "$type": "ByMathSkillSuccess" } ], "Target": "Self" }, { "$type": "BranchOperator", "Conditions": [ { "$type": "ByGameContextType", "GameType": "StreamingGame", "SubGameType": "All" } ], "FailureActions": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "AS_RecoverSabreCD_Real", "ParamType": "Float" } ], "SuccessActions": [ { "$type": "SetAbilitySpecialByExpression", "Expression": "scenevar(AS_RecoverSabreCD_Real)", "ParamName": "AS_RecoverSabreCD_Real", "Target": "Self", "ValueType": "Float" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": "%AS_RecoverSabreCD_Real", "ParamName": "AS_RecoverSabreCD_Cache", "ParamType": "Float" } ] }, { "$type": "BranchOperator", "Conditions": [ { "$type": "ByAbilitySpecial", "CompareType": "LessEqual", "Param": 0, "ParamName": "AS_RecoverSabreCD_Real", "ParamType": "Float" }, { "$type": "ByMathSkillSuccess" } ], "FailureActions": [ { "$type": "ApplyModifier", "ModifierName": "SmoothDecreaseCDModifier", "Target": "Self" } ], "SuccessActions": [ { "$type": "ModifyProperty", "Amount": "%AS_RecoverSabre_OnAdded", "CustomPropertyType": "SabreCounts", "PropertyModifyFunction": "Add", "PropertyType": "Custom" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": "%AS_RecoverSabreCD", "ParamName": "AS_RecoverSabreCD_Real", "ParamType": "Float" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": "%AS_RecoverSabreCD", "ParamName": "AS_RecoverSabreCD_Cache", "ParamType": "Float" }, { "$type": "ApplyModifier", "ModifierName": "SmoothDecreaseCDModifier", "Target": "Self" } ] } ], "OnTeamAvatarConstructed": [ { "$type": "RemoveModifier", "ModifierName": "DisorderListenModifier", "Target": "TeamAvatars" }, { "$type": "ApplyModifier", "ModifierName": "DisorderListenModifier", "Predicates": [ { "$type": "ByMathSkillSuccess" } ], "Target": "TeamAvatars" } ] }, "Modifiers": { "DisorderListenModifier": { "Duration": -1, "ModifierStacking": "Unique", "OnBuffAddToOther": [ { "$type": "ModifyProperty", "Amount": "%AS_RecoverSabre_Disorder", "CustomKey": "AbilityTarget_Alice", "CustomPropertyType": "SabreCounts", "Predicates": [ { "$type": "ByHandlingBuffGroup", "BuffGroupList": [ "Disorder" ] } ], "PropertyModifyFunction": "Add", "PropertyType": "Custom", "Target": "Custom" } ] }, "ElementMysteryDeltaModifier": { "ModifierMixins": [ { "$type": "ActionsOnPropertyChangeMixin", "DoInitialCheck": true, "PropertyActions": [ { "PropertyChangeActions": [ { "$type": "BranchOperator", "Conditions": [ { "$type": "ByPlayerPropertyValue", "CompareType": "GreaterEqual", "IsUsePercent": false, "Numerator": "ElementAbnormalPower_Battle", "Val1": "%AS_ElementAbnormalPowerRequire" } ], "FailureActions": [ { "$type": "SetAbilitySpecialAction", "DoRefresh": true, "ModifyFunction": "Replace", "Param": 0, "ParamName": "AS_ElementMysteryDeltaFinal", "ParamType": "Float" } ], "SuccessActions": [ { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "(property(ElementAbnormalPower_Battle)-specials(AS_ElementAbnormalPowerRequire))*specials(AS_ElementMysteryDeltaBase)", "ParamName": "AS_ElementMysteryDeltaFinal" } ] } ], "PropertyType": "ElementAbnormalPower_Battle" } ] } ], "Properties": { "Actor_ElementMysteryDelta": "%AS_ElementMysteryDeltaFinal" } }, "SmoothDecreaseCDModifier": { "Duration": "%AS_RecoverSabreCD", "ModifierMixins": [ { "$type": "SmoothBlendAbilitySpecialMixin", "AbilitySpecial": "AS_RecoverSabreCD_Real", "BlendCurve": "Linear", "BlendTime": "%AS_RecoverSabreCD_Cache", "TargetValue": 0 } ], "ModifierStacking": "Unique", "OnThinkInterval": [ { "$type": "RemoveModifier", "ModifierName": "SmoothDecreaseCDModifier", "Predicates": [ { "$type": "ByAbilitySpecial", "CompareType": "LessEqual", "Param": 0, "ParamName": "AS_RecoverSabreCD_Real", "ParamType": "Float" } ], "Target": "Self" } ], "ThinkInterval": 0.1 } } }