{
  "AbilityMixins": [
    {
      "$type": "MultiPartMixin",
      "BindHitColliderList": [
        "HitCollider_BLLeg"
      ],
      "CanHitAfterDestroyed": true,
      "IsUseHitFlowOnDestroyed": true,
      "MaxPartHP": "%MaxPartHP",
      "OnPartDestroy": [
        {
          "$type": "SetAnimCtrlerParamAction",
          "IntVal": 3,
          "ParamName": "Int_HitPartIndex",
          "ParamType": 3,
          "Target": "Self"
        },
        {
          "$type": "SetAnimCtrlerParamAction",
          "BoolVal": true,
          "ParamName": "Trigger_OnPartDestroyed",
          "ParamType": 1,
          "Target": "Self"
        },
        {
          "$type": "SetAnimCtrlerParamAction",
          "BoolVal": true,
          "ParamName": "Bool_PartDestroyed_BLLeg",
          "ParamType": 2,
          "Target": "Self"
        },
        {
          "$type": "PushRenderVisibleAction",
          "Paths": [
            "Base_02_03_P"
          ],
          "Tag": "Base_02_03_P",
          "Visible": false
        },
        {
          "$type": "ApplyModifier",
          "ModifierName": "PileDriver_Part_BLLeg_DestroyedEffect",
          "Target": "Self"
        },
        {
          "$type": "DamageByAttackPropertyAction",
          "AnimEventID": "Monster_PileDriver_PartDestroyed_Leg_Attackproperty_01",
          "AttachPoint": "Skn_BL_Leg_04",
          "Target": "Self"
        },
        {
          "$type": "SetAbilitySpecialByExpression",
          "DoRefresh": true,
          "Expression": "specials(AS_PartDestroy_StunPercentage)*property(MaxStun)",
          "ParamName": "StunRecoverAmount",
          "ValueType": "Float"
        },
        {
          "$type": "RecoverStunAction",
          "Amount": "%StunRecoverAmount",
          "Percentage": 0,
          "Target": "Self"
        },
        {
          "$type": "ModifyPartParamAction",
          "Amount": "%RecoverPartHP",
          "ModifyFunction": "Add",
          "ParamType": "PartHP",
          "PartName": "PileDriver_FLLeg",
          "Predicates": [
            {
              "$type": "ByNot",
              "Predicates": [
                {
                  "$type": "ByPartDestroy",
                  "PartName": "PileDriver_FLLeg",
                  "Target": "Self"
                }
              ]
            }
          ],
          "Target": "Self"
        },
        {
          "$type": "ModifyPartParamAction",
          "Amount": "%RecoverPartHP",
          "ModifyFunction": "Add",
          "ParamType": "PartHP",
          "PartName": "PileDriver_FRLeg",
          "Predicates": [
            {
              "$type": "ByNot",
              "Predicates": [
                {
                  "$type": "ByPartDestroy",
                  "PartName": "PileDriver_FRLeg",
                  "Target": "Self"
                }
              ]
            }
          ],
          "Target": "Self"
        },
        {
          "$type": "ModifyPartParamAction",
          "Amount": "%RecoverPartHP",
          "ModifyFunction": "Add",
          "ParamType": "PartHP",
          "PartName": "PileDriver_BRLeg",
          "Predicates": [
            {
              "$type": "ByNot",
              "Predicates": [
                {
                  "$type": "ByPartDestroy",
                  "PartName": "PileDriver_BRLeg",
                  "Target": "Self"
                }
              ]
            }
          ],
          "Target": "Self"
        }
      ],
      "OnPartHit": [
        {
          "$type": "SetAnimCtrlerParamAction",
          "IntVal": 3,
          "ParamName": "Int_HitPartIndex",
          "ParamType": 3,
          "Target": "Self"
        },
        {
          "$type": "SetAnimCtrlerParamAction",
          "BoolVal": true,
          "ParamName": "Trigger_PartHit",
          "ParamType": 1,
          "Target": "Self"
        }
      ],
      "OwnerDamagetakeRatio": 0,
      "PartDamageTakeRatio": 0,
      "PartHP": "%InitPartHP",
      "PartName": "PileDriver_BLLeg"
    }
  ],
  "AbilityName": "PileDriver_Part_BLLeg",
  "AbilitySpecials": {
    "AS_InitPartHP_Ratio": {
      "Value": 0.1
    },
    "AS_MaxPartHP_Ratio": {
      "Value": 0.1
    },
    "AS_PartDestroy_StunPercentage": {
      "Value": 0.5
    },
    "AS_RecoverPartHP_Ratio": {
      "Value": 0.1
    },
    "HpReduceAmount": {
      "Value": 1
    },
    "InitPartHP": {
      "Value": 1
    },
    "MaxPartHP": {
      "Value": 1
    },
    "RecoverPartHP": {
      "Value": 1
    },
    "StunRecoverAmount": {
      "Value": 1
    }
  },
  "AbilityStacking": "Unique",
  "Modifiers": {
    "PileDriver_Part_BLLeg_DestroyedEffect": {
      "Duration": -1,
      "ModifierStacking": "Unique",
      "OnAdded": [
        {
          "$type": "FireEffect",
          "EffectPattern": "Eff_Monster_BoringMachine_LegBreak_Dust_01",
          "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": "Skn_BL_Leg_04",
              "IsUseAttachPointPos": true,
              "IsUseAttachPointRotation": true,
              "OffsetReferTarget": "Self"
            }
          },
          "Target": "Self"
        },
        {
          "$type": "ModifyMaterialPropertyAction",
          "ApplyAllRenderers": false,
          "Predicates": [
            {
              "$type": "ByNot",
              "Predicates": [
                {
                  "$type": "ByOr",
                  "Predicates": [
                    {
                      "$type": "ByIsInZoneTags",
                      "Tags": [
                        "Red"
                      ],
                      "Target": "Self"
                    },
                    {
                      "$type": "ByIsInZoneTags",
                      "Tags": [
                        "Purple"
                      ],
                      "Target": "Self"
                    }
                  ]
                }
              ]
            }
          ],
          "RendererList": [
            {
              "ApplyAllMaterials": true,
              "RenderPath": "Base_02_03"
            }
          ],
          "Tag": "Monster_PileDriver_MA_BLLeg_Break_MainMaps_01",
          "Target": "Self",
          "key": "Monster_PileDriver_MA_BLLeg_Break_MainMaps_01"
        },
        {
          "$type": "ModifyMaterialPropertyAction",
          "ApplyAllRenderers": false,
          "Predicates": [
            {
              "$type": "ByIsInZoneTags",
              "Tags": [
                "Red"
              ],
              "Target": "Self"
            }
          ],
          "RendererList": [
            {
              "ApplyAllMaterials": true,
              "RenderPath": "Base_02_03"
            }
          ],
          "Tag": "Monster_PileDriverRed_MA_BLLeg_Break_MainMaps_01",
          "Target": "Self",
          "key": "Monster_PileDriverRed_MA_BLLeg_Break_MainMaps_01"
        },
        {
          "$type": "ModifyMaterialPropertyAction",
          "ApplyAllRenderers": false,
          "Predicates": [
            {
              "$type": "ByIsInZoneTags",
              "Tags": [
                "Purple"
              ],
              "Target": "Self"
            }
          ],
          "RendererList": [
            {
              "ApplyAllMaterials": true,
              "RenderPath": "Base_02_03"
            }
          ],
          "Tag": "Monster_MaterialHandlerPurple_MA_Leg_Break_01_MainMaps_01",
          "Target": "Self",
          "key": "Monster_MaterialHandlerPurple_MA_Leg_Break_01_MainMaps_01"
        },
        {
          "$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": "Skn_BL_Leg_04",
              "IsUseAttachPointPos": true,
              "IsUseAttachPointRotation": true,
              "OffsetReferTarget": "Self"
            }
          },
          "EffectPattern": "Eff_Monster_BoringMachine_LegBreak_Lightning_01",
          "Target": "Self"
        },
        {
          "$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": "Skn_BL_Leg_03",
              "IsUseAttachPointPos": true,
              "IsUseAttachPointRotation": true,
              "OffsetReferTarget": "Self"
            }
          },
          "EffectPattern": "Eff_Monster_BoringMachine_LegBreak_Lightning_02",
          "Target": "Self"
        }
      ]
    }
  },
  "OnAdded": [
    {
      "$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"
    }
  ]
}