Files
minecraft-bedrock-json-schemas/resource/sounds.json
2021-01-10 17:34:21 +01:00

311 lines
9.1 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "blockception.minecraft.resource.sounds.json",
"type": "object",
"title": "Sounds.json",
"description": "Sound definitions",
"additionalProperties": false,
"definitions": {
"pitch": {
"title": "Pitch",
"oneOf": [
{
"default": 1,
"type": "number",
"description": "A defined pitch"
},
{
"description": "A random selection between a minimum and maximum",
"type": "array",
"items": [
{
"type": "number",
"minimum": 0,
"title": "Minimum"
},
{
"type": "number",
"minimum": 0,
"title": "Maximum"
}
]
}
]
},
"volume": {
"title": "Volume",
"oneOf": [
{
"default": 1,
"type": "number",
"description": "A defined volume"
},
{
"description": "A random selection between a minimum and maximum",
"type": "array",
"items": [
{
"type": "number",
"minimum": 0,
"title": "Minimum"
},
{
"type": "number",
"minimum": 0,
"title": "Maximum"
}
]
}
]
},
"sound_event": {
"title": "Sound event definition",
"description": "A single sound event definition",
"oneOf": [
{
"type": "string"
},
{
"type": "object",
"additionalProperties": false,
"required": ["sound"],
"properties": {
"volume": {
"$ref": "#/definitions/volume"
},
"sound": {
"type": "string",
"title": "Sound event",
"description": "The sound event described in sound_definitions.json"
},
"pitch": {
"$ref": "#/definitions/pitch"
}
}
}
]
},
"entity_event": {
"type": "object",
"title": "Entity sound",
"description": "Entity sound definitions",
"properties": {
"volume": {
"$ref": "#/definitions/volume"
},
"pitch": {
"$ref": "#/definitions/pitch"
},
"events": {
"type": "object",
"title": "Events",
"propertyNames": {
"pattern": "[a-z\\._]+"
},
"additionalProperties": {
"$ref": "#/definitions/sound_event"
}
}
}
}
},
"properties": {
"block_sounds": {
"type": "object",
"title": "Block sounds",
"description": "Block sound definitions",
"additionalProperties": {
"type": "object",
"title": "Block sound definition",
"description": "A single block sound definition",
"additionalProperties": false,
"properties": {
"volume": {
"$ref": "#/definitions/volume"
},
"pitch": {
"$ref": "#/definitions/pitch"
},
"events": {
"type": "object",
"title": "Events",
"propertyNames": {
"enum": ["default", "item.use.on", "break", "hit", "place", "power.on", "power.off"]
},
"additionalProperties": {
"$ref": "#/definitions/sound_event"
}
}
}
}
},
"entity_sounds": {
"type": "object",
"title": "Entity sounds",
"description": "Entity sounds definitions",
"additionalProperties": false,
"properties": {
"defaults": {
"$ref": "#/definitions/entity_event"
},
"entities": {
"type": "object",
"title": "Entities",
"description": "Entities definitions",
"additionalProperties": {
"$ref": "#/definitions/entity_event"
}
}
}
},
"individual_event_sounds": {
"type": "object",
"title": "Individual event sounds",
"description": "Individual event sounds definitions",
"additionalProperties": false,
"properties": {
"events": {
"type": "object",
"title": "Events",
"description": "Events",
"additionalProperties": {
"$ref": "#/definitions/sound_event"
}
}
}
},
"interactive_sounds": {
"type": "object",
"title": "Interactive sounds",
"description": "Interactive sounds definitions",
"additionalProperties": false,
"properties": {
"block_sounds": {
"type": "object",
"title": "Block sounds",
"description": "Block sound definitions",
"additionalProperties": {
"type": "object",
"title": "Block sound definition",
"description": "A single block sound definition",
"additionalProperties": false,
"properties": {
"volume": { "$ref": "#/definitions/volume" },
"pitch": { "$ref": "#/definitions/pitch" },
"events": {
"type": "object",
"title": "Events",
"propertyNames": {
"enum": ["default", "fall", "step", "hit", "jump", "land"]
},
"additionalProperties": {
"title": "Sound event definition",
"description": "A single sound event definition",
"oneOf": [
{ "type": "string" },
{
"type": "object",
"additionalProperties": false,
"minProperties": 1,
"properties": {
"volume": { "$ref": "#/definitions/volume" },
"sound": {
"type": "string",
"title": "Sound event",
"description": "The sound event described in sound_definitions.json"
},
"sounds": {
"type": "string",
"title": "Sound event",
"description": "The sound event described in sound_definitions.json"
},
"pitch": { "$ref": "#/definitions/pitch" }
}
}
]
}
}
}
}
},
"entity_sounds": {
"type": "object",
"title": "Entity sounds",
"description": "Entity sound definitions",
"additionalProperties": false,
"properties": {
"defaults": {
"type": "object",
"title": "Defaults",
"description": "Default sound definitions",
"additionalProperties": {
"type": "object",
"title": "Entity sounds",
"properties": {
"events": {
"type": "object",
"title": "Entity events",
"propertyNames": {
"pattern": "[a-z0-9\\.]+"
},
"additionalProperties": {
"type": "object",
"title": "Entity Event",
"description": "A single entity event",
"additionalProperties": {
"type": "string",
"title": "A sound interaction"
}
}
}
}
},
"properties": {
"volume": {
"$ref": "#/definitions/volume"
},
"pitch": {
"$ref": "#/definitions/pitch"
}
}
},
"entities": {
"type": "object",
"title": "Entites sounds",
"description": "Entities sound definitions",
"additionalProperties": {
"type": "object",
"title": "Entity sounds",
"properties": {
"volume": {
"$ref": "#/definitions/volume"
},
"pitch": {
"$ref": "#/definitions/pitch"
},
"events": {
"type": "object",
"title": "Entity events",
"propertyNames": {
"pattern": "[a-z0-9\\.]+"
},
"additionalProperties": {
"type": "object",
"title": "Entity Event",
"description": "A single entity event",
"additionalProperties": {
"type": "string",
"title": "A sound interaction"
}
}
}
}
}
}
}
}
}
}
}
}