forked from Blockception/Minecraft-bedrock-json-schemas
-
Notifications
You must be signed in to change notification settings - Fork 0
/
particles.json
1 lines (1 loc) · 26.4 KB
/
particles.json
1
{"$schema":"http:https://json-schema.org/draft-07/schema","$id":"blockception.minecraft.resource.particle","examples":[{"format_version":"1.10.0","particle_effect":{"description":{"identifier":"blockception:particle","basic_render_parameters":{"material":"particles_alpha","texture":"textures/particle/particle"}},"curves":{},"components":{}}}],"allOf":[{"if":{"properties":{"format_version":{"type":"string","const":"1.8.0"}}},"then":{"$ref":"#/definitions/A"}},{"if":{"properties":{"format_version":{"type":"string","const":"1.10.0"}}},"then":{"$ref":"#/definitions/C"}}],"definitions":{"B":{"type":"string","title":"Particle Identifier 1.8.0","description":"The minecraft particle identifier","pattern":"^[0-9a-zA-Z:_\\.\\-]+$"},"A":{"type":"object","additionalProperties":false,"properties":{"format_version":{"type":"string","const":"1.8.0","description":"A version that tells minecraft what type of data format can be expected when reading this file.","title":"Format Version"},"particle_effect":{"type":"object","additionalProperties":false,"properties":{"description":{"additionalProperties":false,"type":"object","properties":{"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"}},"description":"TODO description: description","title":"Description"},"components":{"additionalProperties":false,"type":"object","description":"TODO description: components","title":"Components"}},"description":"TODO description: particle effect","title":"Particle Effect"}},"description":"TODO description:","title":"TODO Title"},"D":{"title":"Molang Number","description":"The minecraft molang definition that results in a float","anyOf":[{"type":"string","minLength":0,"format":"molang"},{"type":"number"}]},"F":{"type":"string","title":"Molang / String","description":"Molang definition","format":"molang"},"E":{"description":"This component allows the emitter to run some Molang at creation, primarily to populate any MoLang variables that get used later.","type":"object","title":"Emitter Initialization Component For 1.10.0","additionalProperties":false,"properties":{"creation_expression":{"$ref":"#/definitions/F","description":"This is run once at emitter startup.","title":"Creation Expression"},"per_update_expression":{"$ref":"#/definitions/F","description":"This is run once per emitter update.","title":"Per Update Expression"}}},"G":{"type":"object","title":"Emitter Lifetime Events Component For 1.10.0","description":"TODO","additionalProperties":false,"properties":{"creation_event":{"title":"Creation Event","description":"Fires when the emitter is created","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"expiration_event":{"title":"Expiration Event","description":"Fires when the emitter expires (does not wait for particles to expire too)","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"timeline":{"type":"object","description":"A series of times, e.g. 0.0 or 1.0, that trigger the event, these get fired on every loop the emitter goes through, \"time\" is the time, e.g. one line might be: \"0.4\": \"event\"","propertyNames":{"pattern":"^[\\d\\.]+$"},"additionalProperties":{"title":"Timeline Object","description":"A single point in time that executes commands/molang/events","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"title":"TODO Title"},"travel_distance_events":{"title":"Travel Distance Events","description":"A series of distances, e.g. 0.0 or 1.0, that trigger the event these get fired when the emitter has moved by the specified input distance, e.g. one line might be: \"0.4\": \"event\"","propertyNames":{"pattern":"^[\\d\\.]+$"}},"looping_travel_distance_events":{"title":"Looping Travel Distance Events","description":"A series of events that occur at set intervals these get fired every time the emitter has moved the specified input distance from the last time it was fired.","type":"array","items":{"type":"object","title":"Distance Event","additionalProperties":false,"properties":{"distance":{"title":"Distance","description":"TODO","type":"number"},"effects":{"title":"Effects","description":"TODO","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]}}}}}},"H":{"type":"object","title":"Emitter Rate Manual Component For 1.10.0","additionalProperties":false,"properties":{"activation_expression":{"$ref":"#/definitions/D","description":"When the expression is non-zero, the emitter will emit particles. Evaluated every frame","title":"Activation Expression"},"expiration_expression":{"$ref":"#/definitions/D","description":"Emitter will expire if the expression is non-zero. Evaluated every frame","title":"Expiration Expression"}},"description":"TODO description: "},"I":{"type":"object","title":"Emitter Lifetime Once Component For 1.10.0","additionalProperties":false,"properties":{"active_time":{"$ref":"#/definitions/D","description":"How long the particles emit for evaluated once","title":"Active Time"}},"description":"TODO description: "},"J":{"type":"object","title":"Emitter Lifetime Looping Component For 1.10.0","additionalProperties":false,"properties":{"active_time":{"$ref":"#/definitions/D","description":"Emitter will emit particles for this time per loop evaluated once per particle emitter loop","title":"Active Time"},"sleep_time":{"$ref":"#/definitions/D","description":"Emitter will pause emitting particles for this time per loop evaluated once per particle emitter loop","title":"Sleep Time"}},"description":"TODO description: "},"BA":{"type":"object","title":"Emitter Local Space Component For 1.10.0","description":"TODO description:","additionalProperties":false,"properties":{"position":{"type":"boolean","description":"TODO description: position","title":"Position"},"rotation":{"type":"boolean","description":"TODO description: rotation","title":"Rotation"},"velocity":{"type":"boolean","description":"TODO description: rotation","title":"Rotation"}}},"BB":{"type":"object","title":"Emitter Rate Instant Component For 1.10.0","additionalProperties":false,"properties":{"num_particles":{"$ref":"#/definitions/D","description":"This many particles are emitted at once evaluated once per particle emitter loop.","title":"Num Particles","default":10}},"description":"TODO description: "},"BC":{"type":"object","title":"Emitter Rate Manual Component For 1.10.0","additionalProperties":false,"properties":{"max_particles":{"$ref":"#/definitions/D","description":"Evaluated once per particle emitted","title":"Max Particles"}},"description":"TODO description: "},"BD":{"type":"object","title":"Emitter Rate Steady Component For 1.10.0","additionalProperties":false,"properties":{"max_particles":{"$ref":"#/definitions/D","description":"Maximum number of particles that can be active at once for this emitter, evaluated once per particle emitter loop","title":"Max Particles"},"spawn_rate":{"$ref":"#/definitions/D","description":"How often a particle is emitted, in particles/sec evaluated once per particle emitted","title":"Spawn Rate"}},"description":"TODO description: "},"BE":{"type":"object","title":"Emitter Shape Box Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"description":"TODO description: direction","title":"Direction","default":"outwards","anyOf":[{"type":"string","enum":["inwards","outwards"]},{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"}}]},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"half_dimensions":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: half dimensions","title":"Half Dimensions"},"description":"TODO description: half dimensions","title":"Half Dimensions"},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"BF":{"type":"object","title":"Emitter Shape Custom Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: direction","title":"Direction"},"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description: offset","title":"Offset"}},"description":"TODO description: "},"BG":{"type":"object","title":"Emitter Shape Disc Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"]},{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"}}],"description":"TODO description: direction","title":"Direction"},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"plane_normal":{"title":"Plane Normal","description":"Specifies the normal of the disc plane, the disc will be perpendicular to this direction","default":[0,1,0],"oneOf":[{"type":"string","enum":["x","y","z"]},{"type":"array","items":[{"$ref":"#/definitions/D"},{"$ref":"#/definitions/D"},{"$ref":"#/definitions/D"}]}]},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"BH":{"type":"object","title":"Emitter Shape Entity Aabb Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"],"description":"TODO description: Todo","title":"Todo"},{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: Todo","title":"Todo"},"description":"TODO description: Todo","title":"Todo"}],"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"}},"description":"TODO description: "},"BI":{"type":"object","title":"Emitter Shape Point Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: direction","title":"Direction"},"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"}},"description":"TODO description: "},"BJ":{"type":"object","title":"Emitter Shape Sphere Component For 1.10.0","additionalProperties":false,"properties":{"direction":{"anyOf":[{"type":"string","enum":["inwards","outwards"],"description":"TODO description: Todo","title":"Todo"},{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: Todo","title":"Todo"},"description":"TODO description: Todo","title":"Todo"}],"description":"TODO description: direction","title":"Direction"},"offset":{"type":"array","items":{"minItems":3,"maxItems":3,"$ref":"#/definitions/D","description":"TODO description: offset","title":"Offset"},"description":"TODO description","title":"TODO Title"},"radius":{"$ref":"#/definitions/D","description":"TODO description: radius","title":"Radius"},"surface_only":{"type":"boolean","description":"TODO description: surface only","title":"Surface Only"}},"description":"TODO description: "},"CA":{"type":"object","title":"Particle Appearance Billboard Component For 1.10.0","additionalProperties":false,"properties":{"size":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: size","title":"Size"},"description":"TODO description: size","title":"Size"},"facing_camera_mode":{"description":"Used to orient the billboard.","type":"string","enum":["lookat_xyz","lookat_y","rotate_xyz","rotate_y","direction_x","direction_y","direction_z"],"title":"Facing Camera Mode"},"uv":{"additionalProperties":false,"type":"object","properties":{"texture_width":{"type":"integer","description":"TODO description: texture width","title":"Texture Width"},"texture_height":{"type":"integer","description":"TODO description: texture height","title":"Texture Height"},"flipbook":{"additionalProperties":false,"type":"object","required":["max_frame"],"properties":{"base_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: base UV","title":"Base U V"},"description":"TODO description: base UV","title":"Base U V"},"size_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: size UV","title":"Size U V"},"description":"TODO description: size UV","title":"Size U V"},"step_UV":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: step UV","title":"Step U V"},"description":"TODO description: step UV","title":"Step U V"},"frames_per_second":{"$ref":"#/definitions/D","description":"TODO description: frames per second","title":"Frames Per Second"},"max_frame":{"$ref":"#/definitions/D","description":"TODO description: max frame","title":"Max Frame"},"stretch_to_lifetime":{"type":"boolean","description":"TODO description: stretch to lifetime","title":"Stretch To Lifetime"},"loop":{"type":"boolean","description":"TODO description: loop","title":"Loop"}},"description":"TODO description: flipbook","title":"Flipbook"},"uv":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: uv","title":"Uv"},"description":"TODO description: uv","title":"Uv"},"uv_size":{"type":"array","minItems":2,"maxItems":2,"items":{"$ref":"#/definitions/D","description":"TODO description: uv size","title":"Uv Size"},"description":"TODO description: uv size","title":"Uv Size"}},"description":"TODO description: uv","title":"Uv"}},"description":"TODO description: "},"CB":{"description":"Color fields are special, they can be either an RGB, or a \"#RRGGBB\" field (or RGBA or \"AARRGGBB\"). If RGB(A), the channels are from 0 to 1. If the string \"#AARRGGBB\", then the values are hex from 00 to ff.","type":"object","title":"Particle Appearance Tinting Component For 1.10.0","additionalProperties":false,"properties":{"color":{"title":"Color","anyOf":[{"type":"array","description":"Direct color field","items":{"$ref":"#/definitions/D"}},{"type":"string","format":"color-hex","description":"Direct color field"},{"description":"Interpolation based color","type":"object","additionalProperties":false,"properties":{"gradient":{"title":"Gradient","oneOf":[{"description":"An array of colors","type":"array","items":{"type":"string","description":"Color","title":"Color","format":"color-hex"}},{"description":"An object of colors","type":"object","propertyNames":{"pattern":"(^[\\-0-9]+$|^[\\-0-9]+\\.[\\-0-9]+$)"},"additionalProperties":{"type":"string","description":"Color","format":"color-hex"}},{"description":"An array of colors","type":"array","items":{"type":"array","minItems":3,"items":{"oneOf":[{"type":"number","description":"Color","title":"Color","minimum":0,"maximum":1},{"type":"string","title":"Molang"}]}}}]},"interpolant":{"$ref":"#/definitions/D","description":"TODO description: interpolant","title":"Interpolant"}}}],"description":"TODO description"}}},"CC":{"type":"object","title":"Particle Appearance Lighting Component For 1.10.0","additionalProperties":false,"description":"TODO description"},"CE":{"type":"string","title":"Block Name","description":"TODO description"},"CD":{"type":"array","title":"Particle Expire If Not In Blocks Component For 1.10.0","additionalProperties":false,"items":{"$ref":"#/definitions/CE","description":"TODO description","title":"TODO Title"},"description":"TODO description"},"CF":{"type":"object","title":"Particle Initialization Component For 1.10.0","additionalProperties":false,"properties":{"per_update_expression":{"$ref":"#/definitions/D","description":"TODO description: per update expression","title":"Per Update Expression"},"per_render_expression":{"$ref":"#/definitions/D","description":"TODO description: per render expression","title":"Per Render Expression"}},"description":"TODO description: "},"CG":{"title":"Particle Initial Speed Component For 1.10.0","additionalProperties":false,"anyOf":[{"$ref":"#/definitions/D"},{"type":"array","items":{"$ref":"#/definitions/D","description":"TODO description","title":"TODO Title"},"minItems":3,"maxItems":3,"description":"TODO description","title":"TODO Title"}]},"CH":{"title":"Particle Initial Spin Component For 1.10.0","description":"Starts the particle with a specified orientation and rotation rate.","additionalProperties":false,"type":"object","properties":{"rotation":{"$ref":"#/definitions/D","description":"Specifies the initial rotation in degrees","title":"Rotation"},"rotation_rate":{"$ref":"#/definitions/D","description":"Specifies the spin rate in degrees/second","title":"Rotation Rate"}}},"CI":{"type":"object","description":"TODO description:","title":"Particle Lifetime Expression Component For 1.10.0","additionalProperties":false,"properties":{"expiration_expression":{"title":"Expiration Expression","description":"This expression makes the particle expire when true (non-zero), The float/expr is evaluated once per particle, evaluated every frame","$ref":"#/definitions/D"},"max_lifetime":{"$ref":"#/definitions/D","description":"Alternate way to express lifetime, particle will expire after this much time, evaluated once","title":"Max Lifetime"}}},"CJ":{"type":"object","title":"Particle Lifetime Events Component For 1.10.0","additionalProperties":false,"properties":{"creation_event":{"title":"Creation Event","description":"Fires when the particle is created","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"custom_events":{"title":"Custom Events","description":"TODO, unclear structure :("},"expiration_event":{"title":"Expiration Event","description":"Fires when the particle expires (does not wait for particles to expire too)","oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"timeline":{"propertyNames":{"pattern":"[0-9]*.[0-9]*"},"description":"TODO description: timeline","title":"Timeline"}},"description":"TODO description: "},"DA":{"type":"array","title":"Particle Kill Plane Component For 1.10.0","items":{"minItems":4,"maxItems":4,"$ref":"#/definitions/D","description":"TODO description","title":"TODO Title"},"description":"TODO description"},"DB":{"type":"object","title":"Particle Motion Collision Component For 1.10.0","additionalProperties":false,"properties":{"collision_drag":{"type":"number","description":"TODO description: collision drag","title":"Collision Drag"},"coefficient_of_restitution":{"type":"number","description":"TODO description: coefficient of restitution","title":"Coefficient Of Restitution"},"collision_radius":{"type":"number","description":"TODO description: collision radius","title":"Collision Radius"},"enabled":{"$ref":"#/definitions/D","description":"TODO description: enabled","title":"Enabled"},"expire_on_contact":{"type":"boolean","description":"TODO description: expire on contact","title":"Expire On Contact"},"events":{"type":"array","items":{"properties":{"additionalProperties":false,"event":{"type":"string","description":"TODO description: event","title":"Event"},"min_speed":{"type":"number","description":"TODO description: min speed","title":"Min Speed"}},"description":"TODO description: events","title":"Events"},"description":"TODO description: events","title":"Events"}},"description":"TODO description: "},"DC":{"description":"This component specifies the dynamic properties of the particle, from a simulation standpoint what forces act upon the particle? These dynamics alter the velocity of the particle, which is a combination of the direction of the particle and the speed. Particle direction will always be in the direction of the velocity of the particle.","type":"object","title":"Particle Motion Dynamic Component For 1.10.0","additionalProperties":false,"properties":{"linear_acceleration":{"type":"array","default":[0,0,0],"minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D"},"description":"The linear acceleration applied to the particle. Units are blocks/sec/sec","title":"Linear Acceleration"},"linear_drag_coefficient":{"$ref":"#/definitions/D","description":"Using the equation: 'acceleration = -linear_drag_coefficient*velocity' where velocity is the current direction times speed. Think of this as air-drag. The higher the value, the more drag evaluated every frame","default":0,"title":"Linear Drag Coefficient"},"rotation_acceleration":{"$ref":"#/definitions/D","description":"Acceleration applies to the rotation speed of the particle","title":"Rotation Acceleration","default":0},"rotation_drag_coefficient":{"$ref":"#/definitions/D","description":"Drag applied to rotation","title":"Rotation Drag Coefficient","default":0}}},"DD":{"type":"object","title":"Particle Motion Parametric Component For 1.10.0","additionalProperties":false,"properties":{"relative_position":{"type":"array","minItems":3,"maxItems":3,"items":{"$ref":"#/definitions/D","description":"TODO description: relative position","title":"Relative Position"},"description":"TODO description: relative position","title":"Relative Position"},"rotation":{"$ref":"#/definitions/D","description":"TODO description: rotation","title":"Rotation"}},"description":"TODO description: "},"C":{"type":"object","additionalProperties":false,"properties":{"format_version":{"type":"string","const":"1.10.0","description":"A version that tells minecraft what type of data format can be expected when reading this file.","title":"Format Version"},"particle_effect":{"type":"object","additionalProperties":false,"properties":{"description":{"additionalProperties":false,"type":"object","required":["identifier","basic_render_parameters"],"properties":{"identifier":{"type":"string","description":"TODO description: identifier","title":"Identifier","$ref":"#/definitions/B"},"basic_render_parameters":{"additionalProperties":false,"type":"object","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"}},"description":"TODO description: basic render parameters","title":"Basic Render Parameters"}},"description":"TODO description: 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":"TODO","properties":{"input":{"$ref":"#/definitions/D","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":"#/definitions/D"}},{"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":"#/definitions/E"},"minecraft:emitter_lifetime_events":{"$ref":"#/definitions/G"},"minecraft:emitter_lifetime_expression":{"$ref":"#/definitions/H"},"minecraft:emitter_lifetime_once":{"$ref":"#/definitions/I"},"minecraft:emitter_lifetime_looping":{"$ref":"#/definitions/J"},"minecraft:emitter_local_space":{"$ref":"#/definitions/BA"},"minecraft:emitter_rate_instant":{"$ref":"#/definitions/BB"},"minecraft:emitter_rate_manual":{"$ref":"#/definitions/BC"},"minecraft:emitter_rate_steady":{"$ref":"#/definitions/BD"},"minecraft:emitter_shape_box":{"$ref":"#/definitions/BE"},"minecraft:emitter_shape_custom":{"$ref":"#/definitions/BF"},"minecraft:emitter_shape_disc":{"$ref":"#/definitions/BG"},"minecraft:emitter_shape_entity_aabb":{"$ref":"#/definitions/BH"},"minecraft:emitter_shape_point":{"$ref":"#/definitions/BI"},"minecraft:emitter_shape_sphere":{"$ref":"#/definitions/BJ"},"minecraft:particle_appearance_billboard":{"$ref":"#/definitions/CA"},"minecraft:particle_appearance_tinting":{"$ref":"#/definitions/CB"},"minecraft:particle_appearance_lighting":{"$ref":"#/definitions/CC"},"minecraft:particle_expire_if_not_in_blocks":{"$ref":"#/definitions/CD"},"minecraft:particle_initialization":{"$ref":"#/definitions/CF"},"minecraft:particle_initial_speed":{"$ref":"#/definitions/CG"},"minecraft:particle_initial_spin":{"$ref":"#/definitions/CH"},"minecraft:particle_lifetime_expression":{"$ref":"#/definitions/CI"},"minecraft:particle_lifetime_events":{"$ref":"#/definitions/CJ"},"minecraft:particle_kill_plane":{"$ref":"#/definitions/DA"},"minecraft:particle_motion_collision":{"$ref":"#/definitions/DB"},"minecraft:particle_motion_dynamic":{"$ref":"#/definitions/DC"},"minecraft:particle_motion_parametric":{"$ref":"#/definitions/DD"}}},"events":{"type":"object","additionalProperties":{"description":"Event","title":"TODO","type":"object","additionalProperties":false,"properties":{"particle_effect":{"title":"Particle Effect","description":"TODO","properties":{"effect":{"type":"string","description":"TODO description: effect","title":"Effect"},"type":{"type":"string","description":"TODO description: type","title":"Type"}}}}},"description":"TODO description: events","title":"Events"}},"description":"TODO description: particle effect","title":"Particle Effect"}},"description":"TODO description:","title":"TODO Title"}}}