* - Add mob effects enum * - Add biome and biome tags to enum * - Fix feature rules only showing with 1.13.0 format version * - Replace 1.20.41 -> 1.20.80 - Make certain format versions restricted to 1.10.0 * - Remove example stick (having this here was annoying) * - Fix * - Remove empty sounds example * - Misc fixes for entity components
187 lines
6.4 KiB
JSON
187 lines
6.4 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema",
|
|
"$id": "blockception.minecraft.behavior.animation_controller",
|
|
"defaultSnippets": [
|
|
{
|
|
"label": "New animation controller",
|
|
"body": {
|
|
"format_version": "${1:1.10.0}",
|
|
"animation_controllers": {
|
|
"controller.animation.${2:${TM_FILENAME/[\\.].*//}}": {
|
|
"states": {
|
|
"default": "^{$3}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"examples": [
|
|
{
|
|
"format_version": "1.10.0",
|
|
"animation_controllers": {
|
|
"controller.animation.example": {
|
|
"initial_state": "default",
|
|
"states": { "default": { "transitions": [{ "state_1": "query.is_baby" }] }, "state_1": {} }
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"definitions": {
|
|
"animationspec": {
|
|
"anyOf": [
|
|
{
|
|
"title": "Animation Specification",
|
|
"description": "A single string that specifies which animation there are.",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"title": "Animation Specification",
|
|
"description": "A object specification on when to animate.",
|
|
"maxProperties": 1,
|
|
"minProperties": 1,
|
|
"additionalProperties": {
|
|
"$ref": "../../molang/string.json"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"particle_effect_spec": {
|
|
"additionalProperties": false,
|
|
"type": "object",
|
|
"required": ["effect"],
|
|
"properties": {
|
|
"bind_to_actor": {
|
|
"type": "boolean",
|
|
"title": "Bind To Actor",
|
|
"description": "Set to false to have the effect spawned in the world without being bound to an actor (by default an effect is bound to the actor).",
|
|
"const": false
|
|
},
|
|
"effect": {
|
|
"type": "string",
|
|
"title": "Effect",
|
|
"description": "The name of a particle effect that should be played."
|
|
},
|
|
"locator": {
|
|
"type": "string",
|
|
"title": "Locator",
|
|
"description": "The name of a locator on the actor where the effect should be located."
|
|
},
|
|
"pre_effect_script": {
|
|
"type": "string",
|
|
"title": "Pre Effect Script",
|
|
"description": "A molang script that will be run when the particle emitter is initialized."
|
|
}
|
|
}
|
|
},
|
|
"commands": {
|
|
"type": "string",
|
|
"description": "The event or commands to execute.",
|
|
"title": "Commands",
|
|
"anyOf": [
|
|
{ "pattern": "^@s .+$", "title": "Event" },
|
|
{ "pattern": "^/.+$", "title": "Command" },
|
|
{ "pattern": "^.+;$", "title": "Molang" }
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "Animation Controller",
|
|
"description": "Animation controller for behaviors.",
|
|
"required": ["format_version", "animation_controllers"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"format_version": { "type": "string", "const": "1.10.0" },
|
|
"animation_controllers": {
|
|
"type": "object",
|
|
"title": "Animation Controllers",
|
|
"description": "The animation controllers schema for.",
|
|
"propertyNames": {
|
|
"pattern": "^controller\\.animation\\.[a-z\\.]+",
|
|
"examples": ["controller.animation.example", "controller.animation.example.foo"]
|
|
},
|
|
"additionalProperties": {
|
|
"additionalProperties": false,
|
|
"type": "object",
|
|
"title": "Animation Controller",
|
|
"description": "A single animation controller.",
|
|
"required": ["states"],
|
|
"minProperties": 1,
|
|
"properties": {
|
|
"states": {
|
|
"title": "States",
|
|
"description": "The states of this animation controller.",
|
|
"propertyNames": { "pattern": "[a-z\\.]+" },
|
|
"minProperties": 1,
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"additionalProperties": false,
|
|
"title": "Animation State",
|
|
"description": "Animation state.",
|
|
"type": "object",
|
|
"examples": [
|
|
{
|
|
"animations": ["anim.idle"],
|
|
"transitions": [{ "example": "query.is_sheared" }]
|
|
}
|
|
],
|
|
"properties": {
|
|
"animations": {
|
|
"title": "Animations",
|
|
"description": "The animations definition for.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/animationspec",
|
|
"description": "The key definition of an animation to play, defined in the entity.",
|
|
"title": "Animations"
|
|
}
|
|
},
|
|
"on_entry": {
|
|
"type": "array",
|
|
"description": "Events, commands or transitions to preform on entry of this state.",
|
|
"title": "On Entry",
|
|
"items": {
|
|
"$ref": "#/definitions/commands"
|
|
}
|
|
},
|
|
"on_exit": {
|
|
"type": "array",
|
|
"description": "Events, commands or transitions to preform on exit of this state.",
|
|
"title": "On Exit",
|
|
"items": {
|
|
"$ref": "#/definitions/commands"
|
|
}
|
|
},
|
|
"transitions": {
|
|
"title": "Transition",
|
|
"description": "The transition definition for.",
|
|
"minProperties": 1,
|
|
"type": "array",
|
|
"items": {
|
|
"title": "Transition",
|
|
"description": "A transition to another state.",
|
|
"type": "object",
|
|
"maxProperties": 1,
|
|
"minProperties": 1,
|
|
"examples": [{ "default": "query.is_chested" }],
|
|
"additionalProperties": {
|
|
"$ref": "../../molang/string.json"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"initial_state": {
|
|
"title": "Initial State",
|
|
"description": "The state to start with, if not specified state at position 0 in the array is used.",
|
|
"type": "string",
|
|
"examples": ["default"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|