diff --git a/resource/entity/entity.json b/resource/entity/entity.json index 62ac90cf..119d98d6 100644 --- a/resource/entity/entity.json +++ b/resource/entity/entity.json @@ -1 +1 @@ -{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.resource.entity","examples":[{"format_version":"1.10.0","minecraft:client_entity":{"description":{"identifier":"minecraft:entity","materials":{"default":"entity_custom"},"textures":{"default":"textures/entity/custom/entity"},"geometry":{"default":"geometry.entity"},"animations":{},"particle_effects":{},"scripts":{},"render_controllers":["controller.render.entity"],"spawn_egg":{"base_color":"#288483","overlay_color":"#2B7135"}}}}],"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/D"}},{"properties":{"format_version":{"$ref":"#/definitions/G"}}}],"definitions":{"B":{"type":"string","title":"Entity Identifier 1.8.0","description":"The minecraft entity identifier","examples":["namespace:entity_name"],"pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"C":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"A":{"type":"object","title":"Resourcepack Actor Animation 1.8.0","description":"TODO description","additionalProperties":false,"required":["format_version","minecraft:client_entity"],"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."},"minecraft:client_entity":{"type":"object","additionalProperties":false,"title":"Client Entity","description":"The definition of an entity's models, materials, textures, and animations","properties":{"description":{"additionalProperties":false,"title":"Description","description":"TODO description: description","type":"object","required":["identifier"],"properties":{"animations":{"description":"The connecting of animations in animations controllers with the actuall animations, names should corosponds","title":"Animations Schema","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"}},"animation_controllers":{"type":"array","minItems":1,"description":"TODO description: animation controllers","title":"Animation Controllers","items":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: animation controllers","title":"Animation Controllers"}},"enable_attachables":{"type":"boolean","description":"TODO description: enable attachables","title":"Enable Attachables"},"geometry":{"title":"Geometry","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: geometry"},"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"},"materials":{"type":"object","description":"TODO description: materials","title":"Materials","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"}},"min_engine_version":{"type":"string","pattern":"[0-9]+\\.[0-9]+\\.[0-9]+","description":"TODO description: min engine version","title":"Min Engine Version"},"particle_effects":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle effects","title":"Particle Effects"},"particle_emitters":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle emitters","title":"Particle Emitters"},"render_controllers":{"type":"array","description":"TODO description: render controllers","title":"Render Controllers","minItems":1,"items":{"type":"string","description":"TODO description: render controllers","title":"Render Controllers"}},"sound_effects":{"title":"Sound Effects","description":"TODO description: sound effects","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"}},"spawn_egg":{"additionalProperties":false,"type":"object","description":"TODO description: spawn egg","title":"Spawn Egg","dependencies":{"texture_index":["texture"],"base_colour":["overlay_color"],"overlay_color":["base_color"]},"properties":{"base_color":{"type":"string","description":"TODO description: base color","title":"Base Color","format":"color-hex"},"overlay_color":{"type":"string","description":"TODO description: overlay color","title":"Overlay Color","format":"color-hex"},"texture":{"type":"string","description":"TODO description: texture","title":"Texture"},"texture_index":{"type":"integer","description":"TODO description: texture index","title":"Texture Index"}}},"scripts":{"additionalProperties":false,"type":"object","description":"TODO description: scripts","title":"Scripts","properties":{"pre_animation":{"type":"array","description":"TODO description: pre aninamtion","title":"Pre Animation","items":{"pattern":";$","$ref":"#/definitions/C","description":"TODO description: pre aninamtion","title":"Pre Animation"}},"parent_setup":{"$ref":"#/definitions/C"},"scale":{"type":"string","description":"TODO description: scale","title":"Scale"},"scalex":{"$ref":"#/definitions/C","title":"Scale X"},"scaley":{"$ref":"#/definitions/C","title":"Scale Y"},"scalez":{"$ref":"#/definitions/C","title":"Scale Z"}}},"textures":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: textures","title":"Textures"}}}}}}},"E":{"type":"string","title":"Item Identifier 1.8.0","description":"The minecraft item identifier","pattern":"^[0-9a-zA-Z:_\\-\\.]+$"},"F":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"D":{"type":"object","title":"Resourcepack Actor Animation 1.10.0","description":"TODO description","required":["format_version","minecraft:client_entity"],"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."},"minecraft:client_entity":{"type":"object","title":"Client Entity","description":"The client entity definition","required":["description"],"properties":{"description":{"title":"Description","type":"object","required":["identifier"],"additionalProperties":false,"properties":{"animations":{"title":"Animations","description":"The collection of animations and animations controllers","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"A reference to an animation or animation controller","title":"Animation Reference","examples":[{"basic":"controller.generic.basic"}]}},"enable_attachables":{"type":"boolean","description":"TODO description: enable attachables","title":"Enable Attachables"},"geometry":{"title":"Geometry","description":"The reference to defined geometries in '/models/'","type":"object","propertyNames":{"pattern":"[a-zA-Z0-9_\\.\\-]+"},"minProperties":1,"additionalProperties":{"type":"string","description":"The reference to the geometry","title":"Geometry Reference"}},"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/E"},"materials":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: materials","title":"Materials"},"min_engine_version":{"type":"string","pattern":"[0-9]+\\.[0-9]+\\.[0-9]+","description":"TODO description: min engine version","title":"Min Engine Version"},"particle_effects":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle effects","title":"Particle Effects"},"particle_emitters":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle emitters","title":"Particle Emitters"},"render_controllers":{"type":"array","description":"TODO description: render controllers","title":"Render Controllers","minItems":1,"items":{"oneOf":[{"type":"string"},{"type":"object","additionalProperties":{"type":"string","description":"A render controller","title":"Render Controller"}}]}},"scripts":{"additionalProperties":false,"type":"object","title":"Scripts","description":"TODO","properties":{"animate":{"type":"array","title":"Animate","description":"The array of items to animate","minItems":1,"items":{"oneOf":[{"type":"string","description":"A single animation or animation controller to run","title":"Animation (Controller)"},{"type":"object","minProperties":1,"maxProperties":1,"title":"Animation (Controller) Condition","description":"A single animation or animation controller to run on condition","additionalProperties":{"type":"string","description":"A molang condition","title":"Molang"}}]}},"initialize":{"type":"array","description":"TODO description: initialize","title":"Initialize","items":{"pattern":";$","$ref":"#/definitions/F","description":"TODO description: initialize","title":"Initialize"}},"pre_animation":{"type":"array","description":"TODO description: pre aninamtion","title":"Pre Animation","items":{"pattern":";$","$ref":"#/definitions/F","description":"TODO description: pre aninamtion","title":"Pre Animation"}},"parent_setup":{"type":"string","description":"TODO description: parent setup","title":"Parent Setup","$ref":"#/definitions/C"},"scale":{"type":"string","description":"TODO description: scale","title":"Scale","$ref":"#/definitions/C"},"scalex":{"$ref":"#/definitions/C","title":"Scale X"},"scaley":{"$ref":"#/definitions/C","title":"Scale Y"},"scalez":{"$ref":"#/definitions/C","title":"Scale Z"},"should_update_bones_and_effects_offscreen":{"title":"Should Update Bones And Effects Offscreen","description":"Bones and effects will still be updated if the entity is off screen if this expression returns anything other than 0.0.","$ref":"#/definitions/F"},"should_update_effects_offscreen":{"title":"Should Update Effects Offscreen","description":"Effects will still be updated if the entity is off screen if this expression or `should_update_bones_and_effects_offscreen` returns anything other than 0.0.","$ref":"#/definitions/F"},"variables":{"title":"Variables","description":" A list of variables that need certain settings applied to them. Currently, for the client, only \"public\" is supported.","type":"object","minProperties":1,"propertyNames":{"pattern":"variable.[a-zA-Z_][a-zA-Z0-9_]*"},"additionalProperties":{"title":"Variable","description":" If a variable is public, it can be read by other mobs. See the molang `->` operator for details.","type":"string","enum":["public"]}}}},"sound_effects":{"title":"Sound Effects","description":"TODO description: sound effects","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"Sound Effect"}},"spawn_egg":{"additionalProperties":false,"type":"object","description":"TODO description: spawn egg","title":"Spawn Egg","dependencies":{"texture_index":["texture"],"base_colour":["overlay_color"],"overlay_color":["base_color"]},"properties":{"base_color":{"type":"string","description":"TODO description: base color","title":"Base Color","format":"color-hex"},"overlay_color":{"type":"string","description":"TODO description: overlay color","title":"Overlay Color","format":"color-hex"},"texture":{"type":"string","description":"TODO description: texture","title":"Texture"},"texture_index":{"type":"integer","description":"TODO description: texture index","title":"Texture Index"}}},"textures":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: textures","title":"Textures"}},"description":"TODO description: description"}},"additionalProperties":false}},"additionalProperties":false},"G":{"title":"Format version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^[0-9,.]+?$","type":"string"}}} \ No newline at end of file +{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.resource.entity","examples":[{"format_version":"1.10.0","minecraft:client_entity":{"description":{"identifier":"minecraft:entity","materials":{"default":"entity_custom"},"textures":{"default":"textures/entity/custom/entity"},"geometry":{"default":"geometry.entity"},"animations":{},"particle_effects":{},"scripts":{},"render_controllers":["controller.render.entity"],"spawn_egg":{"base_color":"#288483","overlay_color":"#2B7135"}}}}],"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/E"}},{"properties":{"format_version":{"$ref":"#/definitions/G"}}}],"definitions":{"B":{"type":"string","title":"Entity Identifier 1.8.0","description":"The minecraft entity identifier","examples":["namespace:entity_name"],"pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"C":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"D":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"A":{"type":"object","title":"Resourcepack Actor Animation 1.8.0","description":"TODO description","additionalProperties":false,"required":["format_version","minecraft:client_entity"],"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."},"minecraft:client_entity":{"type":"object","additionalProperties":false,"title":"Client Entity","description":"The entity description for clientside rendering, animations and models","properties":{"description":{"additionalProperties":false,"title":"Description","description":"TODO description: description","type":"object","required":["identifier"],"properties":{"animations":{"description":"The connecting of animations in animations controllers with the actuall animations, names should corosponds","title":"Animations Schema","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"}},"animation_controllers":{"type":"array","minItems":1,"description":"TODO description: animation controllers","title":"Animation Controllers","items":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: animation controllers","title":"Animation Controllers"}},"enable_attachables":{"type":"boolean","description":"TODO description: enable attachables","title":"Enable Attachables"},"geometry":{"title":"Geometry","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: geometry"},"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"},"materials":{"type":"object","description":"TODO description: materials","title":"Materials","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"}},"min_engine_version":{"type":"string","pattern":"[0-9]+\\.[0-9]+\\.[0-9]+","description":"TODO description: min engine version","title":"Min Engine Version"},"particle_effects":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle effects","title":"Particle Effects"},"particle_emitters":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle emitters","title":"Particle Emitters"},"render_controllers":{"type":"array","description":"TODO description: render controllers","title":"Render Controllers","minItems":1,"items":{"type":"string","description":"TODO description: render controllers","title":"Render Controllers"}},"sound_effects":{"title":"Sound Effects","description":"TODO description: sound effects","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"}},"spawn_egg":{"additionalProperties":false,"type":"object","description":"The definition of how the spawn_egg icon looks like","title":"Spawn Egg","dependencies":{"texture_index":["texture"],"base_colour":["overlay_color"],"overlay_color":["base_color"]},"properties":{"base_color":{"type":"string","description":"The basic color of the egg","title":"Base Color","format":"color-hex"},"overlay_color":{"type":"string","description":"The colors of the dots on the egg","title":"Overlay Color","format":"color-hex"},"texture":{"type":"string","description":"The texture reference in item_texture.json","title":"Texture"},"texture_index":{"type":"integer","description":"The index of the texture","title":"Texture Index","default":0}}},"scripts":{"additionalProperties":false,"type":"object","description":"TODO description: scripts","title":"Scripts","properties":{"pre_animation":{"type":"array","description":"Clientside molang variables that are to be evualated during the animation","title":"Pre Animation","items":{"pattern":";$","$ref":"#/definitions/C","description":"Clientside molang variables that are to be evualated during the animation","title":"Pre Animation"}},"parent_setup":{"$ref":"#/definitions/D"},"scale":{"type":"string","description":"TODO description: scale","title":"Scale"},"scalex":{"$ref":"#/definitions/D","title":"Scale X"},"scaley":{"$ref":"#/definitions/D","title":"Scale Y"},"scalez":{"$ref":"#/definitions/D","title":"Scale Z"}}},"textures":{"type":"object","additionalProperties":{"type":"string","description":"A reference to a texture in the resourcepack","title":"Texture"},"description":"A collection of references to textures in the resourcepack","title":"Textures"}}}}}}},"F":{"type":"string","title":"Item Identifier 1.8.0","description":"The minecraft item identifier","pattern":"^[0-9a-zA-Z:_\\-\\.]+$"},"E":{"type":"object","title":"Resourcepack Actor Animation 1.10.0","description":"TODO description","required":["format_version","minecraft:client_entity"],"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."},"minecraft:client_entity":{"type":"object","title":"Client Entity","description":"The client entity definition","required":["description"],"properties":{"description":{"title":"Description","type":"object","required":["identifier"],"description":"The entity description for clientside rendering, animations and models","additionalProperties":false,"properties":{"animations":{"title":"Animations","description":"The collection of animations and animations controllers","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"A reference to an animation or animation controller","title":"Animation Reference","examples":[{"basic":"controller.generic.basic"}]}},"enable_attachables":{"type":"boolean","description":"TODO description: enable attachables","title":"Enable Attachables"},"geometry":{"title":"Geometry","description":"The reference to defined geometries in '/models/'","type":"object","propertyNames":{"pattern":"[a-zA-Z0-9_\\.\\-]+"},"minProperties":1,"additionalProperties":{"type":"string","description":"The reference to the geometry","title":"Geometry Reference"}},"identifier":{"type":"string","description":"The entity indentifier","title":"Identifier","$ref":"#/definitions/F"},"materials":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: materials","title":"Materials"},"min_engine_version":{"type":"string","pattern":"[0-9]+\\.[0-9]+\\.[0-9]+","description":"TODO description: min engine version","title":"Min Engine Version"},"particle_effects":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle effects","title":"Particle Effects"},"particle_emitters":{"type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: particle emitters","title":"Particle Emitters"},"render_controllers":{"type":"array","description":"TODO description: render controllers","title":"Render Controllers","minItems":1,"items":{"oneOf":[{"type":"string"},{"type":"object","additionalProperties":{"type":"string","description":"A render controller","title":"Render Controller"}}]}},"scripts":{"additionalProperties":false,"type":"object","title":"Scripts","description":"TODO","properties":{"animate":{"type":"array","title":"Animate","description":"The array of items to animate","minItems":1,"items":{"oneOf":[{"type":"string","description":"A single animation or animation controller to run","title":"Animation (Controller)"},{"type":"object","minProperties":1,"maxProperties":1,"title":"Animation (Controller) Condition","description":"A single animation or animation controller to run on condition","additionalProperties":{"type":"string","description":"A molang condition","title":"Molang"}}]}},"initialize":{"type":"array","description":"Clientside molang variables that are to be evualated during the creation of the entity","title":"Initialize","items":{"pattern":";$","$ref":"#/definitions/C","description":"Clientside molang variables that are to be evualated during the creation of the entity","title":"Initialize"}},"pre_animation":{"type":"array","description":"Clientside molang variables that are to be evualated during the animation","title":"Pre Animation","items":{"pattern":";$","$ref":"#/definitions/C","description":"Clientside molang variables that are to be evualated during the animation","title":"Pre Animation"}},"parent_setup":{"type":"string","description":"TODO description: parent setup","title":"Parent Setup","$ref":"#/definitions/D"},"scale":{"type":"string","description":"TODO description: scale","title":"Scale","$ref":"#/definitions/D"},"scalex":{"$ref":"#/definitions/D","title":"Scale X"},"scaley":{"$ref":"#/definitions/D","title":"Scale Y"},"scalez":{"$ref":"#/definitions/D","title":"Scale Z"},"should_update_bones_and_effects_offscreen":{"title":"Should Update Bones And Effects Offscreen","description":"Bones and effects will still be updated if the entity is off screen if this expression returns anything other than 0.0.","$ref":"#/definitions/C"},"should_update_effects_offscreen":{"title":"Should Update Effects Offscreen","description":"Effects will still be updated if the entity is off screen if this expression or `should_update_bones_and_effects_offscreen` returns anything other than 0.0.","$ref":"#/definitions/C"},"variables":{"title":"Variables","description":" A list of variables that need certain settings applied to them. Currently, for the client, only \"public\" is supported.","type":"object","minProperties":1,"propertyNames":{"pattern":"variable.[a-zA-Z_][a-zA-Z0-9_]*"},"additionalProperties":{"title":"Variable","description":" If a variable is public, it can be read by other mobs. See the molang `->` operator for details.","type":"string","enum":["public"]}}}},"sound_effects":{"title":"Sound Effects","description":"TODO description: sound effects","type":"object","minProperties":1,"additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"Sound Effect"}},"spawn_egg":{"additionalProperties":false,"type":"object","description":"The definition of how the spawn_egg icon looks like","title":"Spawn Egg","dependencies":{"texture_index":["texture"],"base_colour":["overlay_color"],"overlay_color":["base_color"]},"properties":{"base_color":{"type":"string","description":"The basic color of the egg","title":"Base Color","format":"color-hex"},"overlay_color":{"type":"string","description":"The colors of the dots on the egg","title":"Overlay Color","format":"color-hex"},"texture":{"type":"string","description":"The texture reference in item_texture.json","title":"Texture"},"texture_index":{"type":"integer","description":"The index of the texture","title":"Texture Index","default":0}}},"textures":{"type":"object","additionalProperties":{"type":"string","description":"A reference to a texture in the resourcepack","title":"Texture"},"description":"A collection of references to textures in the resourcepack","title":"Textures"}}}},"additionalProperties":false}},"additionalProperties":false},"G":{"title":"Format version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^[0-9,.]+?$","type":"string"}}} \ No newline at end of file diff --git a/resource/render_controllers/render_controllers.json b/resource/render_controllers/render_controllers.json index 431a9817..3227a230 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.json","examples":[{"format_version":"1.8.0","render_controllers":{"controller.render.example":{"geometry":"Geometry.default","materials":[{"*":"Material.default"}],"textures":["Texture.default"]}}}],"type":"object","title":"Render Controllers","description":"TODO description","allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.8.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10"}}},"then":{"$ref":"#/definitions/C"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/C"}},{"properties":{"format_version":{"$ref":"#/definitions/D"}}}],"definitions":{"A_color":{"anyOf":[{"type":"number","description":"A color definition as number, between 0 and 1","title":"Color Number","minimum":0,"maximum":1},{"type":"string","description":"A color definition in molang, must result in a float between 0 and 1","title":"Molang Color"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"A":{"additionalProperties":false,"type":"object","title":"Render Controllers 1.8.0","description":"Render_Controllers 1.8.0","required":["render_controllers","format_version"],"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."},"render_controllers":{"type":"object","propertyNames":{"pattern":"^controller\\.render\\.[a-z\\.]+","examples":["controller.render.example"]},"additionalProperties":{"additionalProperties":false,"type":"object","title":"Render Controller","description":"A single render_controller definition","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":"Geometry array"}},"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 reference"},"description":"A material array definition","title":"Material array"}},"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":{"description":"TODO description: color","title":"Color","additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}}},"filter_lighting":{"type":"boolean","description":"TODO description: filter lighting","title":"Filter Lighting"},"geometry":{"type":"string","description":"TODO description: geometry","title":"Geometry"},"ignore_lighting":{"type":"boolean","description":"TODO description: ignore lighting","title":"Ignore Lighting"},"is_hurt_color":{"type":"object","title":"Is hurt color","additionalProperties":false,"description":"The color that is overlay when hurt","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}}},"light_color_multiplier":{"$ref":"#/definitions/B","description":"TODO description: light color multiplier","title":"Light Color Multiplier"},"materials":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: materials","title":"Materials"},"description":"TODO description: materials","title":"Materials"},"on_fire_color":{"additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}},"description":"TODO description: on fire color","title":"On Fire Color"},"overlay_color":{"additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}},"description":"Overlays this color ontop of any rendering parts","title":"Overlay Color"},"part_visibility":{"type":"array","minItems":1,"items":{"description":"A collection of object that describe which bones are hidden or not","title":"Part Visibilty","type":"object","minProperties":1,"additionalProperties":{"oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}],"description":"Describes which bones are visible or not, can be a string, boolean or number","title":"Part Visibilty"}},"description":"TODO description: part visibility","title":"Part Visibility"},"rebuild_animation_matrices":{"type":"boolean","description":"TODO description: rebuild animation matrices","title":"Rebuild Animation Matrices"},"textures":{"type":"array","minItems":1,"items":{"type":"string","description":"TODO description: textures","title":"Textures"},"description":"TODO description: textures","title":"Textures"},"uv_anim":{"additionalProperties":false,"type":"object","required":["offset","scale"],"properties":{"offset":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"},"scale":{"type":"array","description":"TODO description: scale","title":"Scale","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: scale","title":"Scale"}}},"description":"TODO description: uv anim","title":"Uv Anim"}}},"description":"TODO description: render controllers","title":"Render Controllers"}}},"C_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"}]},"C":{"additionalProperties":false,"type":"object","title":"Render Controllers 1.10.0","description":"Render_controllers 1.10.0","properties":{"format_version":{"title":"1.10.0 Format Version","type":"string","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"render_controllers":{"type":"object","propertyNames":{"pattern":"^controller\\.render\\.[a-z\\.]+","examples":["controller.render.example"]},"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":"Geometry array"}},"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 reference"},"description":"A material array definition","title":"Material array"}},"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/C_color","description":"The value of red, between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/C_color","description":"The value of green, between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/C_color","description":"The value of blue, between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/C_color","description":"The value of alpha, between 0 and 1","title":"A"}},"description":"TODO description: color","title":"Color"},"filter_lighting":{"type":"boolean","description":"TODO description: filter lighting","title":"Filter Lighting"},"geometry":{"type":"string","description":"TODO description: geometry","title":"Geometry"},"ignore_lighting":{"type":"boolean","description":"TODO description: ignore lighting","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/C_color","description":"The value of red, between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/C_color","description":"The value of green, between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/C_color","description":"The value of blue, between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/C_color","description":"The value of alpha, between 0 and 1","title":"A"}}},"materials":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: materials","title":"Materials"},"description":"TODO description: materials","title":"Materials"},"overlay_color":{"additionalProperties":false,"type":"object","description":"TODO description: overlay color","title":"Overlay Color","properties":{"r":{"$ref":"#/definitions/C_color","description":"The value of red, between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/C_color","description":"The value of green, between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/C_color","description":"The value of blue, between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/C_color","description":"The value of alpha, between 0 and 1","title":"A"}}},"textures":{"type":"array","minItems":1,"items":{"type":"string","description":"TODO description: textures","title":"Textures"},"description":"TODO description: textures","title":"Textures"},"uv_anim":{"additionalProperties":false,"type":"object","required":["offset","scale"],"properties":{"offset":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"},"scale":{"type":"array","description":"TODO description: scale","title":"Scale","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: scale","title":"Scale"}}},"description":"TODO description: uv anim","title":"Uv Anim"},"part_visibility":{"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"}]}},"description":"TODO description: part visibility","title":"Part Visibility"},"rebuild_animation_matrices":{"type":"boolean","description":"TODO description: rebuild animation matrices","title":"Rebuild Animation Matrices"}}},"description":"TODO description: render controllers","title":"Render Controllers"}}},"D":{"title":"Format version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^[0-9,.]+?$","type":"string"}}} \ No newline at end of file +{"$schema":"http://json-schema.org/draft-07/schema","$id":"blockception.minecraft.render_controllers.json","examples":[{"format_version":"1.8.0","render_controllers":{"controller.render.example":{"geometry":"Geometry.default","materials":[{"*":"Material.default"}],"textures":["Texture.default"]}}}],"type":"object","title":"Render Controllers","description":"TODO description","allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.8.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10"}}},"then":{"$ref":"#/definitions/C"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/C"}},{"properties":{"format_version":{"$ref":"#/definitions/D"}}}],"definitions":{"A_color":{"anyOf":[{"type":"number","description":"A color definition as number, between 0 and 1","title":"Color Number","minimum":0,"maximum":1},{"type":"string","description":"A color definition in molang, must result in a float between 0 and 1","title":"Molang Color"}]},"B":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"A":{"additionalProperties":false,"type":"object","title":"Render Controllers 1.8.0","description":"Render_Controllers 1.8.0","required":["render_controllers","format_version"],"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."},"render_controllers":{"type":"object","propertyNames":{"pattern":"^controller\\.render\\.[a-z\\.]+","examples":["controller.render.example"]},"additionalProperties":{"additionalProperties":false,"type":"object","title":"Render Controller","description":"A single render_controller definition","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":"Geometry array"}},"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 reference"},"description":"A material array definition","title":"Material array"}},"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":{"description":"TODO description: color","title":"Color","additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}}},"filter_lighting":{"type":"boolean","description":"TODO description: filter lighting","title":"Filter Lighting"},"geometry":{"type":"string","description":"TODO description: geometry","title":"Geometry"},"ignore_lighting":{"type":"boolean","description":"TODO description: ignore lighting","title":"Ignore Lighting"},"is_hurt_color":{"type":"object","title":"Is hurt color","additionalProperties":false,"description":"The color that is overlay when hurt","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float 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":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: materials","title":"Materials"},"description":"TODO description: materials","title":"Materials"},"on_fire_color":{"additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}},"description":"TODO description: on fire color","title":"On Fire Color"},"overlay_color":{"additionalProperties":false,"type":"object","properties":{"r":{"$ref":"#/definitions/A_color","description":"The value of red, must result in a float between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/A_color","description":"The value of green, must result in a float between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/A_color","description":"The value of blue, must result in a float between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/A_color","description":"The value of alpha, must result in a float between 0 and 1","title":"A"}},"description":"Overlays this color ontop of any rendering parts","title":"Overlay Color"},"part_visibility":{"type":"array","minItems":1,"items":{"description":"A collection of object that describe which bones are hidden or not","title":"Part Visibilty","type":"object","minProperties":1,"additionalProperties":{"oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}],"description":"Describes which bones are visible or not, can be a string, boolean or number","title":"Part Visibilty"}},"description":"TODO description: part visibility","title":"Part Visibility"},"rebuild_animation_matrices":{"type":"boolean","description":"TODO description: rebuild animation matrices","title":"Rebuild Animation Matrices"},"textures":{"type":"array","minItems":1,"items":{"type":"string","description":"TODO description: textures","title":"Textures"},"description":"TODO description: textures","title":"Textures"},"uv_anim":{"additionalProperties":false,"type":"object","required":["offset","scale"],"properties":{"offset":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"},"scale":{"type":"array","description":"TODO description: scale","title":"Scale","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: scale","title":"Scale"}}},"description":"TODO description: uv anim","title":"Uv Anim"}}},"description":"TODO description: render controllers","title":"Render Controllers"}}},"C_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"}]},"C":{"additionalProperties":false,"type":"object","title":"Render Controllers 1.10.0","description":"Render_controllers 1.10.0","properties":{"format_version":{"title":"1.10.0 Format Version","type":"string","description":"A version that tells minecraft what type of data format can be expected when reading this file."},"render_controllers":{"type":"object","propertyNames":{"pattern":"^controller\\.render\\.[a-z\\.]+","examples":["controller.render.example"]},"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":"Geometry array"}},"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 reference"},"description":"A material array definition","title":"Material array"}},"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/C_color","description":"The value of red, between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/C_color","description":"The value of green, between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/C_color","description":"The value of blue, between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/C_color","description":"The value of alpha, between 0 and 1","title":"A"}},"description":"TODO description: color","title":"Color"},"filter_lighting":{"type":"boolean","description":"TODO description: filter lighting","title":"Filter Lighting"},"geometry":{"type":"string","description":"TODO description: geometry","title":"Geometry"},"ignore_lighting":{"type":"boolean","description":"TODO description: ignore lighting","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/C_color","description":"The value of red, between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/C_color","description":"The value of green, between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/C_color","description":"The value of blue, between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/C_color","description":"The value of alpha, between 0 and 1","title":"A"}}},"materials":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":{"type":"string","description":"TODO description: additionalProperties","title":"TODO"},"description":"TODO description: materials","title":"Materials"},"description":"TODO description: materials","title":"Materials"},"overlay_color":{"additionalProperties":false,"type":"object","description":"TODO description: overlay color","title":"Overlay Color","properties":{"r":{"$ref":"#/definitions/C_color","description":"The value of red, between 0 and 1","title":"R"},"g":{"$ref":"#/definitions/C_color","description":"The value of green, between 0 and 1","title":"G"},"b":{"$ref":"#/definitions/C_color","description":"The value of blue, between 0 and 1","title":"B"},"a":{"$ref":"#/definitions/C_color","description":"The value of alpha, between 0 and 1","title":"A"}}},"textures":{"type":"array","minItems":1,"items":{"type":"string","description":"TODO description: textures","title":"Textures"},"description":"TODO description: textures","title":"Textures"},"uv_anim":{"additionalProperties":false,"type":"object","required":["offset","scale"],"properties":{"offset":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"},"scale":{"type":"array","description":"TODO description: scale","title":"Scale","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/B","description":"TODO description: scale","title":"Scale"}}},"description":"TODO description: uv anim","title":"Uv Anim"},"part_visibility":{"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"}]}},"description":"TODO description: part visibility","title":"Part Visibility"},"rebuild_animation_matrices":{"type":"boolean","description":"TODO description: rebuild animation matrices","title":"Rebuild Animation Matrices"}}},"description":"TODO description: render controllers","title":"Render Controllers"}}},"D":{"title":"Format version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^[0-9,.]+?$","type":"string"}}} \ No newline at end of file