Table of Contents

Class DefaultInputActionsHelper

Namespace
GridPlacement.GDScript
Assembly
MoonBark.GridPlacement.GDScript.dll

Helper class for managing default input actions for the Grid Building plugin. Provides utilities for applying default input mappings, validating actions, and formatting action bindings for display.

class DefaultInputActionsHelper extends RefCounted
DefaultInputActionsHelper

Properties

created_actions

var created_actions: Array[StringName] = apply_default_input_actions(action_names, save_project)

existing_actions

var existing_actions: Array[StringName] = []

existing_action_events

var existing_action_events: Dictionary[StringName, Array] = {}

all_action_names

var all_action_names: Array[StringName] = action_names.get_all_names()

created_actions

var created_actions: Array[StringName] = apply_default_input_actions(action_names, save_project)

default_action_events

var default_action_events: Dictionary[StringName, Array] = _get_default_action_events(action_names)

project_settings_synced

var project_settings_synced: bool = false

action_setting

var action_setting: Dictionary = ProjectSettings.get_setting(action_setting_path, {})

stored_events

var stored_events: Array = action_setting.get("events", [])

events

var events: Array[InputEvent]

all_action_names

var all_action_names: Array[StringName] = action_names.get_all_names()

created_actions

var created_actions: Array[StringName] = apply_default_input_actions(action_names, save_project)

existing_actions

var existing_actions: Array[StringName] = []

existing_action_events

var existing_action_events: Dictionary[StringName, Array] = {}

events

var events: Array[InputEvent]

action_setting_path

var action_setting_path: String = get_project_setting_path(action_name)

action_setting_value

var action_setting_value: Dictionary[String, Variant] = {

action_setting_path

var action_setting_path: String = get_project_setting_path(action_name)

action_setting

var action_setting: Dictionary = ProjectSettings.get_setting(action_setting_path, {})

deadzone

var deadzone: float = float(action_setting.get("deadzone", 0.5))

stored_events

var stored_events: Array = action_setting.get("events", [])

event

var event: InputEventMouseButton = InputEventMouseButton.new()

event

var event: InputEventMouseButton = InputEventMouseButton.new()

issues

var issues: Array[String] = []

issues

var issues: Array[String] = []

descriptions

var descriptions: Array[String] = []

key_event

var key_event: InputEventKey = event as InputEventKey

key_name

var key_name: String = OS.get_keycode_string(key_event.physical_keycode)

mouse_event

var mouse_event: InputEventMouseButton = event as InputEventMouseButton

button_name

var button_name: String = get_mouse_button_name(mouse_event.button_index)

separator

var separator: String = "------------------------------------------------------------"

report

var report: DefaultInputActionsHelper.ActionSetupReport = apply_default_input_actions_with_report(action_names, save_project)

mode_actions

var mode_actions: Array[StringName] = []

building_actions

var building_actions: Array[StringName] = []

movement_actions

var movement_actions: Array[StringName] = []

binding_desc

var binding_desc: String = _get_action_binding_description(action_name, existing_action_events)

binding_desc

var binding_desc: String = _get_action_binding_description(action_name, existing_action_events)

binding_desc

var binding_desc: String = _get_action_binding_description(action_name, existing_action_events)

events

var events: Array[InputEvent]

Methods

apply_default_input_actions

static func apply_default_input_actions(action_names: GBActionNames, save_project: bool = false) -> Array[StringName]:

Parameters

action_names
save_project

Returns

has_configured_action

static func has_configured_action(action_name: StringName) -> bool:

Parameters

action_name

Returns

get_configured_action_events

static func get_configured_action_events(action_name: StringName) -> Array[InputEvent]:

Parameters

action_name

Returns

apply_default_input_actions_with_report

static func apply_default_input_actions_with_report(action_names: GBActionNames, save_project: bool = false) -> DefaultInputActionsHelper.ActionSetupReport:

Parameters

action_names
save_project

Returns

validate_action

static func validate_action(p_action_name: StringName) -> Array[String]:

Parameters

p_action_name

Returns

get_editor_issues

static func get_editor_issues(action_names: GBActionNames) -> Array[String]:

Parameters

action_names

Returns

get_runtime_issues

static func get_runtime_issues(action_names: GBActionNames) -> Array[String]:

Parameters

action_names

Returns

format_binding_description

static func format_binding_description(events: Array[InputEvent]) -> String:

Parameters

events

Returns

get_mouse_button_name

static func get_mouse_button_name(button_index: MouseButton) -> String:

Parameters

button_index

Returns

get_project_setting_path

static func get_project_setting_path(action_name: StringName) -> String:

Parameters

action_name

Returns

setup_and_report

static func setup_and_report(action_names: GBActionNames, save_project: bool = false) -> DefaultInputActionsHelper.ActionSetupReport:

Parameters

action_names
save_project

Returns