2021-02-24 22:48:32 +01:00
|
|
|
|
{
|
|
|
|
|
|
"$schema": "http://json-schema.org/draft-07/schema",
|
|
|
|
|
|
"$id": "blockception.minecraft.resource.attachables",
|
|
|
|
|
|
"examples": [
|
|
|
|
|
|
{
|
|
|
|
|
|
"format_version": "1.10.0",
|
|
|
|
|
|
"minecraft:attachable": {
|
|
|
|
|
|
"description": {
|
|
|
|
|
|
"identifier": "minecraft:item",
|
|
|
|
|
|
"materials": { "default": "entity_alphatest", "enchanted": "entity_alphatest_glint" },
|
|
|
|
|
|
"textures": { "default": "textures/items/item" },
|
|
|
|
|
|
"geometry": { "default": "geometry.item" },
|
|
|
|
|
|
"scripts": {},
|
|
|
|
|
|
"render_controllers": ["controller.render.item"]
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
"allOf": [
|
|
|
|
|
|
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.8.0" } } }, "then": { "$ref": "#/definitions/A" } },
|
|
|
|
|
|
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.10" } } }, "then": { "$ref": "#/definitions/D" } },
|
|
|
|
|
|
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.10.0" } } }, "then": { "$ref": "#/definitions/D" } }
|
|
|
|
|
|
],
|
|
|
|
|
|
"definitions": {
|
|
|
|
|
|
"B": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"title": "The minecraft item identifier 1.8.0",
|
|
|
|
|
|
"description": "The minecraft item identifier",
|
|
|
|
|
|
"pattern": "^[0-9a-zA-Z:_\\-\\.]+$"
|
|
|
|
|
|
},
|
|
|
|
|
|
"C": {
|
|
|
|
|
|
"title": "Molang number",
|
|
|
|
|
|
"description": "The minecraft molang definition that results in a float",
|
|
|
|
|
|
"anyOf": [{ "type": "string", "minLength": 0, "format": "molang" }, { "type": "number" }]
|
|
|
|
|
|
},
|
|
|
|
|
|
"A": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "The minecraft resourcepack actor animation 1.8.0",
|
|
|
|
|
|
"description": "TODO description",
|
|
|
|
|
|
"required": ["format_version", "minecraft:attachable"],
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"format_version": {
|
|
|
|
|
|
"title": "The 1.8.0 format version",
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"pattern": "^1.8.0$",
|
|
|
|
|
|
"description": "A version that tells minecraft what type of data format can be expected when reading this file."
|
|
|
|
|
|
},
|
|
|
|
|
|
"minecraft:attachable": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "The attachables",
|
|
|
|
|
|
"description": "The attachables definition for 1.8.0",
|
|
|
|
|
|
"required": ["description"],
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"description": {
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"title": "Description definition",
|
|
|
|
|
|
"description": "TODO description: description",
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"required": ["identifier", "geometry"],
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"animations": {
|
|
|
|
|
|
"description": "The connecting of animations in animations controllers with the actuall animations, names should corosponds",
|
|
|
|
|
|
"title": "The animations schema",
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"animation_controllers": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"minItems": 1,
|
|
|
|
|
|
"description": "TODO description: animation controllers",
|
|
|
|
|
|
"title": "Animation Controllers",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: animation controllers",
|
|
|
|
|
|
"title": "Animation Controllers"
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"enable_attachables": { "type": "boolean", "description": "TODO description: enable attachables", "title": "Enable Attachables" },
|
|
|
|
|
|
"geometry": {
|
|
|
|
|
|
"title": "Geometry definition",
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: geometry"
|
|
|
|
|
|
},
|
|
|
|
|
|
"identifier": { "type": "string", "description": "TODO description: identifier", "title": "Identifier", "$ref": "#/definitions/B" },
|
|
|
|
|
|
"item": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Item",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "title": "TODO", "description": "TODO" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"materials": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"description": "TODO description: materials",
|
|
|
|
|
|
"title": "Materials",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"min_engine_version": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
|
|
|
|
|
|
"description": "TODO description: min engine version",
|
|
|
|
|
|
"title": "Min Engine Version"
|
|
|
|
|
|
},
|
|
|
|
|
|
"particle_effects": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: particle effects",
|
|
|
|
|
|
"title": "Particle Effects"
|
|
|
|
|
|
},
|
|
|
|
|
|
"particle_emitters": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: particle emitters",
|
|
|
|
|
|
"title": "Particle Emitters"
|
|
|
|
|
|
},
|
|
|
|
|
|
"render_controllers": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"description": "TODO description: render controllers",
|
|
|
|
|
|
"title": "Render Controllers",
|
|
|
|
|
|
"minItems": 1,
|
|
|
|
|
|
"items": { "type": "string", "description": "TODO description: render controllers", "title": "Render Controllers" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"sound_effects": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"description": "TODO description: sound effects",
|
|
|
|
|
|
"title": "Sound Effects",
|
|
|
|
|
|
"minItems": 1,
|
|
|
|
|
|
"items": { "type": "string", "description": "TODO description: sound effects", "title": "Sound Effects" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"spawn_egg": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"description": "TODO description: spawn egg",
|
|
|
|
|
|
"title": "Spawn Egg",
|
|
|
|
|
|
"dependencies": {
|
|
|
|
|
|
"texture": ["texture_index"],
|
|
|
|
|
|
"texture_index": ["texture"],
|
|
|
|
|
|
"base_colour": ["overlay_color"],
|
|
|
|
|
|
"overlay_color": ["base_colour"]
|
|
|
|
|
|
},
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"base_colour": { "type": "string", "description": "TODO description: base colour", "title": "Base Colour" },
|
|
|
|
|
|
"overlay_color": { "type": "string", "description": "TODO description: overlay color", "title": "Overlay Color" },
|
|
|
|
|
|
"texture": { "type": "string", "description": "TODO description: texture", "title": "Texture" },
|
|
|
|
|
|
"texture_index": { "type": "integer", "description": "TODO description: texture index", "title": "Texture Index" }
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"scripts": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"pre_animation": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"pattern": ";$",
|
|
|
|
|
|
"$ref": "#/definitions/C",
|
|
|
|
|
|
"description": "TODO description: pre aninamtion",
|
|
|
|
|
|
"title": "Pre Animation"
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "TODO description: pre aninamtion",
|
|
|
|
|
|
"title": "Pre Animation"
|
|
|
|
|
|
},
|
|
|
|
|
|
"scale": { "type": "string", "description": "TODO description: scale", "title": "Scale" },
|
|
|
|
|
|
"animate": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "Animate schema",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"oneOf": [
|
|
|
|
|
|
{ "type": "string", "description": "TODO description: oneOf[0]", "title": "TODO title" },
|
|
|
|
|
|
{
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: oneOf[1]",
|
|
|
|
|
|
"title": "TODO title"
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
"description": "TODO description: animate",
|
|
|
|
|
|
"title": "Animate"
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "TODO description: animate"
|
|
|
|
|
|
},
|
|
|
|
|
|
"parent_setup": { "$ref": "#/definitions/C" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "TODO description: scripts",
|
|
|
|
|
|
"title": "Scripts"
|
|
|
|
|
|
},
|
|
|
|
|
|
"textures": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: textures",
|
|
|
|
|
|
"title": "Textures"
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"additionalProperties": false
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"additionalProperties": false
|
|
|
|
|
|
},
|
|
|
|
|
|
"D": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "The minecraft resourcepack actor animation 1.10.0",
|
|
|
|
|
|
"description": "TODO description",
|
|
|
|
|
|
"required": ["format_version", "minecraft:attachable"],
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"format_version": {
|
|
|
|
|
|
"title": "The 1.10.0 format version",
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"pattern": "^(1.10.0|1.10)$",
|
|
|
|
|
|
"description": "A version that tells minecraft what type of data format can be expected when reading this file."
|
|
|
|
|
|
},
|
|
|
|
|
|
"minecraft:attachable": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "The attachables",
|
|
|
|
|
|
"description": "The attachables definition",
|
|
|
|
|
|
"required": ["description"],
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"description": {
|
|
|
|
|
|
"title": "Description definition",
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"required": ["identifier"],
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"animations": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "A single animation reference", "title": "Animation" },
|
|
|
|
|
|
"description": "The collection of animations references",
|
|
|
|
|
|
"title": "Animations"
|
|
|
|
|
|
},
|
|
|
|
|
|
"animation_controllers": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"additionalProperties": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"additionalProperties": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"description": "A single Animation controller reference",
|
|
|
|
|
|
"title": "Animation controller reference"
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "A collection of animation controller references",
|
|
|
|
|
|
"title": "TODO"
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "The specification of animation controllers",
|
|
|
|
|
|
"title": "Animation Controllers"
|
|
|
|
|
|
},
|
|
|
|
|
|
"enable_attachables": { "type": "boolean", "description": "TODO description: enable attachables", "title": "Enable Attachables" },
|
|
|
|
|
|
"geometry": {
|
|
|
|
|
|
"title": "Geometry definition",
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"propertyNames": { "pattern": "[a-zA-Z0-9_\\.\\-]+" },
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "A single geometry reference", "title": "Geometry" },
|
|
|
|
|
|
"description": "The geometry specification"
|
|
|
|
|
|
},
|
|
|
|
|
|
"identifier": { "type": "string", "description": "TODO description: identifier", "title": "Identifier", "$ref": "#/definitions/B" },
|
|
|
|
|
|
"item": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"title": "Item",
|
|
|
|
|
|
"description": "TODO",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "title": "TODO", "description": "TODO" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"materials": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "A single material reference", "title": "Material" },
|
|
|
|
|
|
"description": "A collection of material references",
|
|
|
|
|
|
"title": "Materials"
|
|
|
|
|
|
},
|
|
|
|
|
|
"min_engine_version": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
|
|
|
|
|
|
"description": "The minimum engine needed to use this",
|
|
|
|
|
|
"title": "Min Engine Version"
|
|
|
|
|
|
},
|
|
|
|
|
|
"particle_effects": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "A single particle effect reference", "title": "Particle effect" },
|
|
|
|
|
|
"description": "A collection of particle effect references",
|
|
|
|
|
|
"title": "Particle Effects"
|
|
|
|
|
|
},
|
|
|
|
|
|
"particle_emitters": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: particle emitters",
|
|
|
|
|
|
"title": "Particle Emitters"
|
|
|
|
|
|
},
|
|
|
|
|
|
"render_controllers": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"description": "TODO description: render controllers",
|
|
|
|
|
|
"title": "Render Controllers",
|
|
|
|
|
|
"minItems": 1,
|
|
|
|
|
|
"items": { "type": "string", "description": "TODO description: render controllers", "title": "Render Controllers" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"scripts": {
|
|
|
|
|
|
"additionalProperties": false,
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"description": "TODO description: scripts",
|
|
|
|
|
|
"title": "Scripts",
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"animate": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"title": "Animate schema",
|
|
|
|
|
|
"minItems": 1,
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"oneOf": [
|
|
|
|
|
|
{ "type": "string", "description": "TODO description: oneOf[0]", "title": "TODO title" },
|
|
|
|
|
|
{
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"minProperties": 1,
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: oneOf[1]",
|
|
|
|
|
|
"title": "TODO title"
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
"description": "TODO description: animate",
|
|
|
|
|
|
"title": "Animate"
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "TODO description: animate"
|
|
|
|
|
|
},
|
|
|
|
|
|
"initialize": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"description": "TODO description: initialize",
|
|
|
|
|
|
"title": "Initialize",
|
|
|
|
|
|
"items": { "pattern": ";$", "$ref": "#/definitions/C", "description": "TODO description: initialize", "title": "Initialize" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"pre_animation": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"description": "TODO description: pre aninamtion",
|
|
|
|
|
|
"title": "Pre Animation",
|
|
|
|
|
|
"items": {
|
|
|
|
|
|
"pattern": ";$",
|
|
|
|
|
|
"$ref": "#/definitions/C",
|
|
|
|
|
|
"description": "TODO description: pre aninamtion",
|
|
|
|
|
|
"title": "Pre Animation"
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"parent_setup": {
|
|
|
|
|
|
"type": "string",
|
|
|
|
|
|
"description": "TODO description: parent setup",
|
|
|
|
|
|
"title": "Parent Setup",
|
|
|
|
|
|
"$ref": "#/definitions/C"
|
|
|
|
|
|
},
|
|
|
|
|
|
"scale": { "type": "string", "description": "TODO description: scale", "title": "Scale", "$ref": "#/definitions/C" }
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"sound_effects": {
|
|
|
|
|
|
"type": "array",
|
|
|
|
|
|
"description": "TODO description: sound effects",
|
|
|
|
|
|
"title": "Sound Effects",
|
|
|
|
|
|
"minItems": 1,
|
|
|
|
|
|
"items": { "type": "string", "description": "TODO description: sound effects", "title": "Sound Effects" }
|
|
|
|
|
|
},
|
|
|
|
|
|
"spawn_egg": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"description": "TODO description: spawn egg",
|
|
|
|
|
|
"title": "Spawn Egg",
|
|
|
|
|
|
"dependencies": {
|
|
|
|
|
|
"texture": ["texture_index"],
|
|
|
|
|
|
"texture_index": ["texture"],
|
|
|
|
|
|
"base_colour": ["overlay_color"],
|
|
|
|
|
|
"overlay_color": ["base_colour"]
|
|
|
|
|
|
},
|
|
|
|
|
|
"properties": {
|
|
|
|
|
|
"base_colour": { "type": "string", "description": "TODO description: base colour", "title": "Base Colour" },
|
|
|
|
|
|
"overlay_color": { "type": "string", "description": "TODO description: overlay color", "title": "Overlay Color" },
|
|
|
|
|
|
"texture": { "type": "string", "description": "TODO description: texture", "title": "Texture" },
|
|
|
|
|
|
"texture_index": { "type": "integer", "description": "TODO description: texture index", "title": "Texture Index" }
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"textures": {
|
|
|
|
|
|
"type": "object",
|
|
|
|
|
|
"additionalProperties": { "type": "string", "description": "TODO description: additionalProperties", "title": "TODO" },
|
|
|
|
|
|
"description": "TODO description: textures",
|
|
|
|
|
|
"title": "Textures"
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"description": "TODO description: description"
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"additionalProperties": false
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"additionalProperties": false
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|