{
  "format_version": "1.8.0",
  "minecraft:client_entity": {
    "description": {
      "identifier": "mobs:capuchin",
      "materials": {
        "default": "wolf"
      },
      "textures": {
        "default": "textures/entity/pamobile/mobs_capuchin",
        "angry": "textures/entity/pamobile/mobs_capuchin",
        "tame": "textures/entity/pamobile/mobs_capuchin"
      },
      "geometry": {
        "default": "geometry.mobs_capuchin"
      },
      "scripts": {
        "pre_animation": [
          "variable.body_shake_angle = 0.05 * query.frame_alpha + query.shake_angle;",
          "variable.body_roll_progress = Math.clamp((variable.body_shake_angle - 0.16) / 1.8, 0, 1);",
          "variable.body_rot_z = Math.sin(variable.body_roll_progress * 180) * Math.sin(variable.body_roll_progress * 1980) * 27;",
          "variable.upper_body_roll_progress = Math.clamp((variable.body_shake_angle - 0.08) / 1.8, 0, 1);",
          "variable.upper_body_rot_z = (Math.sin(variable.upper_body_roll_progress * 180) * Math.sin(variable.upper_body_roll_progress * 1980) * 27) - variable.body_rot_z;",
          "variable.tail_roll_progress = Math.clamp((variable.body_shake_angle - 0.2) / 1.8, 0, 1);",
          "variable.tail_rot_z = (Math.sin(variable.tail_roll_progress * 180) * Math.sin(variable.tail_roll_progress * 1980) * 27) - variable.body_rot_z;",
          "variable.head_roll_progress = Math.clamp(variable.body_shake_angle / 1.8, 0, 1);",
          "variable.head_rot_z = (Math.sin(variable.head_roll_progress * 180) * Math.sin(variable.head_roll_progress * 1980) * 27) - variable.body_rot_z;"
        ]
      },
      "animations": {
        "wolf_setup": "animation.mobs_capuchin.setup",
        "wolf_baby_scaling": "animation.mobs_capuchin.baby_scaling",
        "wolf_look_at": "animation.mobs_capuchin.loock_at",
        "wolf_head_rot_z": "animation.mobs_capuchin.head_rot_z",
        "wolf_tail_default": "animation.mobs_capuchin.tail_defold",
        "wolf_angry": "animation.mobs_capuchin.angry",
        "wolf_sitting": "animation.mobs_capuchin.siting",
        "wolf_shaking": "animation.mobs_capuchin.shaking",
        "wolf_leg_default": "animation.mobs_capuchin.leg_dafold"
      },
      "animation_controllers": [
        {
          "wolf_setup": "controller.animation.wolf.setup"
        },
        {
          "wolf_look_at": "controller.animation.wolf.look_at"
        },
        {
          "wolf_baby_scaling": "controller.animation.wolf.baby_scaling"
        },
        {
          "wolf_head_rot_z": "controller.animation.wolf.head_rot_z"
        },
        {
          "wolf_tail_default": "controller.animation.wolf.tail_default"
        },
        {
          "wolf_angry": "controller.animation.wolf.angry"
        },
        {
          "wolf_sitting": "controller.animation.wolf.sitting"
        },
        {
          "wolf_shaking": "controller.animation.wolf.shaking"
        }
      ],
      "render_controllers": [
        "controller.render.wolf"
      ],
      "spawn_egg": {
        "texture": "mobs:capuchin",
        "texture_index": 0
      }
    }
  }
}