Adding the start of features

This commit is contained in:
DaanV2
2021-06-03 20:40:45 +02:00
parent 2012f4cde0
commit 87f2b9c9c2
5 changed files with 103 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
{
"$id": "blockception.minecraft.behavior.features.1.13.0",
"type": "object",
"title": "Spawn Rules 1.13.0",
"description": "Features are decorations scattered throughout the world. Things such as trees, plants, flowers, springs, ore, and coral are all features. Basically, if it isn't the terrain or a mob, it's probably a feature!",
"additionalProperties": false,
"required": ["format_version"],
"minProperties": 2,
"maxProperties": 2,
"properties": {
"format_version": {
"const": "1.13.0",
"description": "Specifies the version of the game this entity was made in. Minimum supported version is 1.13.0. Current supported version is 1.13.0.",
"title": "Format Version"
},
"minecraft:aggregate_feature": { "$ref": "./features/minecraft.aggregate_feature.json" },
"minecraft:beards_and_shavers": { "$ref": "./minecraft:beards_and_shaversfeatures/minecraft.beards_and_shavers.json" },
"minecraft:cave_carver_feature": { "$ref": "./minecraft:cave_carver_featurefeatures/minecraft.cave_carver_feature.json" },
"minecraft:conditional_list": { "$ref": "./minecraft:conditional_listfeatures/minecraft.conditional_list.json" },
"minecraft:geode_feature": { "$ref": "./minecraft:geode_featurefeatures/minecraft.geode_feature.json" },
"minecraft:growing_plant_feature": { "$ref": "./minecraft:growing_plant_featurefeatures/minecraft.growing_plant_feature.json" },
"minecraft:hell_cave_carver_feature": { "$ref": "./minecraft:hell_cave_carver_featurefeatures/minecraft.hell_cave_carver_feature.json" },
"minecraft:multiface_feature": { "$ref": "./minecraft:multiface_featurefeatures/minecraft.multiface_feature.json" },
"minecraft:ore_feature": { "$ref": "./minecraft:ore_featurefeatures/minecraft.ore_feature.json" },
"minecraft:rect_layout": { "$ref": "./minecraft:rect_layoutfeatures/minecraft.rect_layout.json" },
"minecraft:scan_surface": { "$ref": "./minecraft:scan_surfacefeatures/minecraft.scan_surface.json" },
"minecraft:scatter_feature": { "$ref": "./minecraft:scatter_featurefeatures/minecraft.scatter_feature.json" },
"minecraft:search_feature": { "$ref": "./minecraft:search_featurefeatures/minecraft.search_feature.json" },
"minecraft:sequence_feature": { "$ref": "./minecraft:sequence_featurefeatures/minecraft.sequence_feature.json" },
"minecraft:single_block_feature": { "$ref": "./minecraft:single_block_featurefeatures/minecraft.single_block_feature.json" },
"minecraft:snap_to_surface_feature": { "$ref": "./minecraft:snap_to_surface_featurefeatures/minecraft.snap_to_surface_feature.json" },
"minecraft:structure_template_feature": { "$ref": "./minecraft:structure_template_featurefeatures/minecraft.structure_template_feature.json" },
"minecraft:tree_feature": { "$ref": "./minecraft:tree_featurefeatures/minecraft.tree_feature.json" },
"minecraft:underwater_cave_carver_feature": {
"$ref": "./minecraft:underwater_cave_carver_featurefeatures/minecraft.underwater_cave_carver_feature.json"
},
"minecraft:vegetation_patch_feature": { "$ref": "./minecraft:vegetation_patch_featurefeatures/minecraft.vegetation_patch_feature.json" },
"minecraft:weighted_random_feature": { "$ref": "./minecraft:weighted_random_featurefeatures/minecraft.weighted_random_feature.json" }
}
}

View File

@@ -0,0 +1,38 @@
{
"title": "Aggregate Feature",
"description": "'minecraft:aggregate_feature' places a collection of features in an arbitary order. All features in the collection use the same input position. Features should not depend on each other, as there is no guarantee on the order the features will be placed. Succeeds if: At lease one feature is placed successfully. Fails if: All features fail to be placed.",
"type": "object",
"additionalProperties": false,
"properties": {
"description": {
"title": "Description",
"description": "",
"type": "object",
"properties": {
"identifier": {
"title": "Identifier",
"description": "The name of this feature in the form 'namespace_name:feature_name'. 'feature_name' must match the filename.",
"type": "string",
"$ref": "../../../../general/feature/identifier.json"
}
}
},
"features": {
"title": "Features",
"description": "Collection of features to be placed one by one. No guarantee of order. All features use the same input position.",
"type": "array",
"minItems": 1,
"items": {
"title": "Feature",
"description": "",
"type": "string"
}
},
"early_out": {
"type": "string",
"title": "Early Out",
"description": "LIKELY TO BE CHANGED: Do not continue placing features once either the first success or first failure has occurred.",
"enum": ["none", "first_failure", "first_success"]
}
}
}

View File

@@ -0,0 +1,16 @@
{
"$id": "blockception.minecraft.behavior.features",
"examples": [
{
"format_version": "1.17.0",
"minecraft:ore_feature": {
"description": { "identifier": "example:foo" },
"features": {}
}
}
],
"allOf": [
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.17.0" } } }, "then": { "$ref": "./1.17.0/features.json" } },
{ "properties": { "format_version": { "$ref": "../../general/format_version.json" } } }
]
}