{
  "format_version": "1.19.0",
  "minecraft:attachable": {
    "description": {
      "identifier": "tsu_morph:ravager_morph",
      "materials": {
        "default": "entity_alphatest"
      },
      "textures": {
        "default": "textures/entity/illager/ravager"
      },
      "geometry": {
        "default": "geometry.tsu_morph.ravager"
      },
      "animations": {
        "biting": "animation.tsu_morph.ravager.biting",
        "walk": "animation.tsu_morph.ravager.walk",
        "idle_mouth": "animation.tsu_morph.ravager.idle_mouth",
        "stunned": "animation.tsu_morph.ravager.stunned",
        "roaring": "animation.tsu_morph.ravager.roaring",
        "move": "controller.animation.ravager.move",
        "head": "controller.animation.ravager.head_movement",
        "attack": "animation.tsu_morph.ravager.biting",
        "attack_controller": "controller.animation.tsu_morph.attachable_attack",
        "look_at_target": "animation.tsu_morph.look_at_target",
        "ability_item_use_controller": "controller.animation.tsu_morph.ability_item_use",
        "ability_item_use": "animation.tsu_morph.ravager.roaring",
        "step_sounds": "controller.animation.tsu_morph.step_sounds",
        "idle_sounds": "animation.tsu_morph.idle_sounds"
      },
      "scripts": {
        "initialize": [
          "v.step_interval = 0.2;"
        ],
        "pre_animation": [
          "v.display_fp = c.is_first_person && !q.is_in_ui && q.is_local_player;",
          "variable.roar_length = 1.0;",
          "variable.bite_anim_duration = 0.75f;",
          "variable.bite_neck_length = 10;",
          "v.has_ability_item = query.is_item_name_any('slot.weapon.mainhand', 0, 'tsu_morph:ravager_ability');"
        ],
        "animate": [
          "move",
          "head",
          "ability_item_use_controller",
          "attack_controller",
          //sounds
          "step_sounds",
          "idle_sounds"
        ]
      },
      "sound_effects": {
        "step": "mob.ravager.step",
        "idle": "mob.ravager.ambient",
        "hurt": "mob.ravager.ambient",
        "attack": "mob.ravager.bite",
        "ability": "mob.ravager.roar"
      },
      "render_controllers": [
        {
          "controller.render.tsu_morph.default": "!v.display_fp"
        }
      ]
    }
  }
}