Central, type-safe registry of declared ids (6.0.0). Replaces per-service allowlists ("lean whitelists") with a single static service that catches "wodo"-vs-"wood" typos at LOAD time rather than at the silent-miss point of use. Loaders (placement_catalog, terrain_palette, settings) call [method register] during their _init / load path; spend rules call [method assert_known] / [method is_known] before removing ids from a provider. Domain-namespace surface: every id is registered against a domain constant ([constant DOMAIN_RESOURCES], [constant DOMAIN_MATERIALS], etc.). This lets wodo collide against wood inside the same materials table while keeping terrain_dungeon clearly distinct from refund_kind_dungeon. Scene-free. RefCounted-extension is only nominal (GDScript requires it for [code]class_name[/code]) — usage is fully static. No teardown wiring needed; [method clear_all] is available for test cleanup.
Source: addons/grid_placement/services/id_registry.gd
Syntax
class IdRegistry extends RefCountedMembers
| Name | Kind | Summary |
|---|---|---|
DOMAIN_RESOURCES | Field | Object/scene/spend-rule id domain. |
DOMAIN_MATERIALS | Field | Material/id-keyed-inventory id domain (catches misnamed strings like "wodo" vs "wood" before they silently miss in the provider). |
DOMAIN_TERRAIN | Field | Terrain name domain (from TileSet / [TerrainPalette]). |
DOMAIN_REFUNDERS | Field | Refunder kind domain (5.1-D refund contract). |
DOMAIN_ACTIONS | Field | Action name domain ([PlacementActions]). |
register | Method | |
domain_dict | Property | |
was_new | Property | |
is_known | Method | |
assert_known | Method | |
get_data | Method | |
clear | Method | |
clear_all | Method | |
count | Method |
Source
addons/grid_placement/services/id_registry.gd
Plugin docs root:gdscript/plugins/grid_placement_dev/docs