//This JSON was modified by Eroded Potato (@ErodedPotato), Netongas NG (@netongas_ng), Rainvay_ZCYF (@ZouChenyunfei), LateLag (@LateLagMC), and AgentMindStorm (@agentms_). Please do not use this document without permission.
{
  "format_version": "1.8.0",
  "animations": {
    "animation.player.attack.positions": {
      "loop": true,
      "bones": {
        "head": {
          "rotation": [ 0.0, 0.0, 0.0 ]
        }
      }
    },
    "animation.player.attack.rotations": {
      "loop": true,
      "bones": {
        "body": {
          "rotation": [ 0.0, "q.is_gliding || q.is_swimming ? 0.0 : math.sin(math.sqrt(variable.attack_time) * 360.0) * 11.46", 0.0 ]
        },
        "leftarm": {
          "rotation": [ "math.sin(math.sqrt(variable.attack_time) * 360) * 11.46", 0.0, 0.0 ]
        },
        "rightarm": {
          "rotation": [ "-(math.sin((1.0 - math.pow(1.0 - variable.attack_time, 2.0)) * 180.0) * 75.0 + math.sin(variable.attack_time * 180.0) * -0.75 * q.target_x_rotation)", "(math.sin(math.sqrt(variable.attack_time) * 360) * 11.46) * 2.0", "math.sin(math.sqrt(variable.attack_time) * 360) * 11.46" ]
        }
      }
    },
    "animation.player.base_pose.upside_down": {
      "loop": true,
      "bones": {
        "head": {
          "rotation": [ "(1.0 - variable.swim_amount) * query.is_sneaking * -28.64788", 0.0, 0.0 ]
        },
        "leftarm": {
          "rotation": [ 0.0, 0.0, "query.is_sneaking * 180" ]
        },
        "rightarm": {
          "rotation": [ 0.0, 0.0, "query.is_sneaking * 180" ]
        },
        "waist": {
          "position": [ 0.0, 8.0, 0.0 ],
          "rotation": [ 0.0, "variable.swim_amount * 180.0", "!(query.is_crawling || query.is_swimming) * 180.0" ] //Skin selection UI does not respect "query.is_in_ui" and does not have "variable.swim_amount"
        }
      }
    },
    "animation.player.bob": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "-math.sin(q.life_time * 76.776372) * 2.865", 0.0, "-(math.cos(q.life_time * 103.13244) * 2.865 + 2.865)" ]
        },
        "leftleg": {
          "rotation": [ "-math.sin(q.life_time * 76.776372) * 2.865", 0.0, 0.0 ]
        },
        "rightarm": {
          "rotation": [ "math.sin(q.life_time * 76.776372) * 2.865", 0.0, "math.cos(q.life_time * 103.13244) * 2.865 + 2.865" ]
        }
      }
    },
    "animation.player.bob.stationary": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "-math.sin(q.life_time * 76.776372) * 2.865", 0.0, "-(math.cos(q.life_time * 103.13244) * 2.865 + 2.865)" ]
        },
        "leftleg": {
          "rotation": [ "-math.sin(q.life_time * 76.776372) * 2.865", 0.0, 0.0 ]
        },
        "rightarm": {
          "rotation": [ "math.sin(q.life_time * 76.776372) * 2.865", 0.0, "math.cos(q.life_time * 103.13244) * 2.865 + 2.865" ]
        }
      }
    },
    "animation.player.bow_equipped": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "-90.0 + query.target_x_rotation - math.sin(query.life_time * 76.776372) * 2.865 - this", "28.65 + math.clamp(query.target_y_rotation, -45.0, 45.0)", 0.0 ]
        },
        "rightarm": {
          "rotation": [ "-90.0 + query.target_x_rotation + math.sin(query.life_time * 76.776372) * 2.865 - this", "-5.73 + math.clamp(query.target_y_rotation, -45.0, 45.0)", 0.0 ]
        }
      }
    },
    "animation.player.cape": {
      "loop": true,
      "bones": {
        "cape": {
          "position": [ 0, "query.get_root_locator_offset('armor_offset.default_neck', 1) + 0.25", 0.0 ],
          "rotation": [ "math.clamp(-31.5 * (query.cape_flap_amount * 3.0) - 3.1 - 5.0, -180.0, -7.4)", "180.0 + (query.modified_move_speed - query.cape_flap_amount) * math.sin(query.body_y_rotation - query.head_y_rotation(0)) * 38.0 + (1 - math.max(1, query.ground_speed)) * (-query.yaw_speed * 0.01)", "(query.modified_move_speed - query.cape_flap_amount) * math.sin(query.body_y_rotation - query.head_y_rotation(0)) * -31.5" ]
        }
      }                                                                                                //Cape geometry has been modified to not rotate in the model file, so it must be rotated 180 degrees here instead.
    },
    "animation.player.crossbow_equipped": {
      "loop": true,
      "override_previous_animation": true,
      "bones": {
        "leftarm": {
          "rotation": [ "math.lerp(-55.62 + math.sin(query.life_time * 76.776372) * 2.865, -90.0, 1.0 - variable.item_use_normalized)", "math.lerp(22.92, 48.70, 1.0 - variable.item_use_normalized)", "-math.cos(query.life_time * 103.13244) * 2.865 + 2.865" ]
        },
        "rightarm": {
          "rotation": [ "-55.62 + math.sin(query.life_time * 76.776372) * 2.865", -45.84, "math.cos(query.life_time * 103.13244) * 2.865 + 2.865" ]
        }
      }
    },
    "animation.player.crossbow_hold": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "q.is_swimming ? 0.0 : -85.94 + query.target_x_rotation - math.sin(query.life_time * 76.776372) * 2.865 - this", "q.is_swimming ? 0.0 : 34.38 + math.clamp(query.target_y_rotation, -45.0, 45.0)", 0.0 ]
        },
        "rightarm": {
          "rotation": [ "q.is_swimming ? 0.0 : -84.27 + query.target_x_rotation + math.sin(query.life_time * 76.776372) * 2.865 - this", "q.is_swimming ? 0.0 : -2.19 + math.clamp(query.target_y_rotation, -45.0, 45.0)", 0.0 ]
        }
      }
    },
    "animation.player.look_at_target.inverted": {
      "loop": true,
      "bones": {
        "head": {
          "rotation": [ "query.target_x_rotation", "query.target_y_rotation", 0.0 ]
        }
      }
    },
    "animation.player.move.arms": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "variable.tcos0", 0.0, 0.0 ]
        },
        "rightarm": {
          "rotation": [ "!variable.is_holding_spyglass && !variable.is_tooting_goat_horn ? -variable.tcos0 : 0.0", 0.0, 0.0 ]
        }
      }
    },
    "animation.player.move.arms.single": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "-variable.tcos0", 0.0, 0.0 ]
        },
        "rightarm": {
          "rotation": [ "!variable.is_holding_spyglass && !variable.is_tooting_goat_horn ? -variable.tcos0 : 0.0", 0.0, 0.0 ]
        }
      }
    },
    "animation.player.shield_block_main_hand": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "variable.is_holding_left ? 18.0 : 0.0", 0.0, 0.0 ]
        },
        "rightarm": {
          "rotation": [ -36.0, -30.0, 0.0 ]
        },
        "rightitem": {
          "position": [ -1.35, -2.85, 0.85 ],
          "rotation": [ -35.2644, -30.0, -35.2644 ]
        }
      }
    },
    "animation.player.shield_block_off_hand": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ -36.0, 30.0, 0.0 ]
        },
        "leftitem": {
          "position": [ 0.0, -4.0, 1.0 ],
          "rotation": [ -35.2644, 30.0, 35.2644 ]
        },
        "rightarm": {
          "rotation": [ "variable.is_holding_right ? 18.0 : 0.0", 0.0, 0.0 ]
        }
      }
    },
    "animation.player.sneaking": {
      "loop": true,
      "bones": {
        "body": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : (query.get_default_bone_pivot('body',1) - query.get_default_bone_pivot('rightleg',1)) * -0.12241 - 1.73108", 0.0 ],
          "rotation": [ "q.is_gliding ? 0.0 : 28.64788", 0.0, 0.0 ]
        },
        "head": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : -0.87758", "q.is_gliding ? 0.0 : -0.47942" ]
        },
        "leftarm": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : 0.24483", "q.is_gliding ? 0.0 : -0.95885" ],
          "relative_to": {
            "rotation": "entity"
          },
          "rotation": [ "q.is_gliding ? 0.0 : 22.91831", 0.0, 0.0 ]
        },
        "leftleg": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : -0.2", "q.is_gliding ? 0.0 : (query.get_default_bone_pivot('body',1) - query.get_default_bone_pivot('leftleg',1)) * 0.47942 - 1.75304" ]
        },
        "rightarm": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : 0.24483", "q.is_gliding ? 0.0 : -0.95885" ],
          "relative_to": {
            "rotation": "entity"
          },
          "rotation": [ "q.is_gliding ? !variable.is_holding_right * (-180.0 + variable.tcos0) : 22.91831", 0.0, 0.0 ]
        },
        "rightleg": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : -0.2", "q.is_gliding ? 0.0 : (query.get_default_bone_pivot('body',1) - query.get_default_bone_pivot('rightleg',1)) * 0.47942 - 1.75304" ]
        },
        "root": {
          "position": [ 0.0, "q.is_gliding ? 0.0 : query.get_default_bone_pivot('body',1) / -12.0", 0.0 ]
        }
      }
    },
    "animation.player.swim": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, (math.mod(query.modified_distance_moved, 26.0) < 22.0 ? 90.0 * math.clamp(math.mod(query.modified_distance_moved, 26.0) - 14.0, 0.0, 8.0) / 8.0 : 90.0 - 90.0 * (math.mod(query.modified_distance_moved, 26) - 22.0) / 4.0) - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerprotate(0.0, 180.0 - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerprotate(0.0, (math.mod(query.modified_distance_moved, 26.0) < 14.0 ? 180.0 + 107.18873 * math.mod(query.modified_distance_moved, 26.0) / 14.0 : 287.18873 - 107.18873 * math.clamp(math.mod(query.modified_distance_moved, 26) - 14.0, 0.0, 8.0) / 8.0) - this, variable.swim_amount)" ]
        },
        "rightarm": {
          "rotation": [ "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, (math.mod(query.modified_distance_moved, 26.0) < 22.0 ? 90.0 * math.clamp(math.mod(query.modified_distance_moved, 26.0) - 14.0, 0.0, 8.0) / 8.0 : 90.0 - 90.0 * (math.mod(query.modified_distance_moved, 26) - 22.0) / 4.0) - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, 180.0 - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, (math.mod(query.modified_distance_moved, 26.0) < 14.0 ? 180.0 - 107.18873 * math.mod(query.modified_distance_moved, 26.0) / 14.0 : 72.81127 + 107.18873 * math.clamp(math.mod(query.modified_distance_moved, 26) - 14.0, 0.0, 8.0) / 8.0) - this, variable.swim_amount)" ]
        },
        "root": {
          "position": [ 0.0, "variable.swim_amount * (math.sin(math.lerp(-90.0, query.target_x_rotation, variable.swim_amount)) * query.get_default_bone_pivot('body',1) * (17.0 / 24.0) + query.get_default_bone_pivot('body',1) * (17.0 / 24.0)) - (query.get_default_bone_pivot('body',1) * (17.0 / 24.0) - 5.0) * variable.swim_amount", "variable.swim_amount * math.cos(math.lerp(-90.0, query.target_x_rotation, variable.swim_amount)) * query.get_default_bone_pivot('body',1) * (17.0 / 24.0)" ],
          "rotation": [ "variable.swim_amount * (90.0 + query.target_x_rotation)", 0.0, 0.0 ]
        }
      }
    },
    "animation.player.swim.legs": {
      "loop": true,
      "bones": {
        "leftleg": {
          "rotation": [ "math.lerp(0.0, math.cos(query.modified_distance_moved * 19.09859 + 180.0) * 17.18873 - this, variable.swim_amount)", "(-0.1 - this) * variable.swim_amount", "(-0.1 - this) * variable.swim_amount" ]
        },
        "rightleg": {
          "rotation": [ "math.lerp(0.0, math.cos(query.modified_distance_moved * 19.09859) * 17.18873 - this, variable.swim_amount)", "(0.1 - this) * variable.swim_amount", "(0.1 - this) * variable.swim_amount" ]
        }
      }
    },
    "animation.player.swim.legs.single": {
      "loop": true,
      "bones": {
        "leftleg": {
          "rotation": [ "math.lerp(0.0, math.cos(query.modified_distance_moved * 19.09859) * 17.18873 - this, variable.swim_amount)", "(-0.1 - this) * variable.swim_amount", "(-0.1 - this) * variable.swim_amount" ]
        },
        "rightleg": {
          "rotation": [ "math.lerp(0.0, math.cos(query.modified_distance_moved * 19.09859) * 17.18873 - this, variable.swim_amount)", "(0.1 - this) * variable.swim_amount", "(0.1 - this) * variable.swim_amount" ]
        }
      }
    },
    "animation.player.crawl": {
      "loop": true,
      "bones": {
        "leftarm": {
          "rotation": [ "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, (math.mod(query.modified_distance_moved, 26.0) < 22.0 ? 90.0 * math.clamp(math.mod(query.modified_distance_moved, 26.0) - 14.0, 0.0, 8.0) / 8.0 : 90.0 - 90.0 * (math.mod(query.modified_distance_moved, 26) - 22.0) / 4.0) - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerprotate(0.0, 180.0 - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerprotate(0.0, (math.mod(query.modified_distance_moved, 26.0) < 14.0 ? 180.0 + 107.18873 * math.mod(query.modified_distance_moved, 26.0) / 14.0 : 287.18873 - 107.18873 * math.clamp(math.mod(query.modified_distance_moved, 26) - 14.0, 0.0, 8.0) / 8.0) - this, variable.swim_amount)" ]
        },
        "rightarm": {
          "rotation": [ "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, (math.mod(query.modified_distance_moved, 26.0) < 22.0 ? 90.0 * math.clamp(math.mod(query.modified_distance_moved, 26.0) - 14.0, 0.0, 8.0) / 8.0 : 90.0 - 90.0 * (math.mod(query.modified_distance_moved, 26) - 22.0) / 4.0) - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, 180.0 - this, variable.swim_amount)", "variable.attack_time > 0 ? 0.0 : math.lerp(0.0, (math.mod(query.modified_distance_moved, 26.0) < 14.0 ? 180.0 - 107.18873 * math.mod(query.modified_distance_moved, 26.0) / 14.0 : 72.81127 + 107.18873 * math.clamp(math.mod(query.modified_distance_moved, 26) - 14.0, 0.0, 8.0) / 8.0) - this, variable.swim_amount)" ]
        },
        "root": {
          "position": [ 0.0, "(math.sin(math.lerp(-90.0, 0.0, variable.swim_amount)) * query.get_default_bone_pivot('body',1) * (17.0 / 24.0) + query.get_default_bone_pivot('body',1) * (17.0 / 24.0)) - (query.get_default_bone_pivot('body',1) * (17.0 / 24.0) - 5.0) * variable.swim_amount", "math.cos(math.lerp(-90.0, 0.0, variable.swim_amount)) * query.get_default_bone_pivot('body',1) * (17.0 / 24.0)" ],
          "rotation": [ "variable.swim_amount * 90.0", 0.0, 0.0 ]
        }
      }
    },
    "animation.player.crawl.legs": {
      "loop": true,
      "bones": {
        "leftleg": {
          "rotation": [ "math.lerp(0.0, math.cos(query.modified_distance_moved * 19.09859 + 180.0) * 17.18873 - this, variable.swim_amount)", "(-0.1 - this) * variable.swim_amount", "(-0.1 - this) * variable.swim_amount" ]
        },
        "rightleg": {
          "rotation": [ "math.lerp(0.0, math.cos(query.modified_distance_moved * 19.09859) * 17.18873 - this, variable.swim_amount)", "(0.1 - this) * variable.swim_amount", "(0.1 - this) * variable.swim_amount" ]
        }
      }
    }
  }
}