Files
minecraft-bedrock-json-schemas/source/resource/particles/particles.json

164 lines
8.6 KiB
JSON
Raw Normal View History

2021-06-06 10:07:19 +00:00
{
"$id": "blockception.minecraft.resource.particle",
"examples": [
{
2021-11-16 13:40:11 +01:00
"format_version": "1.17.0",
2021-06-06 10:07:19 +00:00
"particle_effect": {
"description": {
2021-11-16 13:40:11 +01:00
"identifier": "example:particle",
2021-06-06 10:07:19 +00:00
"basic_render_parameters": { "material": "particles_alpha", "texture": "textures/particle/particle" }
},
"curves": {},
"components": {}
}
}
],
2021-11-16 13:40:11 +01:00
"type": "object",
"additionalProperties": false,
"description": "A particle definition file",
"title": "Particle",
"properties": {
"format_version": { "$ref": "../../general/format_version.json" },
"particle_effect": {
"type": "object",
"additionalProperties": false,
"description": "UNDOCUMENTED: particle effect",
"title": "Particle Effect",
"properties": {
"description": {
"additionalProperties": false,
"type": "object",
"required": ["identifier", "basic_render_parameters"],
"properties": {
"identifier": {
"type": "string",
"description": "UNDOCUMENTED: identifier",
"title": "Identifier",
2021-11-16 13:45:57 +01:00
"$ref": "../../general/particle/identifier.json"
2021-11-16 13:40:11 +01:00
},
"basic_render_parameters": {
"additionalProperties": false,
"type": "object",
2021-11-16 14:11:08 +01:00
"description": "UNDOCUMENTED: basic render parameters",
"title": "Basic Render Parameters",
2021-11-16 13:40:11 +01:00
"properties": {
"material": {
"type": "string",
"examples": ["particles_alpha", "particles_blend"],
"description": " Minecraft material to use for emitter",
"title": "Material"
},
"texture": { "type": "string", "pattern": "^.+$", "description": "Minecraft texture to use for emitter", "title": "Texture" }
2021-11-16 14:11:08 +01:00
}
2021-11-16 13:40:11 +01:00
}
},
"description": "UNDOCUMENTED: description",
"title": "Description"
},
"curves": {
"title": "Curves",
"description": "Curves are interpolation values, with inputs from 0 to 1, and outputs based on the curve. The result of the curve is a Molang variable of the same name that can be referenced in Molang in components. For each rendering frame for each particle, the curves are evaluated and the result is placed in a Molang variable of the name of the curve.",
"type": "object",
"propertyNames": { "pattern": "^(v|variable)\\.[a-zA-z0-9]+$" },
"additionalProperties": {
"type": "object",
"additionalProperties": false,
"title": "Curve",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"properties": {
"input": { "$ref": "../../../molang/number.json", "title": "Input", "description": "What is the input value to use" },
"nodes": {
"description": "Control nodes for curve. These are assumed to be equally, used Object for bezier_chain",
"title": "Nodes",
"oneOf": [
{ "minItems": 1, "type": "array", "items": { "$ref": "../../../molang/number.json" } },
{
"type": "object",
"propertyNames": { "pattern": "(^[\\-0-9]+$|^[\\-0-9]+\\.[\\-0-9]+$)" },
"additionalProperties": { "type": "object", "properties": {} }
}
]
},
"type": {
"type": "string",
"title": "Type",
"description": "The type of curve",
"enum": ["linear", "bezier", "bezier_chain", "catmull_rom"]
},
"horizontal_range": { "type": "string", "title": "Horizontal Range", "description": "What is the range the input is mapped onto" }
}
}
},
"components": {
"additionalProperties": false,
"type": "object",
"description": "The particle components.",
"title": "Components",
"properties": {
"minecraft:emitter_initialization": { "$ref": "./components/minecraft.emitter_initialization.json" },
"minecraft:emitter_lifetime_events": { "$ref": "./components/minecraft.emitter_lifetime_events.json" },
"minecraft:emitter_lifetime_expression": { "$ref": "./components/minecraft.emitter_lifetime_expression.json" },
"minecraft:emitter_lifetime_once": { "$ref": "./components/minecraft.emitter_lifetime_once.json" },
"minecraft:emitter_lifetime_looping": { "$ref": "./components/minecraft.emitter_lifetime_looping.json" },
"minecraft:emitter_local_space": { "$ref": "./components/minecraft.emitter_local_space.json" },
"minecraft:emitter_rate_instant": { "$ref": "./components/minecraft.emitter_rate_instant.json" },
"minecraft:emitter_rate_manual": { "$ref": "./components/minecraft.emitter_rate_manual.json" },
"minecraft:emitter_rate_steady": { "$ref": "./components/minecraft.emitter_rate_steady.json" },
"minecraft:emitter_shape_box": { "$ref": "./components/minecraft.emitter_shape_box.json" },
"minecraft:emitter_shape_custom": { "$ref": "./components/minecraft.emitter_shape_custom.json" },
"minecraft:emitter_shape_disc": { "$ref": "./components/minecraft.emitter_shape_disc.json" },
"minecraft:emitter_shape_entity_aabb": { "$ref": "./components/minecraft.emitter_shape_entity_aabb.json" },
"minecraft:emitter_shape_point": { "$ref": "./components/minecraft.emitter_shape_point.json" },
"minecraft:emitter_shape_sphere": { "$ref": "./components/minecraft.emitter_shape_sphere.json" },
"minecraft:particle_appearance_billboard": { "$ref": "./components/minecraft.particle_appearance_billboard.json" },
"minecraft:particle_appearance_tinting": { "$ref": "./components/minecraft.particle_appearance_tinting.json" },
"minecraft:particle_appearance_lighting": { "$ref": "./components/minecraft.particle_appearance_lighting.json" },
"minecraft:particle_expire_if_not_in_blocks": { "$ref": "./components/minecraft.particle_expire_if_not_in_blocks.json" },
"minecraft:particle_initialization": { "$ref": "./components/minecraft.particle_initialization.json" },
"minecraft:particle_initial_speed": { "$ref": "./components/minecraft.particle_initial_speed.json" },
"minecraft:particle_initial_spin": { "$ref": "./components/minecraft.particle_initial_spin.json" },
"minecraft:particle_lifetime_expression": { "$ref": "./components/minecraft.particle_lifetime_expression.json" },
"minecraft:particle_lifetime_events": { "$ref": "./components/minecraft.particle_lifetime_events.json" },
"minecraft:particle_kill_plane": { "$ref": "./components/minecraft.particle_kill_plane.json" },
"minecraft:particle_motion_collision": { "$ref": "./components/minecraft.particle_motion_collision.json" },
"minecraft:particle_motion_dynamic": { "$ref": "./components/minecraft.particle_motion_dynamic.json" },
"minecraft:particle_motion_parametric": { "$ref": "./components/minecraft.particle_motion_parametric.json" }
}
},
"events": {
"type": "object",
"description": "UNDOCUMENTED: events",
"title": "Events",
"additionalProperties": {
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"title": "Event",
"type": "object",
"additionalProperties": false,
"properties": {
"particle_effect": {
"title": "Particle Effect",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"properties": {
"effect": { "type": "string", "description": "UNDOCUMENTED: effect", "title": "Effect" },
"type": { "type": "string", "description": "UNDOCUMENTED: type", "title": "Type" }
}
},
"sound_effect": {
"title": "Sound Effect",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"properties": {
"event_name": { "type": "string", "description": "UNDOCUMENTED: effect", "title": "Event Name" }
}
}
}
}
}
}
}
}
2021-06-06 10:07:19 +00:00
}