{ "AbilityName": "Yuzuha_Talent_01", "AbilitySpecials": { "AS_SpRecover": { "Value": 10 }, "AS_SpRecoverCD": { "Value": 10 }, "AS_SpRecoverCD_Cache": { "Value": 0, "ValueType": "Float" }, "AS_SpRecoverCD_Real": { "Value": 0, "ValueType": "Float" } }, "AbilityStacking": "Unique", "DefaultModifier": { "OnAdded": [ { "$type": "BranchOperator", "Conditions": [ { "$type": "ByGameContextType", "GameType": "StreamingGame", "SubGameType": "All" } ], "FailureActions": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "AS_SpRecoverCD_Real", "ParamType": "Float" } ], "SuccessActions": [ { "$type": "SetAbilitySpecialByExpression", "Expression": "scenevar(AS_SpRecoverCD_Real)", "ParamName": "AS_SpRecoverCD_Real", "Target": "Self", "ValueType": "Float" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": "%AS_SpRecoverCD_Real", "ParamName": "AS_SpRecoverCD_Cache", "ParamType": "Float" } ] }, { "$type": "BranchOperator", "Conditions": [ { "$type": "ByAbilitySpecial", "CompareType": "LessEqual", "Param": 0, "ParamName": "AS_SpRecoverCD_Real", "ParamType": "Float" } ], "FailureActions": [ { "$type": "ApplyModifier", "ModifierName": "SmoothDecreaseCDModifier", "Target": "Self" } ], "SuccessActions": [ { "$type": "RecoverSPAction", "Amount": "%AS_SpRecover", "IgnoreRatio": false, "Percentage": 0, "Target": "Self" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": "%AS_SpRecoverCD", "ParamName": "AS_SpRecoverCD_Real", "ParamType": "Float" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": "%AS_SpRecoverCD", "ParamName": "AS_SpRecoverCD_Cache", "ParamType": "Float" }, { "$type": "ApplyModifier", "ModifierName": "SmoothDecreaseCDModifier", "Target": "Self" } ] } ] }, "Modifiers": { "SmoothDecreaseCDModifier": { "Duration": "%AS_SpRecoverCD", "ModifierMixins": [ { "$type": "SmoothBlendAbilitySpecialMixin", "AbilitySpecial": "AS_SpRecoverCD_Real", "BlendCurve": "Linear", "BlendTime": "%AS_SpRecoverCD_Cache", "TargetValue": 0 } ], "ModifierStacking": "Unique", "OnThinkInterval": [ { "$type": "RemoveModifier", "ModifierName": "SmoothDecreaseCDModifier", "Predicates": [ { "$type": "ByAbilitySpecial", "CompareType": "LessEqual", "Param": 0, "ParamName": "AS_SpRecoverCD_Real", "ParamType": "Float" } ], "Target": "Self" } ], "ThinkInterval": 0.1 } } }