Files
minecraft-bedrock-json-schemas/behavior/animation_controllers/animation_controller.json
2021-04-04 12:01:24 +00:00

1 line
7.4 KiB
JSON

{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.behavior.animation_controller","examples":[{"format_version":"1.10.0","animation_controllers":{"controller.animation.example":{"initial_state":"default","states":{"default":{"transitions":[{"state_1":"query.is_baby"}]},"state_1":{}}}}}],"allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.8.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/C"}}],"definitions":{"A_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":"#/definitions/B"}}]},"A_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)."},"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"}}},"A_commands":{"type":"string","description":"The event or commands to execute","oneOf":[{"pattern":"^@s .+$","title":"Event"},{"pattern":"^/.+$","title":"Command"},{"pattern":"^.+;$","title":"Molang"}]},"B":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"A":{"type":"object","title":"Animation Controller 1.8.0","description":"Animation controller for behaviors 1.8.0","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\\.]+"},"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.8.0","type":"array","items":{"$ref":"#/definitions/A_animationspec","description":"The animation key to play, defined in the entity","title":"Animation"}},"on_entry":{"type":"array","description":"Events, commands or transitions to preform","items":{"$ref":"#/definitions/A_commands"}},"on_exit":{"type":"array","description":"Events, commands or transitions to preform","items":{"$ref":"#/definitions/A_commands"}},"transitions":{"title":"Transition","description":"The transition definition for 1.8.0","minProperties":1,"type":"array","items":{"title":"Transition","description":"A transition to another state","type":"object","examples":[{"default":"query.is_chested"}],"additionalProperties":{"$ref":"#/definitions/B"},"minProperties":1,"maxProperties":1}}}}},"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"]}}}}}},"C_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":{"$ref":"#/definitions/B"}}]},"C_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)."},"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"}}},"C_commands":{"type":"string","description":"The event or commands to execute","examples":["@s example:event"],"oneOf":[{"pattern":"^@s .+$","title":"Event"},{"pattern":"^/.+$","title":"Command"},{"pattern":"^.+;$","title":"Molang"}]},"C":{"type":"object","required":["format_version","animation_controllers"],"additionalProperties":false,"title":"Animation Controller 1.10.0","description":"Animation controller for minecraft behavior 1.10.0","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","description":"The animation controllers schema for 1.10.0","propertyNames":{"pattern":"^controller\\.animation\\.[a-z\\.]+"},"additionalProperties":{"additionalProperties":false,"type":"object","title":"Animation Controller","description":"A single animation controller 1.10.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/C_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/C_commands"}},"on_exit":{"type":"array","description":"Events, commands or transitions to preform on exit of this state","title":"On Exit","items":{"$ref":"#/definitions/C_commands"}},"transitions":{"title":"Transition","description":"The transition definition for 1.10.0","minProperties":1,"type":"array","items":{"title":"Transitions","description":"A object specification on how to transition","type":"object","maxProperties":1,"minProperties":1,"additionalProperties":{"$ref":"#/definitions/B"}}}}}},"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"}}}}}}}}