From 2b6de9e33dc36385204aa41e8ed112231b8ae9ca Mon Sep 17 00:00:00 2001 From: Orbi-bot Date: Sun, 14 Jul 2024 12:01:47 +0000 Subject: [PATCH] auto: generated json schemas 2024-07-14 --- behavior/animations/animations.json | 2 +- resource/animations/actor_animation.json | 2 +- resource/render_controllers/render_controllers.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/behavior/animations/animations.json b/behavior/animations/animations.json index 9720e32c..1c5f3ce0 100644 --- a/behavior/animations/animations.json +++ b/behavior/animations/animations.json @@ -1 +1 @@ -{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.behavior.animations","defaultSnippets":[{"label":"New animation","body":{"format_version":"${1:1.10.0}","animations":{"animation.${2:${TM_FILENAME/[\\.].*//}}":"^{$3}"}}}],"examples":[{"format_version":"1.10.0","animations":{"animation.example":{}}}],"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":{"$ref":"#/definitions/A"}}]},"particle_effect_spec":{"additionalProperties":false,"type":"object","required":["effect"],"properties":{"bind_to_actor":{"title":"Bind To Actor","type":"boolean","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","description":"The name of a particle effect that should be played.","title":"Effect"},"locator":{"type":"string","description":"The name of a locator on the actor where the effect should be located.","title":"Locator"},"pre_effect_script":{"type":"string","description":"A molang script that will be run when the particle emitter is initialized.","title":"Pre Effect Script"}}},"commands":{"type":"string","description":"The event or commands to execute.","title":"Commands","anyOf":[{"pattern":"^.*=.*;$","title":"Variable","description":"Sets the value to a molang variable."},{"pattern":"^/[a-z].*$","title":"Minecraft Command","description":"Executes a minecraft command."},{"pattern":"[A-Za-z][a-z]*\\.[a-z_0-9]*","title":"Molang"},{"pattern":"^@s .*$","title":"Event","description":"An event to be called upon within the executing entity."}]},"A":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]}},"type":"object","title":"Animation","description":"Animation for behavior for.","required":["format_version","animations"],"additionalProperties":false,"properties":{"format_version":{"type":"string","const":"1.10.0"},"animations":{"title":"Animations Schema","description":"The animation specification.","type":"object","propertyNames":{"pattern":"^animation\\.[a-z\\.]+"},"additionalProperties":{"title":"Animation","type":"object","description":"A single animation definition for.","additionalProperties":false,"propertyNames":{"examples":["animation.example.foo"]},"properties":{"animation_length":{"type":"number","description":"The time in seconds this animation will last.","title":"Animation Length"},"loop":{"type":"boolean","description":"Whenever this animation should loop once it reaches the end, will only happen if the animation is still active.","title":"Loop"},"timeline":{"title":"Timeline","description":"A timeline specification, property names are timestamps.","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"oneOf":[{"type":"string","$ref":"#/definitions/commands"},{"type":"array","title":"Collection Timelime Items","items":{"$ref":"#/definitions/commands"}}]}},"anim_time_update":{"title":"Animation Time Update","description":"How does time pass when playing the animation. Defaults to `query.anim_time + query.delta_time` which means advance in seconds.","$ref":"#/definitions/B"}}}}}} \ No newline at end of file +{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.behavior.animations","defaultSnippets":[{"label":"New animation","body":{"format_version":"${1:1.10.0}","animations":{"animation.${2:${TM_FILENAME/[\\.].*//}}":"^{$3}"}}}],"examples":[{"format_version":"1.10.0","animations":{"animation.example":{}}}],"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":{"$ref":"#/definitions/A"}}]},"particle_effect_spec":{"additionalProperties":false,"type":"object","required":["effect"],"properties":{"bind_to_actor":{"title":"Bind To Actor","type":"boolean","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","description":"The name of a particle effect that should be played.","title":"Effect"},"locator":{"type":"string","description":"The name of a locator on the actor where the effect should be located.","title":"Locator"},"pre_effect_script":{"type":"string","description":"A molang script that will be run when the particle emitter is initialized.","title":"Pre Effect Script"}}},"commands":{"type":"string","description":"The event or commands to execute.","title":"Commands","anyOf":[{"pattern":"^.*=.*;$","title":"Variable","description":"Sets the value to a molang variable."},{"pattern":"^/[a-z].*$","title":"Minecraft Command","description":"Executes a minecraft command."},{"pattern":"[A-Za-z][a-z]*\\.[a-z_0-9]*","title":"Molang"},{"pattern":"^@s .*$","title":"Event","description":"An event to be called upon within the executing entity."}]},"A":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]}},"type":"object","title":"Animation","description":"Animation for behavior for.","required":["format_version","animations"],"additionalProperties":false,"properties":{"format_version":{"type":"string","enum":["1.8.0","1.10.0"]},"animations":{"title":"Animations Schema","description":"The animation specification.","type":"object","propertyNames":{"pattern":"^animation\\.[a-z\\.]+"},"additionalProperties":{"title":"Animation","type":"object","description":"A single animation definition for.","additionalProperties":false,"propertyNames":{"examples":["animation.example.foo"]},"properties":{"animation_length":{"type":"number","description":"The time in seconds this animation will last.","title":"Animation Length"},"loop":{"type":"boolean","description":"Whenever this animation should loop once it reaches the end, will only happen if the animation is still active.","title":"Loop"},"timeline":{"title":"Timeline","description":"A timeline specification, property names are timestamps.","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"oneOf":[{"type":"string","$ref":"#/definitions/commands"},{"type":"array","title":"Collection Timelime Items","items":{"$ref":"#/definitions/commands"}}]}},"anim_time_update":{"title":"Animation Time Update","description":"How does time pass when playing the animation. Defaults to `query.anim_time + query.delta_time` which means advance in seconds.","$ref":"#/definitions/B"}}}}}} \ No newline at end of file diff --git a/resource/animations/actor_animation.json b/resource/animations/actor_animation.json index 7640585a..cb51f8cb 100644 --- a/resource/animations/actor_animation.json +++ b/resource/animations/actor_animation.json @@ -1 +1 @@ -{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.resource.actor_animation","defaultSnippets":[{"label":"New animation","body":{"format_version":"${1:1.10.0}","animations":{"animation.${2:${TM_FILENAME/[\\.].*//}}":"^{$3}"}}}],"examples":[{"format_version":"1.10.0","animations":{"animation.annie.idle":{"loop":true,"animation_length":2.12,"bones":{}}}}],"additionalProperties":false,"type":"object","title":"Actor Animation","description":"The RP animation that changes an actors models, or molang data.","$comment":"UNDOCUMENTED","definitions":{"ParticleEffect":{"type":"object","title":"Particle Effect","additionalProperties":false,"required":["effect"],"properties":{"effect":{"type":"string","title":"Particle Id","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":{"title":"Pre Effect Script","description":"A molang script that will be run when the particle emitter is initialized.","$ref":"#/definitions/A"},"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}}},"PositionV3":{"title":"Position Array","description":"An array of 3 items that describe the bones position.","type":"array","examples":[[0,0,0]],"maxItems":3,"minItems":3,"items":[{"title":"Position X","description":"The position over the X-axis or forwards/backwards.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Position Y","description":"The position over the Y-axis, or up/down.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Position Z","description":"The position over the Z-axis, or left/right.\nCan be molang or a float","$ref":"#/definitions/B"}]},"RotationV3":{"title":"Rotation Array","description":"An array of 3 items that describe the bones rotation.","type":"array","examples":[[0,0,0]],"maxItems":3,"minItems":3,"items":[{"title":"Rotation X","description":"The rotation over the X-axis, or up or down.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Rotation Y","description":"The rotation over the Y-axis, or yaw.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Rotation Z","description":"The rotation over the Z-axis, or roll.\nCan be molang or a float","$ref":"#/definitions/B"}]},"ScaleV3":{"title":"Scale Array","description":"An array of 3 items that describe the bones scale.","type":"array","examples":[[0,0,0]],"maxItems":3,"minItems":3,"items":[{"title":"Scale X","description":"The scale over the X-axis or forwards/backwards.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Scale Y","description":"The scale over the Y-axis, or up/down.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Scale Z","description":"The scale over the Z-axis, or left/right.\nCan be molang or a float","$ref":"#/definitions/B"}]},"SoundEffect":{"title":"Sound Effect","type":"object","additionalProperties":false,"properties":{"effect":{"title":"Effect","type":"string","description":"Valid sound effect names should be listed in the entity's resource_definition json file."}}},"A":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]}},"required":["format_version","animations"],"properties":{"format_version":{"type":"string","const":"1.10.0"},"animations":{"title":"Animations Schema","description":"The animation specification.","propertyNames":{"pattern":"^animation\\.[a-z\\.]+"},"type":"object","additionalProperties":{"additionalProperties":false,"type":"object","title":"Animation","description":"The animation specification.","properties":{"anim_time_update":{"title":"Animation Time Update","description":"How does time pass when playing the animation. Defaults to `query.anim_time + query.delta_time` which means advance in seconds.","$ref":"#/definitions/B"},"animation_length":{"title":"Animation Length","description":"Override calculated value (set as the last keyframe time) and set animation length in seconds.","type":"number"},"blend_weight":{"title":"Blend Weight","description":"The weight of the animation when blending with other animations. Defaults to 1.","$comment":"UNDOCUMENTED","$ref":"#/definitions/B"},"bones":{"title":"Bones","description":"Defines how the bones in an animation move or transform.","propertyNames":{"examples":["leftArm"]},"type":"object","minProperties":1,"additionalProperties":{"title":"Bone Transformation","description":"The bone definition that declare how it transforms during animation.","type":"object","additionalProperties":false,"properties":{"position":{"title":"Position","description":"The Position transformation during this animation.","oneOf":[{"type":"array","$ref":"#/definitions/PositionV3"},{"type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"$ref":"#/definitions/B","description":"Uniform position."},{"type":"array","$ref":"#/definitions/PositionV3"},{"additionalProperties":false,"type":"object","properties":{"lerp_mode":{"type":"string","title":"Lerp Mode","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["linear","catmullrom"]},"pre":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/PositionV3"},"post":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/PositionV3"}}}]}}]},"rotation":{"title":"Rotation","description":"The rotation transformation during this animation.","oneOf":[{"type":"array","$ref":"#/definitions/RotationV3"},{"type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"$ref":"#/definitions/B","description":"Uniform rotation."},{"type":"array","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/RotationV3"},{"additionalProperties":false,"type":"object","properties":{"lerp_mode":{"type":"string","title":"Lerp Mode","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["linear","catmullrom"]},"pre":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/RotationV3"},"post":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/RotationV3"}}}]}}]},"relative_to":{"title":"Relative To","description":"If set, makes the bone rotation relative to the entity instead of the bone's parent.","properties":{"rotation":{"title":"Rotation","description":"If set, makes the bone rotation relative to the entity instead of the bone's parent.","type":"string"}}},"scale":{"title":"Scale","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","oneOf":[{"$ref":"#/definitions/B","description":"Uniform scale."},{"$ref":"#/definitions/ScaleV3"},{"type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"$ref":"#/definitions/B","description":"Uniform rotation."},{"type":"array","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/ScaleV3"},{"additionalProperties":false,"type":"object","properties":{"lerp_mode":{"type":"string","title":"Lerp Mode","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["linear","catmullrom"]},"pre":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/ScaleV3"},"post":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/ScaleV3"}}}]}}]}}}},"loop":{"title":"Loop","description":"Should this animation stop, loop, or stay on the last frame when finished (true, false, hold_on_last_frame).","oneOf":[{"type":"boolean"},{"type":"string","enum":["hold_on_last_frame"]}]},"loop_delay":{"title":"Loop Delay","description":"How long to wait in seconds before looping this animation. Note that this expression is evaluated after each loop and on looping animation only.","$ref":"#/definitions/B"},"override_previous_animation":{"title":"Override Previous Animation","description":"Reset bones in this animation to the default pose before applying this animation.","type":"boolean"},"particle_effects":{"title":"Particle Effects","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"examples":[{"0.0":{}}],"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"type":"object","$ref":"#/definitions/ParticleEffect"},{"type":"array","items":{"$ref":"#/definitions/ParticleEffect"}}]}},"start_delay":{"title":"Start Delay","description":"How long to wait in seconds before playing this animation. Note that this expression is evaluated once before playing, and only re-evaluated if asked to play from the beginning again. A looping animation should use `loop_delay` if it wants a delay between loops.","$ref":"#/definitions/B"},"sound_effects":{"title":"Sound Effect","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"type":"object","$ref":"#/definitions/SoundEffect"},{"type":"array","items":{"$ref":"#/definitions/SoundEffect"}}]}},"timeline":{"title":"Timeline","description":"The time line.","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"examples":[{"0.0":{}}],"additionalProperties":{"oneOf":[{"type":"string","title":"Molang","description":"Variable definition.","pattern":"^(v|variable)\\..*=.*;$"},{"type":"array","title":"Collection Timelime Items","items":{"type":"string","title":"Molang","description":"Variable definition.","pattern":"^(v|variable)\\..*=.*;$"}}]}}}}}}} \ No newline at end of file +{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.resource.actor_animation","defaultSnippets":[{"label":"New animation","body":{"format_version":"${1:1.10.0}","animations":{"animation.${2:${TM_FILENAME/[\\.].*//}}":"^{$3}"}}}],"examples":[{"format_version":"1.10.0","animations":{"animation.annie.idle":{"loop":true,"animation_length":2.12,"bones":{}}}}],"additionalProperties":false,"type":"object","title":"Actor Animation","description":"The RP animation that changes an actors models, or molang data.","$comment":"UNDOCUMENTED","definitions":{"ParticleEffect":{"type":"object","title":"Particle Effect","additionalProperties":false,"required":["effect"],"properties":{"effect":{"type":"string","title":"Particle Id","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":{"title":"Pre Effect Script","description":"A molang script that will be run when the particle emitter is initialized.","$ref":"#/definitions/A"},"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}}},"PositionV3":{"title":"Position Array","description":"An array of 3 items that describe the bones position.","type":"array","examples":[[0,0,0]],"maxItems":3,"minItems":3,"items":[{"title":"Position X","description":"The position over the X-axis or forwards/backwards.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Position Y","description":"The position over the Y-axis, or up/down.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Position Z","description":"The position over the Z-axis, or left/right.\nCan be molang or a float","$ref":"#/definitions/B"}]},"RotationV3":{"title":"Rotation Array","description":"An array of 3 items that describe the bones rotation.","type":"array","examples":[[0,0,0]],"maxItems":3,"minItems":3,"items":[{"title":"Rotation X","description":"The rotation over the X-axis, or up or down.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Rotation Y","description":"The rotation over the Y-axis, or yaw.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Rotation Z","description":"The rotation over the Z-axis, or roll.\nCan be molang or a float","$ref":"#/definitions/B"}]},"ScaleV3":{"title":"Scale Array","description":"An array of 3 items that describe the bones scale.","type":"array","examples":[[0,0,0]],"maxItems":3,"minItems":3,"items":[{"title":"Scale X","description":"The scale over the X-axis or forwards/backwards.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Scale Y","description":"The scale over the Y-axis, or up/down.\nCan be molang or a float","$ref":"#/definitions/B"},{"title":"Scale Z","description":"The scale over the Z-axis, or left/right.\nCan be molang or a float","$ref":"#/definitions/B"}]},"SoundEffect":{"title":"Sound Effect","type":"object","additionalProperties":false,"properties":{"effect":{"title":"Effect","type":"string","description":"Valid sound effect names should be listed in the entity's resource_definition json file."}}},"A":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]}},"required":["format_version","animations"],"properties":{"format_version":{"type":"string","enum":["1.8.0","1.10.0"]},"animations":{"title":"Animations Schema","description":"The animation specification.","propertyNames":{"pattern":"^animation\\.[a-z\\.]+"},"type":"object","additionalProperties":{"additionalProperties":false,"type":"object","title":"Animation","description":"The animation specification.","properties":{"anim_time_update":{"title":"Animation Time Update","description":"How does time pass when playing the animation. Defaults to `query.anim_time + query.delta_time` which means advance in seconds.","$ref":"#/definitions/B"},"animation_length":{"title":"Animation Length","description":"Override calculated value (set as the last keyframe time) and set animation length in seconds.","type":"number"},"blend_weight":{"title":"Blend Weight","description":"The weight of the animation when blending with other animations. Defaults to 1.","$comment":"UNDOCUMENTED","$ref":"#/definitions/B"},"bones":{"title":"Bones","description":"Defines how the bones in an animation move or transform.","propertyNames":{"examples":["leftArm"]},"type":"object","minProperties":1,"additionalProperties":{"title":"Bone Transformation","description":"The bone definition that declare how it transforms during animation.","type":"object","additionalProperties":false,"properties":{"position":{"title":"Position","description":"The Position transformation during this animation.","oneOf":[{"type":"array","$ref":"#/definitions/PositionV3"},{"type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"$ref":"#/definitions/B","description":"Uniform position."},{"type":"array","$ref":"#/definitions/PositionV3"},{"additionalProperties":false,"type":"object","properties":{"lerp_mode":{"type":"string","title":"Lerp Mode","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["linear","catmullrom"]},"pre":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/PositionV3"},"post":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/PositionV3"}}}]}}]},"rotation":{"title":"Rotation","description":"The rotation transformation during this animation.","oneOf":[{"type":"array","$ref":"#/definitions/RotationV3"},{"type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"$ref":"#/definitions/B","description":"Uniform rotation."},{"type":"array","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/RotationV3"},{"additionalProperties":false,"type":"object","properties":{"lerp_mode":{"type":"string","title":"Lerp Mode","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["linear","catmullrom"]},"pre":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/RotationV3"},"post":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/RotationV3"}}}]}}]},"relative_to":{"title":"Relative To","description":"If set, makes the bone rotation relative to the entity instead of the bone's parent.","properties":{"rotation":{"title":"Rotation","description":"If set, makes the bone rotation relative to the entity instead of the bone's parent.","type":"string"}}},"scale":{"title":"Scale","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","oneOf":[{"$ref":"#/definitions/B","description":"Uniform scale."},{"$ref":"#/definitions/ScaleV3"},{"type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"$ref":"#/definitions/B","description":"Uniform rotation."},{"type":"array","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/ScaleV3"},{"additionalProperties":false,"type":"object","properties":{"lerp_mode":{"type":"string","title":"Lerp Mode","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["linear","catmullrom"]},"pre":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/ScaleV3"},"post":{"title":"Pre","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","$ref":"#/definitions/ScaleV3"}}}]}}]}}}},"loop":{"title":"Loop","description":"Should this animation stop, loop, or stay on the last frame when finished (true, false, hold_on_last_frame).","oneOf":[{"type":"boolean"},{"type":"string","enum":["hold_on_last_frame"]}]},"loop_delay":{"title":"Loop Delay","description":"How long to wait in seconds before looping this animation. Note that this expression is evaluated after each loop and on looping animation only.","$ref":"#/definitions/B"},"override_previous_animation":{"title":"Override Previous Animation","description":"Reset bones in this animation to the default pose before applying this animation.","type":"boolean"},"particle_effects":{"title":"Particle Effects","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"examples":[{"0.0":{}}],"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"type":"object","$ref":"#/definitions/ParticleEffect"},{"type":"array","items":{"$ref":"#/definitions/ParticleEffect"}}]}},"start_delay":{"title":"Start Delay","description":"How long to wait in seconds before playing this animation. Note that this expression is evaluated once before playing, and only re-evaluated if asked to play from the beginning again. A looping animation should use `loop_delay` if it wants a delay between loops.","$ref":"#/definitions/B"},"sound_effects":{"title":"Sound Effect","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"additionalProperties":{"title":"Timeline Object","description":"A single point in time.","oneOf":[{"type":"object","$ref":"#/definitions/SoundEffect"},{"type":"array","items":{"$ref":"#/definitions/SoundEffect"}}]}},"timeline":{"title":"Timeline","description":"The time line.","type":"object","propertyNames":{"pattern":"^(\\d+\\.\\d+|\\d+)$","examples":["0.0","1.0"]},"examples":[{"0.0":{}}],"additionalProperties":{"oneOf":[{"type":"string","title":"Molang","description":"Variable definition.","pattern":"^(v|variable)\\..*=.*;$"},{"type":"array","title":"Collection Timelime Items","items":{"type":"string","title":"Molang","description":"Variable definition.","pattern":"^(v|variable)\\..*=.*;$"}}]}}}}}}} \ No newline at end of file diff --git a/resource/render_controllers/render_controllers.json b/resource/render_controllers/render_controllers.json index cf5e01b5..e082122c 100644 --- a/resource/render_controllers/render_controllers.json +++ b/resource/render_controllers/render_controllers.json @@ -1 +1 @@ -{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.render_controllers","defaultSnippets":[{"label":"New render controller","body":{"format_version":"${1:1.10.0}","render_controllers":{"controller.render.${2:${TM_FILENAME/[\\.].*//}}":{"geometry":"Geometry.${3:default}","materials":[{"*":"Material.${4:default}"}],"textures":["Texture.${5:default}"]}}}}],"examples":[{"format_version":"1.10.0","render_controllers":{"controller.render.example":{"geometry":"Geometry.default","materials":[{"*":"Material.default"}],"textures":["Texture.default"]}}}],"additionalProperties":false,"type":"object","title":"Render Controllers","description":"A collection of render controllers to apply.","definitions":{"color":{"anyOf":[{"type":"number","description":"A color definition as number, between 0 and 1.","minimum":0,"maximum":1,"title":"Color Number"},{"type":"string","description":"A color definition in molang, between 0 and 1.","title":"Molang Color"}]},"A":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]}},"properties":{"format_version":{"type":"string","const":"1.10.0"},"render_controllers":{"title":"Render Controllers","description":"The collection of render controllers, each property is the identifier of a render controller.","type":"object","propertyNames":{"pattern":"^controller\\.render\\.[a-z\\.]+"},"additionalProperties":{"title":"Render Controller","additionalProperties":false,"type":"object","description":"A single render_controller.","required":["geometry","materials"],"properties":{"arrays":{"type":"object","title":"Arrays","additionalProperties":false,"description":"A collection of definition of arrays.","properties":{"geometries":{"type":"object","minProperties":1,"description":"A collection of Geometry array.","title":"Geometries","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^[Gg]eometry\\..+","description":"A geometry item, must be defined in the entity.","title":"Geometry Reference"},"description":"A geometry array definition.","title":"Geometries"}},"materials":{"type":"object","minProperties":1,"description":"A collection of materials array.","title":"Materials","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^[Mm]aterial\\..+","description":"A material item, must be defined in the entity.","title":"Material"},"description":"A material array definition.","title":"Materials"}},"textures":{"type":"object","minProperties":1,"description":"A collection of texture array.","title":"Textures","additionalProperties":{"type":"array","description":"Textures.","title":"Texture","items":{"type":"string","pattern":"^[Tt]exture\\..+","default":"texture.","description":"An texture item.","title":"Texture"}}}}},"color":{"additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, between 0 and 1.","title":"A"}},"description":"The color to apply.","title":"Color"},"filter_lighting":{"type":"boolean","description":"Whenever or not to apply enviroment lighting to this object.","title":"Filter Lighting"},"geometry":{"$ref":"#/definitions/A","description":"The model data to use.","title":"Geometry","examples":["geometry.default"]},"ignore_lighting":{"type":"boolean","description":"Whenever or not to apply enviroment lighting to this object.","title":"Ignore Lighting"},"is_hurt_color":{"additionalProperties":false,"type":"object","description":"The color to overlay on the entity when hurt.","title":"Is Hurt Color","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, between 0 and 1.","title":"A"}}},"light_color_multiplier":{"$ref":"#/definitions/B","description":"The amount of light that blends into what is being rendered, lower values gives darker rendering, (1 = 100%).","title":"Light Color Multiplier"},"materials":{"title":"Materials","description":"The specification where to apply materials to.","type":"array","minItems":1,"examples":[[{"*":"material.default"}],[{"Alpha_*":"material.alpha"}]],"items":{"type":"object","description":"The definitions of what material to apply to what set of bones, can be done through specific names, or patterns using * as a wildcard.","title":"Materials","additionalProperties":{"type":"string","description":"The material to apply, or patterns using * as a wildcard.","$comment":"UNDOCUMENTED","title":"Material"}}},"on_fire_color":{"title":"On Fire Color","description":"The color that will be overlayed when the object is on fire.","additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, must result in a float between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, must result in a float between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, must result in a float between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, must result in a float between 0 and 1.","title":"A"}}},"overlay_color":{"additionalProperties":false,"type":"object","description":"The color to put over the object.","title":"Overlay Color","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, between 0 and 1.","title":"A"}}},"part_visibility":{"title":"Part Visibility","description":"Determines what part of the object to show or hide.","type":"array","minItems":1,"items":{"description":"The object that describe different bone visibility.","title":"Part Visibility","type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}}},"rebuild_animation_matrices":{"type":"boolean","description":"Whenever or not to rebuild the animation matrices.","title":"Rebuild Animation Matrices"},"textures":{"title":"Textures","description":"The texture to apply, multiple texture can be used as to create an overlay effect, a specific material is required though.","type":"array","minItems":1,"items":{"description":"The texture definition to apply.","title":"Textures","$ref":"#/definitions/A","examples":["texture.default","Array.skins[query.variant]"]}},"uv_anim":{"title":"Uv Anim","description":"The UV animation to apply to the render texture.","additionalProperties":false,"type":"object","required":["offset","scale"],"properties":{"offset":{"title":"Offset","description":"The offset to apply the UV, this will cause the texture on the object to shift by said amount, can be molang. The value for how much to offset is usually specified between 0 and 1","type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"The offset to apply on the texture, can be molang.","title":"Offset"}},"scale":{"type":"array","description":"The scale to apply to the texture, this will cause texture to seem to grow and shrink if done per frame.","title":"Scale","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"The scale to apply on the texture, can be molang.","title":"Scale"}}}}}}}}} \ No newline at end of file +{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.render_controllers","defaultSnippets":[{"label":"New render controller","body":{"format_version":"${1:1.10.0}","render_controllers":{"controller.render.${2:${TM_FILENAME/[\\.].*//}}":{"geometry":"Geometry.${3:default}","materials":[{"*":"Material.${4:default}"}],"textures":["Texture.${5:default}"]}}}}],"examples":[{"format_version":"1.10.0","render_controllers":{"controller.render.example":{"geometry":"Geometry.default","materials":[{"*":"Material.default"}],"textures":["Texture.default"]}}}],"additionalProperties":false,"type":"object","title":"Render Controllers","description":"A collection of render controllers to apply.","definitions":{"color":{"anyOf":[{"type":"number","description":"A color definition as number, between 0 and 1.","minimum":0,"maximum":1,"title":"Color Number"},{"type":"string","description":"A color definition in molang, between 0 and 1.","title":"Molang Color"}]},"A":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]}},"properties":{"format_version":{"type":"string","enum":["1.8.0","1.10.0"]},"render_controllers":{"title":"Render Controllers","description":"The collection of render controllers, each property is the identifier of a render controller.","type":"object","propertyNames":{"pattern":"^controller\\.render\\.[a-z\\.]+"},"additionalProperties":{"title":"Render Controller","additionalProperties":false,"type":"object","description":"A single render_controller.","required":["geometry","materials"],"properties":{"arrays":{"type":"object","title":"Arrays","additionalProperties":false,"description":"A collection of definition of arrays.","properties":{"geometries":{"type":"object","minProperties":1,"description":"A collection of Geometry array.","title":"Geometries","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^[Gg]eometry\\..+","description":"A geometry item, must be defined in the entity.","title":"Geometry Reference"},"description":"A geometry array definition.","title":"Geometries"}},"materials":{"type":"object","minProperties":1,"description":"A collection of materials array.","title":"Materials","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^[Mm]aterial\\..+","description":"A material item, must be defined in the entity.","title":"Material"},"description":"A material array definition.","title":"Materials"}},"textures":{"type":"object","minProperties":1,"description":"A collection of texture array.","title":"Textures","additionalProperties":{"type":"array","description":"Textures.","title":"Texture","items":{"type":"string","pattern":"^[Tt]exture\\..+","default":"texture.","description":"An texture item.","title":"Texture"}}}}},"color":{"additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, between 0 and 1.","title":"A"}},"description":"The color to apply.","title":"Color"},"filter_lighting":{"type":"boolean","description":"Whenever or not to apply enviroment lighting to this object.","title":"Filter Lighting"},"geometry":{"$ref":"#/definitions/A","description":"The model data to use.","title":"Geometry","examples":["geometry.default"]},"ignore_lighting":{"type":"boolean","description":"Whenever or not to apply enviroment lighting to this object.","title":"Ignore Lighting"},"is_hurt_color":{"additionalProperties":false,"type":"object","description":"The color to overlay on the entity when hurt.","title":"Is Hurt Color","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, between 0 and 1.","title":"A"}}},"light_color_multiplier":{"$ref":"#/definitions/B","description":"The amount of light that blends into what is being rendered, lower values gives darker rendering, (1 = 100%).","title":"Light Color Multiplier"},"materials":{"title":"Materials","description":"The specification where to apply materials to.","type":"array","minItems":1,"examples":[[{"*":"material.default"}],[{"Alpha_*":"material.alpha"}]],"items":{"type":"object","description":"The definitions of what material to apply to what set of bones, can be done through specific names, or patterns using * as a wildcard.","title":"Materials","additionalProperties":{"type":"string","description":"The material to apply, or patterns using * as a wildcard.","$comment":"UNDOCUMENTED","title":"Material"}}},"on_fire_color":{"title":"On Fire Color","description":"The color that will be overlayed when the object is on fire.","additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, must result in a float between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, must result in a float between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, must result in a float between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, must result in a float between 0 and 1.","title":"A"}}},"overlay_color":{"additionalProperties":false,"type":"object","description":"The color to put over the object.","title":"Overlay Color","properties":{"r":{"$ref":"#/definitions/color","description":"The value of red, between 0 and 1.","title":"R"},"g":{"$ref":"#/definitions/color","description":"The value of green, between 0 and 1.","title":"G"},"b":{"$ref":"#/definitions/color","description":"The value of blue, between 0 and 1.","title":"B"},"a":{"$ref":"#/definitions/color","description":"The value of alpha, between 0 and 1.","title":"A"}}},"part_visibility":{"title":"Part Visibility","description":"Determines what part of the object to show or hide.","type":"array","minItems":1,"items":{"description":"The object that describe different bone visibility.","title":"Part Visibility","type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}}},"rebuild_animation_matrices":{"type":"boolean","description":"Whenever or not to rebuild the animation matrices.","title":"Rebuild Animation Matrices"},"textures":{"title":"Textures","description":"The texture to apply, multiple texture can be used as to create an overlay effect, a specific material is required though.","type":"array","minItems":1,"items":{"description":"The texture definition to apply.","title":"Textures","$ref":"#/definitions/A","examples":["texture.default","Array.skins[query.variant]"]}},"uv_anim":{"title":"Uv Anim","description":"The UV animation to apply to the render texture.","additionalProperties":false,"type":"object","required":["offset","scale"],"properties":{"offset":{"title":"Offset","description":"The offset to apply the UV, this will cause the texture on the object to shift by said amount, can be molang. The value for how much to offset is usually specified between 0 and 1","type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"The offset to apply on the texture, can be molang.","title":"Offset"}},"scale":{"type":"array","description":"The scale to apply to the texture, this will cause texture to seem to grow and shrink if done per frame.","title":"Scale","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"The scale to apply on the texture, can be molang.","title":"Scale"}}}}}}}}} \ No newline at end of file