{ "AbilityMixins": [ { "$type": "MultiPartMixin", "BindHitColliderList": [ "HitCollider_Tail_Box_01", "HitCollider_Tail_Box_02", "HitCollider_Tail_Box_03" ], "CanHitAfterDestroyed": true, "IsUseHitFlowOnDestroyed": true, "MaxPartHP": "%MaxPartHP", "OnPartDestroy": [ { "$type": "SetAnimCtrlerParamAction", "IntVal": 3, "ParamName": "Int_PartDestroyIndex", "ParamType": 3, "Target": "Self" }, { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Trigger_OnPartDestroyed", "ParamType": 1, "Target": "Self" }, { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Bool_PartDestroyed_Tail", "ParamType": 2, "Target": "Self" }, { "$type": "ModifyProperty", "Amount": 1, "CustomPropertyType": "PartDestroyedCount", "IsUsePercentage": false, "Percentage": 0, "PropertyModifyFunction": "Add", "PropertyType": "Custom" }, { "$type": "RemoveModifier", "ModifierName": "TailEffectModifier" }, { "$type": "SendCustomEvent", "EventKey": "Gepetto_PartDestroy", "IsGlobal": true }, { "$type": "ModifyPartParamAction", "Amount": "%RecoverPartHP", "ModifyFunction": "Add", "ParamType": "PartHP", "PartName": "Geppetto_Part_RightHand", "Predicates": [ { "$type": "ByNot", "Predicates": [ { "$type": "ByPartDestroy", "PartName": "Geppetto_Part_RightHand", "Target": "Self" } ] } ], "Target": "Self" }, { "$type": "ModifyPartParamAction", "Amount": "%RecoverPartHP", "ModifyFunction": "Add", "ParamType": "PartHP", "PartName": "Geppetto_Part_LeftHand", "Predicates": [ { "$type": "ByNot", "Predicates": [ { "$type": "ByPartDestroy", "PartName": "Geppetto_Part_LeftHand", "Target": "Self" } ] } ], "Target": "Self" }, { "$type": "ShowSpecialDamageTextAction", "AttachPoint": "Ctr_HeadT", "Target": "Self", "TextType": "PartDestroy" }, { "$type": "SendCustomEvent", "EventKey": "Geppetto_Achievement_1675" }, { "$type": "SendCustomEvent", "EventKey": "Geppetto_Achievement_1677" }, { "$type": "SendCustomEvent", "EventKey": "Geppetto_Achievement_1679", "Predicates": [ { "$type": "ByOr", "Predicates": [ { "$type": "ByIsStunDestroyed", "IsStunDestroyed": true, "Target": "Self" }, { "$type": "ByIsInZoneTags", "Tags": [ "PartBreakStun" ], "Target": "Self" } ] } ] } ], "OnPartReactivated": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": false, "ParamName": "Bool_PartDestroyed_Tail", "ParamType": 2, "Target": "Self" } ], "OwnerDamagetakeRatio": 0, "PartDamageTakeRatio": 0, "PartHP": "%InitPartHP", "PartName": "Geppetto_Part_Tail" }, { "$type": "AttachStateWithModifierMixin", "ConfigList": [ { "AnimatorStateName": "Attack_12", "FrameCountHigh": 428, "FrameCountLow": 170, "ModifierNameList": [ "Attack12TailBreak" ] } ] } ], "AbilityName": "Geppetto_Part_Tail", "AbilitySpecials": { "AS_InitPartHP_Ratio": { "Value": 0.1 }, "AS_MaxPartHP_Ratio": { "Value": 0.1 }, "AS_RecoverPartHP_Ratio": { "Value": 0.15 }, "HpReduceAmount": { "Value": 1 }, "InitPartHP": { "Value": 1 }, "MaxPartHP": { "Value": 1 }, "RecoverPartHP": { "Value": 1 } }, "AbilityStacking": "Unique", "Modifiers": { "Attack12TailBreak": { "Duration": -1, "ModifierStacking": "Unique", "OnAdded": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": true, "ParamName": "Bool_IsAttack12", "ParamType": 2 } ], "OnRemoved": [ { "$type": "ApplyModifier", "ModifierName": "Attack12TailBreak_02" } ] }, "Attack12TailBreak_02": { "Duration": 0.03, "ModifierStacking": "Unique", "OnRemoved": [ { "$type": "SetAnimCtrlerParamAction", "BoolVal": false, "ParamName": "Bool_IsAttack12", "ParamType": 2 } ] }, "TailEffectModifier": { "Duration": -1, "ModifierStacking": "Unique", "OnAdded": [ { "$type": "AttachEffect", "AttachEffectPosRot": { "CoordsOption": "ReferTarget", "Offset": { "AngleOffset": { "x": 0, "y": 0, "z": 0 }, "IsUseRotationXZ": true, "IsUseRotationY": true, "PositionOffset": { "x": 0, "y": 0, "z": 0 } }, "TargetOption": { "$type": "ConfigPosRotReferTarget", "AttachPoint": "Ctr_M_Tail", "IsUseAttachPointPos": true, "IsUseAttachPointRotation": true, "OffsetReferTarget": "Self" } }, "EffectPattern": "Eff_Monster_Geppetto_PartEffect_Tail_01_Loop", "Target": "Self" } ], "OnRemoved": [ { "$type": "FireEffect", "EffectPattern": "Eff_Monster_Geppetto_PartEffect_HandTail_01_Break", "FireEffectPosRot": { "CoordsOption": "ReferTarget", "Offset": { "AngleOffset": { "x": 0, "y": 0, "z": 0 }, "IsUseRotationXZ": true, "IsUseRotationY": true, "PositionOffset": { "x": 0, "y": 0, "z": 0 } }, "TargetOption": { "$type": "ConfigPosRotReferTarget", "AttachPoint": "Ctr_HeadT", "IsUseAttachPointPos": true, "IsUseAttachPointRotation": true, "OffsetReferTarget": "Self" } }, "Target": "Self" } ] } }, "OnAbilityStart": [ { "$type": "ApplyModifier", "ModifierName": "TailEffectModifier" }, { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "property(MaxHP)*specials(AS_MaxPartHP_Ratio)", "ParamName": "MaxPartHP", "ValueType": "Float" }, { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "property(MaxHP)*specials(AS_InitPartHP_Ratio)", "ParamName": "InitPartHP", "ValueType": "Float" }, { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "property(MaxHP)*specials(AS_RecoverPartHP_Ratio)", "ParamName": "RecoverPartHP", "ValueType": "Float" }, { "$type": "ModifyPartParamAction", "Amount": "%MaxPartHP", "ModifyFunction": "Replace", "ParamType": "MaxPartHP", "PartName": "Geppetto_Part_Tail", "Target": "Self" }, { "$type": "ModifyPartParamAction", "Amount": "%MaxPartHP", "ModifyFunction": "Replace", "ParamType": "PartHP", "PartName": "Geppetto_Part_Tail", "Target": "Self" } ], "OnAdded": [ { "$type": "ApplyModifier", "ModifierName": "TailEffectModifier" }, { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "property(MaxHP)*specials(AS_InitPartHP_Ratio)", "ParamName": "MaxPartHP", "ValueType": "Float" }, { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "property(MaxHP)*specials(AS_InitPartHP_Ratio)", "ParamName": "InitPartHP", "ValueType": "Float" }, { "$type": "SetAbilitySpecialByExpression", "DoRefresh": true, "Expression": "property(MaxHP)*specials(AS_RecoverPartHP_Ratio)", "ParamName": "RecoverPartHP", "ValueType": "Float" }, { "$type": "ModifyPartParamAction", "Amount": "%InitPartHP", "ModifyFunction": "Replace", "ParamType": "MaxPartHP", "PartName": "Geppetto_Part_Tail", "Target": "Self" }, { "$type": "ModifyPartParamAction", "Amount": "%InitPartHP", "ModifyFunction": "Replace", "ParamType": "PartHP", "PartName": "Geppetto_Part_Tail", "Target": "Self" } ] }