GridPositionerLogic
Keyboard helper: detect rotation input...
Keyboard helper: detect rotation input from a key event and actions [param event] The keyboard input event to check [param actions] GBActions containing rotation action mappings [return] Rotation direction: 1 for clockwise, -1 for counter-clockwise, 0 for no rotation
Version: v5.0.0
Inherits: RefCounted
Source: grid_positioner_logic.gd
Parsing: AST-based for maximum accuracy with symbol typing
Constants
ProjectionMethod
Value: GBEnums.ProjectionMethod
RecenterDecision
Value: {
Methods
proj_method_to_string
Signature: static proj_method_to_string(p_method: GBEnums.ProjectionMethod: Variant) -> String
Returns: String
Static: true
Parameters:
p_method: GBEnums.ProjectionMethod: Variant
should_be_visible
Signature: static should_be_visible(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings, last_mouse_input_status: GBMouseInputStatus, has_mouse_world: bool) -> bool
[return] True if the positioner should be visible
Returns: bool
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettingslast_mouse_input_status: GBMouseInputStatushas_mouse_world: bool
should_be_visible_for_mode
Signature: static should_be_visible_for_mode(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings) -> bool
[return] True if visible in this mode
Returns: bool
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettings
is_positioner_active
Signature: static is_positioner_active(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings) -> bool
Returns whether the positioner is considered active for the given mode/settings.
Returns: bool
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettings
is_mouse_follow_allowed
Signature: static is_mouse_follow_allowed(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings, input_ready: bool) -> bool
Mouse follow allowed gate
Returns: bool
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettingsinput_ready: bool
visibility_decision_trace
Signature: static visibility_decision_trace(mode_state: ModeState, targeting_settings: GridTargetingSettings, last_mouse_input_status: GBMouseInputStatus, has_mouse_world: bool) -> String
[return] Formatted trace string
Returns: String
Static: true
Parameters:
mode_state: ModeStatetargeting_settings: GridTargetingSettingslast_mouse_input_status: GBMouseInputStatushas_mouse_world: bool
visibility_on_mouse_event
Signature: static visibility_on_mouse_event(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings, input_allowed: bool) -> void
diagnostics.
Returns: void
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettingsinput_allowed: bool
visibility_on_process_tick
Signature: static visibility_on_process_tick(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings, input_ready: bool, last_mouse_input_status: GBMouseInputStatus, has_mouse_world: bool) -> MouseEventVisibilityResult
or a cached mouse world exists. Only applies when hide_on_handled is true.
Returns: MouseEventVisibilityResult
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettingsinput_ready: boollast_mouse_input_status: GBMouseInputStatushas_mouse_world: bool
visibility_reconcile
Signature: static visibility_reconcile(mode: GBEnums.Mode: Variant, targeting_settings: GridTargetingSettings, current_visible: bool, last_mouse_input_status: GBMouseInputStatus, has_mouse_world: bool) -> MouseEventVisibilityResult
set to the expected visibility derived from mode/settings.
Returns: MouseEventVisibilityResult
Static: true
Parameters:
mode: GBEnums.Mode: Varianttargeting_settings: GridTargetingSettingscurrent_visible: boollast_mouse_input_status: GBMouseInputStatushas_mouse_world: bool
recenter_on_enable_decision
Signature: static recenter_on_enable_decision(policy: int, has_cached_mouse_world: bool, mouse_input_enabled: bool, viewport_available: bool) -> int
- MOUSE_CURSOR -> MOUSE_CURSOR if cached or (mouse enabled and viewport available); else VIEW_CENTER
Returns: int
Static: true
Parameters:
policy: inthas_cached_mouse_world: boolmouse_input_enabled: boolviewport_available: bool
get_tile_delta_from_key_event
Signature: static get_tile_delta_from_key_event(event: InputEventKey, actions: GBActions) -> Vector2i
Keyboard helper: compute tile delta from a key event and actions
Returns: Vector2i
Static: true
Parameters:
event: InputEventKeyactions: GBActions
get_rotation_direction_from_key_event
Signature: static get_rotation_direction_from_key_event(event: InputEventKey, actions: GBActions) -> int
[return] Rotation direction: 1 for clockwise, -1 for counter-clockwise, 0 for no rotation
Returns: int
Static: true
Parameters:
event: InputEventKeyactions: GBActions