Add fog json validation
This commit is contained in:
161
resource/fog/1.16.100/fog.json
Normal file
161
resource/fog/1.16.100/fog.json
Normal file
@@ -0,0 +1,161 @@
|
|||||||
|
{
|
||||||
|
"$schema": "http://json-schema.org/draft-07/schema",
|
||||||
|
"$id": "blockception.minecraft.resource.1.16.100.resource",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"title": "Fog specification",
|
||||||
|
"description": "TODO",
|
||||||
|
"definitions": {
|
||||||
|
"colorHexOrArray": {
|
||||||
|
"oneOf": [
|
||||||
|
{
|
||||||
|
"type": "array",
|
||||||
|
"items": [
|
||||||
|
{ "type": "number", "minimum": 0, "maximum": 1, "title": "Red" },
|
||||||
|
{ "type": "number", "minimum": 0, "maximum": 1, "title": "Green" },
|
||||||
|
{ "type": "number", "minimum": 0, "maximum": 1, "title": "Blue" }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "string",
|
||||||
|
"format": "color-hex",
|
||||||
|
"pattern": "^\\#[0-9a-fA-F]{6}$"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"properties": {
|
||||||
|
"format_version": {
|
||||||
|
"title": "Format version",
|
||||||
|
"description": "TODO: format_version",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"minecraft:fog_settings": {
|
||||||
|
"title": "Fog settings",
|
||||||
|
"description": "TODO",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"description": {
|
||||||
|
"title": "Description",
|
||||||
|
"description": "The identifying description of this fog settings",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"identifier": {
|
||||||
|
"type": "string",
|
||||||
|
"title": "Identifier",
|
||||||
|
"$ref": "../../../general/fog/identifier.json"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"distance": {
|
||||||
|
"title": "Distance",
|
||||||
|
"description": "The fog that is generated by the distance of the players view",
|
||||||
|
"type": "object",
|
||||||
|
"propertyNames": {
|
||||||
|
"enum": ["water", "air", "weather", "lava", "lava_resistance"]
|
||||||
|
},
|
||||||
|
"additionalProperties": {
|
||||||
|
"title": "Fog specification",
|
||||||
|
"description": "TODO",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"fog_start": {
|
||||||
|
"title": "Fog start",
|
||||||
|
"description": "The distance where the fog will start",
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
"fog_end": {
|
||||||
|
"title": "Fog end",
|
||||||
|
"description": "The distance where the fog will be opague",
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
"fog_color": {
|
||||||
|
"title": "Fog color",
|
||||||
|
"description": "The color of the fog",
|
||||||
|
"type": "string",
|
||||||
|
"format": "color-hex"
|
||||||
|
},
|
||||||
|
"render_distance_type": {
|
||||||
|
"title": "Render distance type",
|
||||||
|
"description": "Wheter the fog should be calculated from the render distance or a fixed depth",
|
||||||
|
"type": "string",
|
||||||
|
"enum": ["fixed", "render"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"volumetric": {
|
||||||
|
"title": "Volumetric",
|
||||||
|
"description": "Settings for light passing through blocks and the resulting fog",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"density": {
|
||||||
|
"title": "Density",
|
||||||
|
"description": "TODO",
|
||||||
|
"propertyNames": {
|
||||||
|
"enum": ["water", "air", "weather", "lava", "lava_resistance"]
|
||||||
|
},
|
||||||
|
"additionalProperties": {
|
||||||
|
"description": "TODO",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"max_density": {
|
||||||
|
"title": "Max density",
|
||||||
|
"description": "How much the fog disrupts the light",
|
||||||
|
"type": "number",
|
||||||
|
"minimum": 0,
|
||||||
|
"maximum": 1
|
||||||
|
},
|
||||||
|
"uniform": {
|
||||||
|
"title": "Uniform",
|
||||||
|
"description": "If the fog should be evenly spread",
|
||||||
|
"type": "boolean"
|
||||||
|
},
|
||||||
|
"zero_density_height": {
|
||||||
|
"title": "Zero density height",
|
||||||
|
"description": "NOTE: only works if uniform is false, The amount of blocks this fog will appear above blocks",
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
"max_density_height": {
|
||||||
|
"title": "Max density height",
|
||||||
|
"description": "NOTE: only works if uniform is false, The amount of blocks that the fog will become its maximum",
|
||||||
|
"type": "number"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"media_coefficients": {
|
||||||
|
"title": "Density",
|
||||||
|
"description": "Describes what happens to the light when it passes through a medium",
|
||||||
|
"propertyNames": {
|
||||||
|
"enum": ["water", "air", "cloud"]
|
||||||
|
},
|
||||||
|
"additionalProperties": {
|
||||||
|
"description": "TODO",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"absorption": {
|
||||||
|
"title": "Absorption",
|
||||||
|
"description": "How much of the light will be absorbed accross the RGB range",
|
||||||
|
"$ref": "#/definitions/colorHexOrArray"
|
||||||
|
},
|
||||||
|
"scattering": {
|
||||||
|
"title": "Scattering",
|
||||||
|
"description": "How much of the light will be spread accross the RGB range",
|
||||||
|
"$ref": "#/definitions/colorHexOrArray"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
11
resource/fog/fog.json
Normal file
11
resource/fog/fog.json
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
"$schema": "http://json-schema.org/draft-07/schema",
|
||||||
|
"$id": "blockception.minecraft.resource.fog",
|
||||||
|
"examples": [],
|
||||||
|
"allOf": [
|
||||||
|
{
|
||||||
|
"if": { "properties": { "format_version": { "type": "string", "const": "1.16.100" } } },
|
||||||
|
"then": { "$ref": "./1.16.100/fog.json" }
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user