{ "AbilityMixins": [ { "$type": "AttachStateWithModifierMixin", "ConfigList": [ { "AnimatorStateName": "Attack_Normal_05", "FrameCountHigh": 0, "FrameCountLow": 0, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "Modifier_Attack_Normal_05_Instate" ] }, { "AnimatorStateName": "Evade_Blend_Left", "FrameCountHigh": 0, "FrameCountLow": 0, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "Modifier_Attack_Normal_05_Instate" ] }, { "AnimatorStateName": "Evade_Blend_Right_Front", "FrameCountHigh": 0, "FrameCountLow": 0, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "Modifier_Attack_Normal_05_Instate" ] }, { "AnimatorStateName": "Evade_Blend_Right_Back", "FrameCountHigh": 0, "FrameCountLow": 0, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "Modifier_Attack_Normal_05_Instate" ] }, { "AnimatorStateName": "Evade_Blend_Back", "FrameCountHigh": 0, "FrameCountLow": 0, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": true, "MaxFrameCountLow": false, "ModifierNameList": [ "Modifier_Attack_Normal_05_Instate" ] }, { "AnimatorStateName": "Attack_Normal_07", "FrameCountHigh": 9, "FrameCountLow": 0, "IsLoop": false, "LayerIndex": 0, "MaxFrameCountHigh": false, "MaxFrameCountLow": false, "ModifierNameList": [ "Modifier_Attack_Normal_05_Instate" ] } ] }, { "$type": "ActwithStateFrameMixin", "ConfigList": [ { "ActionList": [ { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Add", "Param": 1, "ParamName": "Attack_05_RepeatTime", "ParamType": "Integer", "Target": "Self" } ], "AnimatorStateName": "Attack_Normal_05", "ForceTriggerOnTransitionIn": true, "ForceTriggerOnTransitionOut": false, "Frame": 1, "IsLoop": false, "LayerIndex": 0 }, { "ActionList": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Bool_ReachTimeThreshold", "ParamType": 2, "Target": "Self" } ], "AnimatorStateName": "Attack_Normal_05", "ForceTriggerOnTransitionIn": false, "ForceTriggerOnTransitionOut": false, "Frame": 32, "IsLoop": false, "LayerIndex": 0 }, { "ActionList": [ { "$type": "FireEffect", "EffectPattern": "Eff_QingYi_Attack_Normal_05_13_Flash", "Predicates": [ { "$type": "ByAbilitySpecial", "CompareType": "GreaterEqual", "Param": 2, "ParamName": "Attack_05_RepeatTime", "ParamType": "Integer", "Target": "Self" }, { "$type": "ByAnimCtrlerParam", "BoolVal": false, "CompareType": "Equal", "ParamName": "Bool_ReachLongTimeThreshold", "ParamType": 2, "Target": "Self" } ], "Target": "Self" }, { "$type": "TriggerSoundAction", "Predicates": [ { "$type": "ByAbilitySpecial", "CompareType": "GreaterEqual", "Param": 2, "ParamName": "Attack_05_RepeatTime", "ParamType": "Integer", "Target": "Self" }, { "$type": "ByAnimCtrlerParam", "BoolVal": false, "CompareType": "Equal", "ParamName": "Bool_ReachLongTimeThreshold", "ParamType": 2, "Target": "Self" } ], "Target": "Self", "soundActionKey": "Play_SFX_Char_Skill_QingYi_Attack_Normal_07_Ready" }, { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Bool_ReachLongTimeThreshold", "ParamType": 2, "Predicates": [ { "$type": "ByAbilitySpecial", "CompareType": "GreaterEqual", "Param": 2, "ParamName": "Attack_05_RepeatTime", "ParamType": "Integer", "Target": "Self" }, { "$type": "ByAnimCtrlerParam", "BoolVal": false, "CompareType": "Equal", "ParamName": "Bool_ReachLongTimeThreshold", "ParamType": 2, "Target": "Self" } ], "Target": "Self" } ], "AnimatorStateName": "Attack_Normal_05", "ForceTriggerOnTransitionIn": false, "ForceTriggerOnTransitionOut": false, "Frame": 12, "IsLoop": false, "LayerIndex": 0 } ] } ], "AbilityName": "QingYi_LoopControl", "AbilitySpecials": { "Attack_05_RepeatTime": { "Value": 0 } }, "AbilityStacking": "Unique", "Modifiers": { "Modifier_Attack_Normal_05_Instate": { "Duration": -1, "IgnoreTimeScale": false, "ModifierStacking": "Replace", "OnAdded": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": false, "ParamName": "Bool_ReachTimeThreshold", "ParamType": 2, "Target": "Self" }, { "$type": "SetAnimCtrlerParamAction", "BoolVal": false, "ParamName": "Bool_ReachLongTimeThreshold", "ParamType": 2, "Target": "Self" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "Attack_05_RepeatTime", "ParamType": "Integer", "Target": "Self" } ], "OnRemoved": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": false, "ParamName": "Bool_ReachTimeThreshold", "ParamType": 2, "Target": "Self" }, { "$type": "SetAnimCtrlerParamAction", "BoolVal": false, "ParamName": "Bool_ReachLongTimeThreshold", "ParamType": 2, "Target": "Self" }, { "$type": "SetAbilitySpecialAction", "ModifyFunction": "Replace", "Param": 0, "ParamName": "Attack_05_RepeatTime", "ParamType": "Integer", "Target": "Self" } ] } } }