InputMap¶
继承: Object
管理所有InputEventAction的单例。
描述¶
管理可以从项目设置菜单Project>Project Settings>Input Map或使用add_action()和action_add_event()在代码中创建/修改的所有InputEventAction。参见Item.OnInput()。
方法¶
void |
action_add_event(action: StringName, event: InputEvent) |
void |
action_erase_event(action: StringName, event: InputEvent) |
void |
action_erase_events(action: StringName) |
action_get_deadzone(action: StringName) |
|
action_get_events(action: StringName) |
|
action_has_event(action: StringName, event: InputEvent) |
|
void |
action_set_deadzone(action: StringName, deadzone: float) |
void |
add_action(action: StringName, deadzone: float = 0.2) |
void |
erase_action(action: StringName) |
event_is_action(event: InputEvent, action: StringName, exact_match: bool = false) const |
|
has_action(action: StringName) const |
|
void |
方法说明¶
void action_add_event(action: StringName, event: InputEvent) 🔗
将InputEvent添加到操作中。此InputEvent将触发该操作。
void action_erase_event(action: StringName, event: InputEvent) 🔗
从操作中删除InputEvent。
void action_erase_events(action: StringName) 🔗
从操作中删除所有事件。
float action_get_deadzone(action: StringName) 🔗
返回操作的死区值。
Array[InputEvent] action_get_events(action: StringName) 🔗
返回与给定操作关联的InputEvent数组。
注意:在编辑器中使用时(例如工具脚本或EditorPlugin),此方法将返回编辑器操作的事件。如果您想从编辑器访问项目的输入绑定,请从ProjectSettings读取输入/*设置。
bool action_has_event(action: StringName, event: InputEvent) 🔗
如果操作具有与之关联的给定InputEvent,则返回true。
void action_set_deadzone(action: StringName, deadzone: float) 🔗
设置操作的死区值。
void add_action(action: StringName, deadzone: float = 0.2) 🔗
使用可配置的deadzone向InputMap添加一个空操作。
然后可以使用action_add_event()将InputEvent添加到此操作中。
void erase_action(action: StringName) 🔗
从InputMap中删除操作。
bool event_is_action(event: InputEvent, action: StringName, exact_match: bool = false) const 🔗
如果给定的事件是现有操作的一部分,则返回true。如果未按下给定的InputEvent,此方法将忽略键盘修饰符(用于正确的释放检测)。如果您不想要此行为,请参阅action_has_event()。
如果exact_match为false,则忽略InputEventKey和InputEventMouseButton事件的其他输入修饰符,以及InputEventJoypadMotion事件的方向。
Array[StringName] get_actions() 🔗
返回InputMap中所有操作的数组。
bool has_action(action: StringName) const 🔗
如果InputMap具有具有给定名称的注册操作,则返回true。
void load_from_project_settings() 🔗
清除InputMap中的所有InputEventAction并从ProjectSettings重新加载它。