Refactor
This commit is contained in:
75
source/behavior/animations/1.10.0/animations.json
Normal file
75
source/behavior/animations/1.10.0/animations.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema",
|
||||
"$id": "blockception.minecraft.behavior.1.10.0.animations",
|
||||
"type": "object",
|
||||
"title": "Animation 1.10.0",
|
||||
"description": "TODO description",
|
||||
"required": ["format_version", "animations"],
|
||||
"definitions": {
|
||||
"animationspec": {
|
||||
"anyOf": [
|
||||
{ "title": "Animation Specification", "description": "A single string that specifies which animation there are", "type": "string" },
|
||||
{
|
||||
"type": "object",
|
||||
"title": "Animation Specification",
|
||||
"description": "A object specification on how to transition",
|
||||
"maxProperties": 1,
|
||||
"minProperties": 1,
|
||||
"additionalProperties": { "$ref": "../../../molang/1.8.0/string.json" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"particle_effect_spec": {
|
||||
"additionalProperties": false,
|
||||
"type": "object",
|
||||
"required": ["effect"],
|
||||
"properties": {
|
||||
"bind_to_actor": {
|
||||
"type": "boolean",
|
||||
"description": "Set to false to have the effect spawned in the world without being bound to an actor (by default an effect is bound to the actor)."
|
||||
},
|
||||
"effect": { "type": "string", "description": "The name of a particle effect that should be played" },
|
||||
"locator": { "type": "string", "description": "The name of a locator on the actor where the effect should be located" },
|
||||
"pre_effect_script": { "type": "string", "description": "A molang script that will be run when the particle emitter is initialized" }
|
||||
}
|
||||
},
|
||||
"commands": { "type": "string", "description": "The event or commands to execute" }
|
||||
},
|
||||
"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."
|
||||
},
|
||||
"animations": {
|
||||
"title": "Animations Schema",
|
||||
"description": "The animation 1.10.0 specification",
|
||||
"type": "object",
|
||||
"propertyNames": { "pattern": "^animation\\.[a-z\\.]+" },
|
||||
"additionalProperties": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"description": "TODO description: additionalItems",
|
||||
"title": "Animation ",
|
||||
"properties": {
|
||||
"animation_length": { "type": "number", "description": "TODO description: animation length", "title": "Animation Length" },
|
||||
"loop": { "type": "boolean", "description": "TODO description: loop", "title": "Loop" },
|
||||
"timeline": {
|
||||
"title": "Timeline",
|
||||
"description": "The time line",
|
||||
"type": "object",
|
||||
"propertyNames": { "pattern": "^(\\d+.\\d+|\\d+)$" },
|
||||
"additionalProperties": {
|
||||
"oneOf": [
|
||||
{ "type": "string", "$ref": "#/definitions/commands" },
|
||||
{ "type": "array", "title": "Collection Timelime Items", "items": { "$ref": "#/definitions/commands" } }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
}
|
||||
72
source/behavior/animations/1.8.0/animations.json
Normal file
72
source/behavior/animations/1.8.0/animations.json
Normal file
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema",
|
||||
"$id": "blockception.minecraft.behavior.1.8.0.animations",
|
||||
"definitions": {
|
||||
"animationspec": {
|
||||
"anyOf": [
|
||||
{ "title": "Animation Specification", "description": "A single string that specifies which animation there are", "type": "string" },
|
||||
{
|
||||
"type": "object",
|
||||
"title": "Animation Specification",
|
||||
"description": "A object specification on how to transition",
|
||||
"maxProperties": 1,
|
||||
"minProperties": 1,
|
||||
"additionalProperties": { "$ref": "../../../molang/1.8.0/string.json" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"particle_effect_spec": {
|
||||
"additionalProperties": false,
|
||||
"type": "object",
|
||||
"required": ["effect"],
|
||||
"properties": {
|
||||
"bind_to_actor": {
|
||||
"type": "boolean",
|
||||
"description": "Set to false to have the effect spawned in the world without being bound to an actor (by default an effect is bound to the actor)."
|
||||
},
|
||||
"effect": { "type": "string", "description": "The name of a particle effect that should be played" },
|
||||
"locator": { "type": "string", "description": "The name of a locator on the actor where the effect should be located" },
|
||||
"pre_effect_script": { "type": "string", "description": "A molang script that will be run when the particle emitter is initialized" }
|
||||
}
|
||||
},
|
||||
"commands": { "type": "string", "description": "The event or commands to execute" }
|
||||
},
|
||||
"type": "object",
|
||||
"title": "Animation 1.8.0",
|
||||
"description": "Animation for behaviors 1.8.0",
|
||||
"required": ["format_version", "animations"],
|
||||
"additionalProperties": false,
|
||||
"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."
|
||||
},
|
||||
"animations": {
|
||||
"title": "Animations Schema",
|
||||
"description": "The animation 1.8.0 specification",
|
||||
"type": "object",
|
||||
"propertyNames": { "pattern": "^animation\\.[a-z\\.]+" },
|
||||
"additionalProperties": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"description": "TODO description: additionalItems",
|
||||
"title": "Animation ",
|
||||
"properties": {
|
||||
"animation_length": { "type": "number", "description": "TODO description: animation length", "title": "Animation Length" },
|
||||
"loop": { "type": "boolean", "description": "TODO description: loop", "title": "Loop" },
|
||||
"timeline": {
|
||||
"title": "Timeline",
|
||||
"description": "The time line",
|
||||
"type": "object",
|
||||
"propertyNames": { "pattern": "^(\\d+.\\d+|\\d+)$" },
|
||||
"additionalProperties": {
|
||||
"oneOf": [{ "$ref": "#/definitions/commands" }, { "type": "array", "title": "Collection Timelime Items", "items": { "$ref": "#/definitions/commands" } }]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
9
source/behavior/animations/animations.json
Normal file
9
source/behavior/animations/animations.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema",
|
||||
"$id": "blockception.minecraft.behavior.animations",
|
||||
"examples": [{ "format_version": "1.10.0", "animations": { "animation.example": {} } }],
|
||||
"allOf": [
|
||||
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.8.0" } } }, "then": { "$ref": "./1.8.0/animations.json" } },
|
||||
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.10.0" } } }, "then": { "$ref": "./1.10.0/animations.json" } }
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user