Skip to content

Class

TerrainServiceContract

Generated GDScript class reference for GridPlacement.TerrainServiceContract.

Status
Current
Version
v6.3.0
Source updated
2026-10-29
Generated on
2026-10-29

6.3. These pages document the 6.3 release, where placeable is now entry (what changed) and PlacementOwner is deprecated (migration). Still on 6.2? Your version's guides ship inside the plugin itself, under addons/grid_placement/guides/; the 6.2 URLs on this site now redirect to this series.

Adapter/contract interface for the terrain placement service (6.0.0-S). 6.0.0-211: object-capability contract that the host queries instead of checking is TerrainPlacementService2D or is TerrainPlacementService3D. The hosted implementation injects the concrete service (2D or 3D) via [PlacementServiceGroup.register_terrain]; the rest of the host and the service group only ever hold the contract type. Capabilities express which dimensions the implementation supports; the factory consults them so a 3D group never silently gets attached to a 2D-only brush flow.

Source: addons/grid_placement/services/contracts/terrain_service_contract.gd

Syntax

class TerrainServiceContract extends RefCounted

Members

NameKindSummary
supported_dimensionsMethod
configureMethod
set_statesMethod
set_targeting_stateMethod
set_catalogMethod
disposeMethod
max_brush_cellsPropertyPer-action cell cap for terrain shapes. The host syncs it from settings; services clamp generation to it. Declared here (not per implementation) so the host can sync dimension-dispatched services through this type.
start_terrain_drag_3dMethod
begin_terrain_paint_segment_3dMethod
is_terrain_dragging_3dMethod
cancel_terrain_drag_3dMethod
preview_terrain_drag_3dMethod
take_terrain_drag_cells_3dMethod
complete_terrain_drag_3dMethod