Added client biome schema (#319)

This commit is contained in:
QuazChick
2024-10-12 15:47:16 +01:00
committed by GitHub
parent 8c8da48e9e
commit bad3e5d6d5
8 changed files with 132 additions and 0 deletions

View File

@@ -29,6 +29,7 @@
{ "Source": "./resource/animation_controllers/animation_controller.json", "Destination": "../resource/animation_controllers/animation_controller.json" },
{ "Source": "./resource/animations/actor_animation.json", "Destination": "../resource/animations/actor_animation.json" },
{ "Source": "./resource/attachables/attachables.json", "Destination": "../resource/attachables/attachables.json" },
{ "Source": "./resource/biomes/biomes.json", "Destination": "../resource/biomes/biomes.json" },
{ "Source": "./resource/biomes_client.json", "Destination": "../resource/biomes_client.json" },
{ "Source": "./resource/blocks.json", "Destination": "../resource/blocks.json" },
{ "Source": "./resource/entity/entity.json", "Destination": "../resource/entity/entity.json" },

View File

@@ -0,0 +1,26 @@
{
"$id": "blockception.minecraft.resource.biomes",
"title": "Client Biome",
"description": "Minecraft client_biome files define client-side settings for biomes in resource packs. This is the new preferred location for per-biome settings that used to be in biomes_client.json.",
"type": "object",
"required": ["format_version", "minecraft:client_biome"],
"additionalProperties": false,
"properties": {
"format_version": { "$ref": "../../general/format_version.json" },
"minecraft:client_biome": { "$ref": "./format/minecraft.client_biome.json" }
},
"defaultSnippets": [
{
"label": "New client biome",
"body": {
"format_version": "${1:1.21.40}",
"minecraft:client_biome": {
"description": {
"identifier": "${3:${TM_FILENAME/[\\.].*//}}"
},
"components": "^{$4}"
}
}
}
]
}

View File

@@ -0,0 +1,15 @@
{
"$id": "blockception.minecraft.resource.biomes.minecraft.fog_appearance",
"title": "Fog Appearance",
"description": "Set the fog settings used during rendering. Biomes without this component will have default fog settings.",
"type": "object",
"required": ["fog_identifier"],
"additionalProperties": false,
"properties": {
"fog_identifier": {
"title": "Fog Identifier",
"description": "Identifier of fog definition to use.",
"type": "string"
}
}
}

View File

@@ -0,0 +1,17 @@
{
"$id": "blockception.minecraft.resource.biomes.minecraft.sky_color",
"title": "Sky Color",
"description": "Set the sky color used during rendering. Biomes without this component will have default sky color behavior.",
"type": "object",
"required": ["sky_color"],
"additionalProperties": false,
"properties": {
"sky_color": {
"title": "Sky Color",
"description": "RGB color of the sky.",
"type": "string",
"format": "color-hex",
"examples": ["#FFFFFF"]
}
}
}

View File

@@ -0,0 +1,17 @@
{
"$id": "blockception.minecraft.resource.biomes.minecraft.water_appearance",
"title": "Water Appearance",
"description": "Set the water surface color used during rendering. Biomes without this component will have default water surface color behavior.",
"type": "object",
"required": ["surface_color"],
"additionalProperties": false,
"properties": {
"surface_color": {
"title": "Surface Color",
"description": "RGB color of the water surface.",
"type": "string",
"format": "color-hex",
"examples": ["#FFFFFF"]
}
}
}

View File

@@ -0,0 +1,39 @@
{
"$id": "blockception.minecraft.resource.biomes",
"title": "Client Biome Definitions",
"description": "A client biome definition.",
"type": "object",
"additionalProperties": false,
"required": ["description", "components"],
"definitions": {
"components_ref": {
"type": "object",
"title": "Components",
"description": "Any components that this Client Biome uses.",
"additionalProperties": false,
"properties": {
// Components
"minecraft:fog_appearance": { "$ref": "./components/fog_appearance.json" },
"minecraft:sky_color": { "$ref": "./components/sky_color.json" },
"minecraft:water_appearance": { "$ref": "./components/water_appearance.json" }
}
}
},
"properties": {
"description": {
"title": "Client Biome Description",
"description": "Contains non-component settings for a Client Biome.",
"type": "object",
"additionalProperties": false,
"required": ["identifier"],
"properties": {
"identifier": {
"title": "Identifier",
"description": "The name of the Client Biome, used by other features like the '/locate biome' command. Must match the name of a Biome defined by the game or a behavior pack.",
"type": "string"
}
}
},
"components": { "$ref": "#/definitions/components_ref" }
}
}