Class PlacementInputHandler
- Namespace
- GridPlacement.GDScript
- Assembly
- MoonBark.GridPlacement.GDScript.dll
Scene-free intent mapper: converts raw InputEvents and placement state into discrete [InputIntent] values. PlacementSystem's _unhandled_input becomes a thin forwarder that matches on the returned intent.\n\nExtracted from PlacementSystem (Phase 2 refactor) to make the input-to-intent branching directly unit-testable without a scene runner.\n\nUsage: var handler := PlacementInputHandler.new() handler.configure(actions) var intent := handler.resolve(event, brush_state, has_placeable, has_terrain, is_in_mode)
class PlacementInputHandler extends RefCounted
PlacementInputHandler
Properties
is_in_mode
var is_in_mode = p_mode == PlacementEnums.Mode.PLACE or p_mode == PlacementEnums.Mode.BUILD
is_demolish
var is_demolish = p_mode == PlacementEnums.Mode.DEMOLISH
Methods
configure
func configure(p_build_mode: StringName, p_off_mode: StringName, p_confirm_build: StringName) -> void:
Parameters
p_build_modep_off_modep_confirm_build
Returns
resolve
func resolve( p_event: InputEvent,