{
  "format_version": "1.8.0",
  "minecraft:client_entity": {
    "description": {
      "identifier": "pokeb:trainer",
      "materials": {
        "default": "zombie"
      },
      "textures": {
        "aquaboss": "textures/entity/trainers/aquaboss",
        "blacksmith": "textures/entity/trainers/blacksmith",
        "bugcatcher": "textures/entity/trainers/bugcatcher1",
        "bugmaniac": "textures/entity/trainers/bugcatcher2",
        "femaleaquagrunt": "textures/entity/trainers/aquagruntfemale",
        "femalemagmagrunt": "textures/entity/trainers/magmagruntfemale",
        "femalerocketgrunt": "textures/entity/trainers/rocketgruntfemale1",
        "firebreather": "textures/entity/trainers/firebreather1",
        "flaregruntfemale": "textures/entity/trainers/flaregruntfemale",
        "flaregruntmale": "textures/entity/trainers/flaregruntmale",
        "galacticboss": "textures/entity/trainers/galacticboss",
        "galacticgruntfemale": "textures/entity/trainers/galacticgruntfemale",
        "galacticgruntmale": "textures/entity/trainers/galacticgruntmale",
        "gardener": "textures/entity/trainers/gardenermale1",
        "gentleman": "textures/entity/trainers/gardenermale2",
        "giovanni": "textures/entity/trainers/giovanni",
        "guzma": "textures/entity/trainers/guzma",
        "magmaboss": "textures/entity/trainers/magmaboss",
        "maleaquagrunt": "textures/entity/trainers/aquagruntmale",
        "malemagmagrunt": "textures/entity/trainers/magmagruntmale",
        "malerocketgrunt": "textures/entity/trainers/rocketgruntmale1",
        "mountaineer": "textures/entity/trainers/lighthousekeeper",
        "ornithologist": "textures/entity/trainers/ornithologist",
        "pkmnbreeder": "textures/entity/trainers/pkmn_breeder_f",
        "plasmagruntfemale": "textures/entity/trainers/plasmagruntfemale",
        "plasmagruntmale": "textures/entity/trainers/plasmagruntmale",
        "pokemaniacgirl": "textures/entity/trainers/pokemaniacgirl1",
        "pokemaniac": "textures/entity/trainers/pokemaniac1",
        "policeman": "textures/entity/trainers/policeman",
        "preschoolergirl": "textures/entity/trainers/preschooler_f1",
        "rancher": "textures/entity/trainers/rancher",
        "richboy": "textures/entity/trainers/richboy",
        "scientistwoman": "textures/entity/trainers/scientist_f",
        "scientist": "textures/entity/trainers/scientist_m",
        "skullgruntfemale": "textures/entity/trainers/skullgruntfemale",
        "skullgruntmale": "textures/entity/trainers/skullgruntmale",
        "sport": "textures/entity/trainers/swimmer_m1",
        "swimmer": "textures/entity/trainers/swimmer_m2",
        "teamyellgruntfemale": "textures/entity/trainers/teamyellgruntfemale",
        "teamyellgruntmale": "textures/entity/trainers/teamyellgruntmale",
        "youngster": "textures/entity/trainers/youngster1",
        "smellofcurry": "textures/entity/trainers/smellofcurry"
      },
      "geometry": {
        "default": "geometry.humanoid.custom"
      },
      "scripts": {
        "scale": 0.9375,
        "pre_animation": [
          "variable.tcos0 = (Math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed / variable.gliding_speed_value) * 57.3;",
          "variable.tcos1 = -variable.tcos0;",
          "variable.attack_body_rot_y = Math.sin(Math.sqrt(variable.attack_time) * 360.0) * 11.46;",
          "variable.cos_attack_body_rot_y = Math.cos(variable.attack_body_rot_y);",
          "variable.sin_attack_body_rot_y = Math.sin(variable.attack_body_rot_y);",
          "variable.internal_swim_pos = Math.mod(query.modified_distance_moved, 26.0);",
          "variable.attack = Math.sin((1.0 - (1.0 - variable.attack_time) * (1.0 - variable.attack_time)) * 180.0);",
          "variable.attack2 = Math.sin(variable.attack_time * 180.0);"
        ]
      },
      "animations": {
        "look_at_target_default": "animation.humanoid.look_at_target.default",
        "look_at_target_gliding": "animation.humanoid.look_at_target.gliding",
        "look_at_target_swimming": "animation.humanoid.look_at_target.swimming",
        "base_pose": "animation.humanoid.base_pose",
        "move": "animation.humanoid.move"
      },
      "animation_controllers": [
        {
          "humanoid_base_pose": "controller.animation.humanoid.base_pose"
        },
        {
          "look_at_target": "controller.animation.humanoid.look_at_target"
        },
        {
          "move": "controller.animation.humanoid.move"
        }
      ],
      "render_controllers": ["controller.render.trainer"],
      "spawn_egg": {
        "texture": "spawn_egg",
        "texture_index": 35
      },
      "enable_attachables": true
    }
  }
}
