# hbm:pick_one

Selects one matching marker for `result` and replaces the others from `fallback`.

> **since NTM 1.0.3**
>
> ## Selection across chunks
>
> Candidate selection covers the whole template piece, including when it crosses chunk boundaries. Every chunk uses the same selected marker.

## Fields

| Field | Meaning and default |
| - | - |
| `processor_type` | Selects this processor. |
| `marker` | Block state marking candidate positions. |
| `marker.Name` | Registered block ID. |
| `marker.Properties` (Optional) | Block-state property names and string values. |
| `result` | Block state placed at one selected marker. |
| `result.Name` | Registered block ID. |
| `result.Properties` (Optional) | Block-state property names and string values. |
| `fallback` | Block-state choices for the remaining markers; an empty list leaves them in place. |
| `fallback.Name` | Registered block ID. |
| `fallback.Properties` (Optional) | Block-state property names and string values. |

## Example

> **until NTM 1.0.4**
>
> Source path: `data/hbm/worldgen/processor_list/jungle/arrow_crate.json`
>
> ```json
> {
>   "fallback": [
>     {
>       "Name": "minecraft:air"
>     }
>   ],
>   "marker": {
>     "Name": "minecraft:barrier",
>     "Properties": {
>       "waterlogged": "false"
>     }
>   },
>   "processor_type": "hbm:pick_one",
>   "result": {
>     "Name": "hbm:crate_jungle"
>   }
> }
> ```

> **since NTM 1.0.4**
>
> Custom processor list: `data/example/worldgen/processor_list/single_crate.json`.
>
> ```json
> {"processors":[{"processor_type":"hbm:pick_one","marker":{"Name":"minecraft:barrier"},"result":{"Name":"hbm:crate_jungle"},"fallback":[{"Name":"minecraft:air"}]}]}
> ```
