Pure data filter that reconciles a [PlacementCatalog] and [TerrainPalette] into a single view of "which terrains are actually available for this session". Extracted from [TerrainPaletteUI] so the catalog-first filtering contract is testable without UI scene-tree assumptions (no [Node] instantiation, no [code]_ready[/code]/[code]_validate[/code] asserts, no parent/child wiring). Catalog-first means: if the session's catalog has [code]tile_entries[/code], those are the canonical entries and the palette is treated as a display theme (icons + colors) rather than the source of truth. The palette's own entries are still available for visual continuity, but the catalog owns what the user can actually select. When no catalog is provided, falls back to the legacy palette-only resolution so scenes that pre-date the catalog contract keep working.
Source: addons/grid_placement/placement/terrain/terrain_catalog_filter.gd
Syntax
class TerrainCatalogFilter extends RefCountedMembers
| Name | Kind | Summary |
|---|---|---|
catalog_from_session | Method | |
catalog_v | Property | |
get_available_terrain_names | Method | |
names | Property | |
resolve_entry_for_terrain | Method |