# Radiation-resistant blocks

Block and state selectors for radiation pocket boundaries.

File: `data/<namespace>/hbm/rad_resistance/<path>.json`.

Rules add resistant states to the built-in radiation barriers. Matching states separate radiation pockets; the [diffusivity coefficient](https://movblock.mov/ntm-next/26.3/wiki/hazards-and-radiation/block-transport.md) controls transport through other states. Rules combine by union, including when their block or tag selectors overlap.

The registry loads when the world opens and syncs to clients. Reopen singleplayer or restart the server after changing a rule or its tags.

## Fields

| Field | Meaning and default |
| - | - |
| `targets` | Block ID, `#namespace:tag`, or block-ID list. |
| `state` (Optional) | Property predicate; omission selects every state of the target blocks. |
| `state.<property>` | Block-state property mapped to an exact string or a min/max string range. |
| `state.<property>.min` (Optional) | Inclusive lower property value. |
| `state.<property>.max` (Optional) | Inclusive upper property value. |

Block items display the radiation-shielding tooltip if at least one state is resistant. A state-specific barrier, such as a closed door, keeps that tooltip while its open state permits transport.

## Example:

File: `data/example/hbm/rad_resistance/closed_doors.json`.

```json
{
  "targets": "#minecraft:doors",
  "state": {
    "open": "false"
  }
}
```
