{
  "format_version": "1.10.0",
  "minecraft:client_entity": {
    "description": {
      "identifier": "nicothekid:piglin_crates_trader",
      "textures": {
        "default": "textures/entity/ntk_piglin_crates_trader"
      },
      "spawn_egg": {
        "base_color": "#914358",
        "overlay_color": "#F9F3A4"
      },
      "geometry": {
        "default": "geometry.entity.nicothekid_piglin_crates_trader"
      },
      "materials": {
        "default": "piglin_crates_trader",
        "invisible": "piglin_crates_trader_invisible"
      },
      "enable_attachables": true,
      "render_controllers": [
        "controller.render.entity.nicothekid_piglin_crates_trader"
      ],
      "animations": {
        "controller_attack": "controller.animation.entity.nicothekid_piglin_crates_trader.attack",
        "controller_look_at_target": "controller.animation.entity.nicothekid_piglin_crates_trader.look_at_target",
        "controller_riding": "controller.animation.entity.nicothekid_piglin_crates_trader.riding",
        "admiring": "animation.entity.nicothekid_piglin_crates_trader.admiring",
        "attack_hand": "animation.entity.nicothekid_piglin_crates_trader.attack_hand",
        "attack_melee": "animation.entity.nicothekid_piglin_crates_trader.attack_melee",
        "attack_crossbow_hold": "animation.entity.nicothekid_piglin_crates_trader.attack_crossbow_hold",
        "attack_crossbow_charge": "animation.entity.nicothekid_piglin_crates_trader.attack_crossbow_charge",
        "bobbing": "animation.entity.nicothekid_piglin_crates_trader.bobbing",
        "look_at_target_default": "animation.entity.nicothekid_piglin_crates_trader.look_at_target_default",
        "look_at_target_gliding": "animation.entity.nicothekid_piglin_crates_trader.look_at_target_gliding",
        "look_at_target_swimming": "animation.entity.nicothekid_piglin_crates_trader.look_at_target_swimming",
        "riding_arms": "animation.entity.nicothekid_piglin_crates_trader.riding_arms",
        "riding_legs": "animation.entity.nicothekid_piglin_crates_trader.riding_legs",
        "walking": "animation.entity.nicothekid_piglin_crates_trader.walking"
      },
      "scripts": {
        "animate": [
          "controller_attack",
          "controller_look_at_target",
          "controller_riding",
          "bobbing",
          "walking",
          {
            "admiring": "query.is_admiring"
          }
        ],
        "pre_animation": [
          "variable.tcos0 = (Math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed / variable.gliding_speed_value) * 57.3;",
          "variable.attack = Math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3;",
          "variable.attack2 = Math.sin(variable.attack_time * 180.0) * 57.3;",
          "variable.attack_state = Math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0) * 57.3;",
          "variable.attack_state2 = Math.sin(variable.attack_time * 180.0) * 57.3;",
          "variable.z_bob = Math.cos(query.life_time * 103.13244) * 2.865 + 2.865;",
          "variable.x_bob = Math.sin(query.life_time * 76.776372) * 2.865;"
        ]
      }
    }
  }
}