{
  "format_version": "1.10.0",
  "minecraft:client_entity": {
    "description": {
      "identifier": "minecraft:happy_ghast",
      "materials": {
        "default": "ghast"
      },
      "geometry": {
        "default": "geometry.happy_ghast",
        "ropes": "geometry.happy_ghast_ropes"
      },
      "textures": {
        "ghastling": "textures/entity/happy_ghast/ghastling",
        "happy_ghast": "textures/entity/happy_ghast/happy_ghast",
        "ropes": "textures/entity/happy_ghast/happy_ghast_ropes"
      },
      "render_controllers": [
        "controller.render.happy_ghast",
        "controller.render.happy_ghast_ropes"
      ],
      "scripts": {
        "pre_animation": [
          "variable.is_harnessed = query.equipment_count > 0;",
          "variable.shrink_scalar_to_avoid_z_fighting = 3.975f / 4.0f;",
          "variable.shrink_scalar_when_harnessed = variable.is_harnessed ? (16.0f / 17.0f) : 1.0f;",
          "variable.scale = variable.shrink_scalar_to_avoid_z_fighting * variable.shrink_scalar_when_harnessed;",
          "variable.render_ropes = variable.is_harnessed && query.has_any_leashed_entity_of_type('minecraft:boat', 'minecraft:chest_boat', 'minecraft:horse', 'minecraft:skeleton_horse', 'minecraft:zombie_horse', 'minecraft:mule', 'minecraft:donkey', 'minecraft:camel', 'minecraft:sniffer');"
        ],
        "animate": [
          "move_controller",
          "scale_controller"
        ],
        "should_update_effects_offscreen": "1.0"
      },
      "animations": {
        "move": "animation.happy_ghast.move",
        "move_controller": "controller.animation.happy_ghast.move",
        "scale": "animation.happy_ghast.scale",
        "scale_controller": "controller.animation.happy_ghast.scale"
      },
      "enable_attachables": true,
      "spawn_egg": {
        "texture": "spawn_egg_happy_ghast"
      }
    }
  }
}
