Files
minecraft-bedrock-json-schemas/source/behavior/features/features/minecraft.search_feature.json
Xterionix e65c85ddfa Update features (#235)
* - Update features

* - Fix
2024-03-21 11:01:23 +01:00

60 lines
2.9 KiB
JSON

{
"type": "object",
"title": "Search Feature",
"description": "`minecraft:search_feature` sweeps a volume searching for a valid placement location for its referenced feature. The `search_volume` field specifies the axis-aligned bounding box that defines the boundaries of the search. The search sweeps along the axis defined by the `search_axis` field, layer by layer. For example, if `search_axis` = '-x', blocks with greater x values will be checked before blocks with lower x values. Each layer is searched from the bottom-left to the top-right before moving to the next layer along the axis. By default, only one valid position must be found, but this can be altered by specifying the `required_successes` field. If fewer than the required successes are found, no placement will occur.\nSucceeds if: The number of valid positions is equal to the value specified by `required_successes`.\nFails if: The number of valid positions is less than the value specified by `required_successes`.",
"additionalProperties": false,
"required": ["description", "search_axis"],
"properties": {
"description": {
"$ref": "../types/description.json"
},
"places_feature": {
"title": "Places Feature",
"description": "Named reference of feature to be placed.",
"type": "string",
"$ref": "../../../general/feature/identifier.json"
},
"search_volume": {
"title": "Places Feature",
"description": "Axis-aligned bounding box that will be searched for valid placement positions. Expressed as offsets from the input position.",
"type": "object",
"additionalProperties": false,
"required": ["min", "max"],
"properties": {
"max": {
"title": "Max",
"description": "Maximum extent of the bounding volume expressed as [ x, y, z ].",
"type": "array",
"items": [
{ "title": "Maximum X", "type": "integer" },
{ "title": "Maximum Y", "type": "integer" },
{ "title": "Maximum Z", "type": "integer" }
]
},
"min": {
"title": "Min",
"description": "Maxium extent of the bounding volume expressed as [ x, y, z ].",
"type": "array",
"items": [
{ "title": "Minimum X", "type": "integer" },
{ "title": "Minimum Y", "type": "integer" },
{ "title": "Minimum Z", "type": "integer" }
]
}
}
},
"search_axis": {
"title": "Search Axis",
"description": "Axis that the search will sweep along through the `search_volume`.",
"type": "string",
"enum": ["-x", "+x", "-y", "+y", "-z", "+z"]
},
"required_successes": {
"title": "Required Successes",
"description": "Number of valid positions the search must find in order to place the referenced feature.",
"type": "integer",
"minimum": 1
}
}
}