diff --git a/source/resource/animation_controllers/1.10.0/animation_controller.json b/source/resource/animation_controllers/1.10.0/animation_controller.json deleted file mode 100644 index f786a72a..00000000 --- a/source/resource/animation_controllers/1.10.0/animation_controller.json +++ /dev/null @@ -1,200 +0,0 @@ -{ - "$id": "blockception.minecraft.resource.animation_controller1.10.0", - "type": "object", - "title": "Animation Controller 1.10.0", - "description": "UNDOCUMENTED", - "$comment": "UNDOCUMENTED", - "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 how to transition", - "maxProperties": 1, - "minProperties": 1, - "additionalProperties": { - "oneOf": [ - { "type": "string", "$ref": "../../../molang/string.json" }, - { "type": "number", "description": "A blend weight" } - ] - } - } - ] - }, - "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", - "pattern": "^.+;$" - } - } - }, - "commands": { "type": "string", "description": "The event or commands to execute", "pattern": "^(@s .+|/.+)$" } - }, - "required": ["format_version", "animation_controllers"], - "additionalProperties": false, - "properties": { - "format_version": { - "title": "1.10.0 Format Version", - "type": "string", - "pattern": "^1.10.0$", - "description": "A version that tells minecraft what type of data format can be expected when reading this file." - }, - "animation_controllers": { - "type": "object", - "title": "Animation Controllers Schema", - "description": "The animation controllers schema for 1.10.0", - "propertyNames": { - "pattern": "^controller\\.animation\\.[a-z\\.]+", - "examples": ["controller.animation.example", "controller.animation.example.foo"] - }, - "additionalProperties": { - "additionalProperties": false, - "type": "object", - "title": "A Animation Controller", - "description": "A single animation controller 1.10.0", - "required": ["states"], - "minProperties": 1, - "examples": [ - { - "controller.animation.some_name": { - "initial_state": "default", - "states": { - "default": { "transitions": [{ "state_1": "query.is_baby" }] }, - "state_1": { "animations": ["state_1"], "transitions": [{ "default": "query.all_animations_finished" }] } - } - } - } - ], - "properties": { - "states": { - "title": "States", - "description": "The states of this animation controller", - "propertyNames": { "pattern": "[a-z\\.]+", "examples": ["default"] }, - "minProperties": 1, - "additionalProperties": { - "additionalProperties": false, - "title": "Animation State", - "description": "Animation state", - "type": "object", - "properties": { - "animations": { - "title": "Animations", - "description": "The animations definition for 1.10.0", - "type": "array", - "items": { "$ref": "#/definitions/animationspec", "title": "Animations" } - }, - "blend_transition": { - "title": "Blend Transition", - "description": "when transitioning away from this state, cross-fade over", - "oneOf": [ - { - "type": "number", - "description": "A short-hand version of blend_out that simply sets the amount of time to fade out if the animation is interrupted" - }, - { - "type": "object", - "description": "Specifies the cross-fade time in seconds when transitioning to another state", - "additionalProperties": { - "type": "number", - "description": "Mapping of time since the animation was canceled, to the blend value at that time. A default key of time=0 to a blend value of 1.0 is provided if any other key is set and a blend value at time=0 hasn't already been set." - } - } - ] - }, - "blend_via_shortest_path": { - "description": "When blending a transition to another state, animate each euler axis through the shortest rotation, instead of by value", - "type": "boolean", - "title": "Blend Via Shortest Path" - }, - "particle_effects": { - "description": "The effects to be emitted", - "type": "array", - "items": { - "$ref": "#/definitions/particle_effect_spec", - "description": "UNDOCUMENTED: particle effects", - "title": "Particle Effects" - }, - "title": "Particle Effects" - }, - "sound_effects": { - "type": "array", - "description": "Collection of sounds to trigger on entry to this animation state.", - "items": { - "type": "object", - "additionalProperties": false, - "required": ["effect"], - "properties": { - "effect": { - "description": "Valid sound effect names should be listed in the entity's resource_definition json file.", - "type": "string" - } - } - } - }, - "transitions": { - "title": "Transition", - "description": "The transition definition for 1.10.0", - "minProperties": 1, - "type": "array", - "examples": [[{ "some_state": "query.is_sheared" }]], - "items": { - "$ref": "#/definitions/animationspec", - "description": "UNDOCUMENTED: transitions", - "title": "Transitions", - "examples": [{ "some_state": "query.is_sheared" }] - } - }, - "variables": { - "type": "object", - "additionalProperties": { - "additionalProperties": false, - "type": "object", - "required": ["input"], - "properties": { - "input": { "title": "Input", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "$ref": "../../../molang/number.json" }, - "remap_curve": { - "title": "Remap Curve", - "additionalProperties": { "propertyNames": { "pattern": "^([\\-\\+0-9]+|[\\-\\+0-9]+.[0-9]+)$" }, "type": "number" } - } - } - } - }, - "on_entry": { - "title": "On Entry", - "description": "UNDOCUMENTED", - "$comment": "UNDOCUMENTED", - "type": "array", - "items": { "pattern": "^.+=.+;$", "title": "Molang", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" } - }, - "on_exit": { - "title": "On Exit", - "description": "UNDOCUMENTED", - "$comment": "UNDOCUMENTED", - "type": "array", - "items": { "pattern": "^.+=.+;$", "title": "Molang", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" } - } - } - } - }, - "initial_state": { "type": "string", "description": "UNDOCUMENTED: initial state", "title": "Initial State" } - } - } - } - } -} diff --git a/source/resource/animation_controllers/1.8.0/animation_controller.json b/source/resource/animation_controllers/1.8.0/animation_controller.json deleted file mode 100644 index 870e65ba..00000000 --- a/source/resource/animation_controllers/1.8.0/animation_controller.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "$id": "blockception.minecraft.resource.animation_controller1.8.0", - "type": "object", - "title": "Animation Controller 1.8.0", - "description": "UNDOCUMENTED", - "$comment": "UNDOCUMENTED", - "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 how to transition", - "maxProperties": 1, - "minProperties": 1, - "additionalProperties": { - "oneOf": [ - { "type": "string", "$ref": "../../../molang/string.json" }, - { "type": "number", "description": "A blend weight" } - ] - } - } - ] - }, - "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", - "pattern": "^.+;$" - } - } - }, - "commands": { "type": "string", "description": "The event or commands to execute", "pattern": "^(@s .+|/.+)$" } - }, - "required": ["format_version", "animation_controllers"], - "additionalProperties": false, - "properties": { - "format_version": { - "title": "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." - }, - "animation_controllers": { - "type": "object", - "title": "Animation Controllers Schema", - "description": "The animation controllers schema for 1.8.0", - "propertyNames": { - "pattern": "^controller\\.animation\\.[a-z\\.]+", - "examples": ["controller.animation.example", "controller.animation.example.foo"] - }, - "additionalProperties": { - "additionalProperties": false, - "type": "object", - "title": "A Animation Controller", - "description": "A single animation controller 1.8.0", - "required": ["states"], - "minProperties": 1, - "properties": { - "states": { - "title": "States", - "description": "The states of this animation controller", - "propertyNames": { "pattern": "[a-z\\.]+" }, - "minProperties": 1, - "additionalProperties": { - "additionalProperties": false, - "title": "Animation State", - "description": "Animation state", - "type": "object", - "properties": { - "animations": { - "title": "Animations", - "description": "The animations definition for 1.10.0", - "type": "array", - "items": { "$ref": "#/definitions/animationspec", "title": "Animations" } - }, - "blend_transition": { - "title": "Blend Transition", - "oneOf": [ - { - "type": "number", - "description": "A short-hand version of blend_out that simply sets the amount of time to fade out if the animation is interrupted" - }, - { - "type": "object", - "description": "Specifies the cross-fade time in seconds when transitioning to another state", - "additionalProperties": { - "type": "number", - "description": "Mapping of time since the animation was canceled, to the blend value at that time. A default key of time=0 to a blend value of 1.0 is provided if any other key is set and a blend value at time=0 hasn't already been set." - } - } - ] - }, - "blend_via_shortest_path": { - "description": "When blending a transition to another state, animate each euler axis through the shortest rotation, instead of by value", - "type": "boolean", - "title": "Blend Via Shortest Path" - }, - "particle_effects": { - "description": "The effects to be emitted", - "type": "array", - "items": { - "$ref": "#/definitions/particle_effect_spec", - "description": "UNDOCUMENTED: particle effects", - "title": "Particle Effects" - }, - "title": "Particle Effects" - }, - "sound_effects": { - "type": "array", - "description": "Collection of sounds to trigger on entry to this animation state.", - "items": { - "type": "object", - "additionalProperties": false, - "required": ["effect"], - "properties": { - "effect": { - "description": "Valid sound effect names should be listed in the entity's resource_definition json file.", - "type": "string" - } - } - } - }, - "transitions": { - "title": "Transition", - "description": "The transition definition for 1.8.0", - "minProperties": 1, - "type": "array", - "items": { - "$ref": "#/definitions/animationspec", - "description": "The specification on when to transition to a new state", - "title": "Transitions" - } - }, - "variables": { - "type": "object", - "additionalProperties": { - "additionalProperties": false, - "type": "object", - "required": ["input"], - "properties": { - "input": { "$ref": "../../../molang/number.json" }, - "remap_curve": { "additionalProperties": { "type": "number" } } - } - } - }, - "on_entry": { - "title": "On Entry", - "description": "UNDOCUMENTED", - "$comment": "UNDOCUMENTED", - "type": "array", - "items": { "pattern": "^.+;$", "title": "Molang", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" } - }, - "on_exit": { - "title": "On Exit", - "description": "UNDOCUMENTED", - "$comment": "UNDOCUMENTED", - "type": "array", - "items": { "pattern": "^.+;$", "title": "Molang", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" } - } - } - } - }, - "initial_state": { "type": "string", "description": "UNDOCUMENTED: initial state", "title": "Initial State" } - } - } - } - } -} diff --git a/source/resource/animation_controllers/animation_controller.json b/source/resource/animation_controllers/animation_controller.json index b523f8d0..79adb171 100644 --- a/source/resource/animation_controllers/animation_controller.json +++ b/source/resource/animation_controllers/animation_controller.json @@ -2,7 +2,7 @@ "$id": "blockception.minecraft.resource.animation_controller", "examples": [ { - "format_version": "1.10.0", + "format_version": "", "animation_controllers": { "controller.animation.example": { "states": { @@ -13,12 +13,199 @@ } } ], - "allOf": [ - { "if": { "properties": { "format_version": { "type": "string", "const": "1.8.0" } } }, "then": { "$ref": "./1.8.0/animation_controller.json" } }, - { - "if": { "properties": { "format_version": { "type": "string", "const": "1.10.0" } } }, - "then": { "$ref": "./1.10.0/animation_controller.json" } + "type": "object", + "title": "Animation Controller", + "description": "UNDOCUMENTED", + "$comment": "UNDOCUMENTED", + "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 how to transition", + "maxProperties": 1, + "minProperties": 1, + "additionalProperties": { + "oneOf": [ + { "type": "string", "$ref": "../../../molang/string.json" }, + { "type": "number", "description": "A blend weight" } + ] + } + } + ] }, - { "properties": { "format_version": { "$ref": "../../general/format_version.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", + "pattern": "^.+;$" + } + } + }, + "commands": { "type": "string", "description": "The event or commands to execute", "pattern": "^(@s .+|/.+)$" } + }, + "required": ["format_version", "animation_controllers"], + "additionalProperties": false, + "properties": { + "format_version": { "$ref": "../../general/format_version.json" }, + "animation_controllers": { + "type": "object", + "title": "Animation Controllers Schema", + "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": "A Animation Controller", + "description": "A single animation controller", + "required": ["states"], + "minProperties": 1, + "examples": [ + { + "controller.animation.some_name": { + "initial_state": "default", + "states": { + "default": { "transitions": [{ "state_1": "query.is_baby" }] }, + "state_1": { "animations": ["state_1"], "transitions": [{ "default": "query.all_animations_finished" }] } + } + } + } + ], + "properties": { + "states": { + "title": "States", + "description": "The states of this animation controller", + "propertyNames": { "pattern": "[a-z\\.]+", "examples": ["default"] }, + "minProperties": 1, + "type": "object", + "additionalProperties": { + "additionalProperties": false, + "title": "Animation State", + "description": "Animation state", + "type": "object", + "properties": { + "animations": { + "title": "Animations", + "description": "The animations definition for", + "type": "array", + "items": { "$ref": "#/definitions/animationspec", "title": "Animations" } + }, + "blend_transition": { + "title": "Blend Transition", + "oneOf": [ + { + "type": "number", + "description": "A short-hand version of blend_out that simply sets the amount of time to fade out if the animation is interrupted" + }, + { + "type": "object", + "description": "Specifies the cross-fade time in seconds when transitioning to another state", + "additionalProperties": { + "type": "number", + "description": "Mapping of time since the animation was canceled, to the blend value at that time. A default key of time=0 to a blend value of 1.0 is provided if any other key is set and a blend value at time=0 hasn't already been set." + } + } + ] + }, + "blend_via_shortest_path": { + "description": "When blending a transition to another state, animate each euler axis through the shortest rotation, instead of by value", + "type": "boolean", + "title": "Blend Via Shortest Path" + }, + "particle_effects": { + "description": "The effects to be emitted", + "type": "array", + "items": { + "$ref": "#/definitions/particle_effect_spec", + "description": "UNDOCUMENTED: particle effects", + "title": "Particle Effects" + }, + "title": "Particle Effects" + }, + "sound_effects": { + "type": "array", + "description": "Collection of sounds to trigger on entry to this animation state.", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["effect"], + "properties": { + "effect": { + "description": "Valid sound effect names should be listed in the entity's resource_definition json file.", + "type": "string" + } + } + } + }, + "transitions": { + "title": "Transition", + "description": "The transition definition for", + "minProperties": 1, + "type": "array", + "items": { + "$ref": "#/definitions/animationspec", + "description": "The specification on when to transition to a new state", + "title": "Transitions" + } + }, + "variables": { + "type": "object", + "additionalProperties": { + "additionalProperties": false, + "type": "object", + "required": ["input"], + "properties": { + "input": { "$ref": "../../../molang/number.json" }, + "remap_curve": { + "title": "Remap Curve", + "type": "object", + "additionalProperties": { "propertyNames": { "pattern": "^([\\-\\+0-9]+|[\\-\\+0-9]+.[0-9]+)$" }, "type": "number" } + } + } + } + }, + "on_entry": { + "title": "On Entry", + "description": "Sets molang on data on entry", + "$comment": "UNDOCUMENTED", + "type": "array", + "items": { "pattern": "^.+=.+;$", "title": "Molang", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" } + }, + "on_exit": { + "title": "On Exit", + "description": "Sets molang on data on exit", + "$comment": "UNDOCUMENTED", + "type": "array", + "items": { "pattern": "^.+=.+;$", "title": "Molang", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "string" } + } + } + } + }, + "initial_state": { + "type": "string", + "description": "The state to start with, if not specified state at position 0 in the array is used", + "title": "Initial State" + } + } + } + } + } }