Files
minecraft-bedrock-json-schemas/resource/animations/actor_animation.json
2021-11-17 11:38:32 +00:00

1 line
10 KiB
JSON
Generated

{"$id":"blockception.minecraft.resource.actor_animation","examples":[{"format_version":"1.17.0","animations":{"animation.annie.idle":{"loop":true,"animation_length":2.12,"bones":{}}}}],"additionalProperties":false,"type":"object","title":"Actor Animation","description":"UNDOCUMENTED","$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","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","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 position","type":"array","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"}]},"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"}]},"C":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^([1-9]+)\\.([0-9]+)\\.([0-9]+)$","type":"string","examples":["1.17.40","1.17.30","1.17.0","1.16.0","1.15.0","1.14.0","1.13.0","1.12.0","1.10.0","1.8.0"]}},"required":["format_version","animations"],"properties":{"format_version":{"$ref":"#/definitions/C"},"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":"Start Delay","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":"UNDOCUMENTED","$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","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","$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","additionalProperties":false,"examples":[{"0.0":{}}],"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"]},"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)\\..*=.*;$"}}]}}}}}}}