{
  "$id": "blockception.minecraft.behavior.entities.minecraft.behavior.celebrate",
  "type": "object",
  "title": "Celebrate",
  "description": "Allows this entity to celebrate surviving a raid by making celebration sounds and jumping.",
  "additionalProperties": false,
  "properties": {
    "priority": { "$ref": "types/priority.json" },
    "celebration_sound": {
      "default": "",
      "description": "The sound event to trigger during the celebration.",
      "title": "Celebration Sound",
      "$ref": "../../../../general/sound_event.json"
    },
    "duration": {
      "type": "number",
      "default": 30,
      "description": "The duration in seconds that the celebration lasts for.",
      "title": "Duration"
    },
    "jump_interval": {
      "default": [1, 3.5],
      "description": "Minimum and maximum time between jumping (positive, in seconds).",
      "title": "Jump Interval",
      "oneOf": [
        {
          "type": "array",
          "items": [
            {
              "type": "number",
              "title": "Maximum"
            },
            {
              "type": "number",
              "title": "Maximum"
            }
          ]
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "range_min": {
              "type": "number"
            },
            "range_max": {
              "type": "number"
            }
          }
        }
      ]
    },
    "on_celebration_end_event": {
      "$ref": "../types/trigger.json",
      "description": "The event to trigger when the goal's duration expires.",
      "title": "On Celebration End Event"
    },
    "sound_interval": {
      "default": [2, 7],
      "description": "Minimum and maximum time between sound events (positive, in seconds).",
      "title": "Sound Interval",
      "$ref": "../types/range_number_type.json"
    }
  },
  "examples": [
    {
      "celebration_sound": "",
      "duration": 1
    }
  ]
}
