Host orchestrator for the Grid Building plugin. One Node, one _unhandled_input, one [PlacementServiceGroup]. The host owns infrastructure (input handler, mode machine) and a settings-driven service group. The group holds only the domain services the game actually needs — a terrain-only game doesn't pay for [ManipulationService2D]. Architecture: - [b]Game-scoped[/b] settings ([GridPlacementSettings]) determine which domain services exist. - [b]Player-scoped[/b] state ([PlacementSession]) provides the states, logger, and contexts that services operate on.
- The host owns the single [code]_unhandled_input[/code], the session registry (split-screen), and the intent dispatch.
Source: addons/grid_placement/systems/host/grid_placement_host.gd
Syntax
class GridPlacementHost extends NodeMembers
| Name | Kind | Summary |
|---|---|---|
grid_placement_bundle | Property | Game scoped settings for Grid Placement |
get_lifecycle_bus | Method | |
register_session | Method | |
unregister_session | Method | |
get_session_for_controller | Method | |
get_active_sessions | Method | |
get_session_registry_count | Method | |
configure | Method | |
is_ready | Method | |
get_runtime_issues | Method | |
get_session | Method | |
get_settings | Method | |
get_actions | Method | |
get_templates | Method | |
get_runtime_checks | Method | |
get_input_handler | Method | |
get_last_dispatch_result | Method | |
dispatch_smooth_placement | Method | |
get_smooth_occupancy_registry_2d | Method | |
get_smooth_occupancy_registry_3d | Method | |
get_placement_world_registry_3d | Method | |
get_placement_world_registry | Method | |
set_object_placement_service_3d | Method | |
get_smooth_placement_service_3d | Method | |
get_smooth_placement_service_2d | Method | |
get_place_machine | Method | |
enter_terrain_mode | Method | |
targeting | Property | |
first_match | Property | |
map_name | Property | |
terrain_name | Property | |
owns_session | Method | |
select_placeable_for_session | Method | |
object_service | Property | |
select_terrain_for_session | Method | |
enter_place_router_for_session | Method | |
set_brush_shape_for_session | Method | |
get_brush_shape_for_session | Method | |
get_brush_state_for_session | Method | |
is_painting_terrain_for_session | Method | |
get_terrain_service_for_session | Method | |
get_terrain_preview_cells_for_session | Method | |
positioner | Property | |
state | Property | |
current_cell | Property | |
set_brush_shape | Method | |
get_terrain_service | Method | |
get_manipulation_service | Method | |
get_grid_targeting_service | Method | |
get_brush_coordinator | Method | |
get_refund_service | Method | |
get_drag_service | Method | |
get_object_placement_service | Method | |
issue | Property | |
get_positioner_cell | Method | |
get_positioner_cell_3d | Method | |
session | Property | |
building | Property | |
object_service | Property | |
rebuild_smooth_occupancy_from_scene | Method |