🕹️ 输入
创建自定义按键绑定并检索输入信息。
🗿Static Class
This is a Static Class. Access it's methods directly with
.. It's not possible to spawn new instances.💂Authority
This static class can be accessed only on 🟧 Client side.
🧑💻API Source
This page is auto-generated! The Functions, Properties and Events described here are defined in our GitHub's API Repository! Feel free to commit suggestions and changes to the source .json API files!
🎒 示例
Client/Index.lua
-- 注册 binding_name “SpawnMenu”,默认按键“Q”
-- 这将自动将“SpawnMenu”添加到用户的按键绑定设置中
Input.Register("SpawnMenu", "Q")
-- 订阅按下按键
Input.Bind("SpawnMenu", InputEvent.Pressed, function()
-- 打开生成菜单
end)
-- 订阅松开按键
Input.Bind("SpawnMenu", InputEvent.Released, function()
-- 关闭生成菜单
end)
Client/Index.lua
-- 订阅原生绑定
Input.Bind("MoveForward", InputEvent.Pressed, function(delta)
-- 按下 MoveForward 键(通常为 W)
end)
--订阅原生绑定
Input.Bind("MoveBackward", InputEvent.Pressed, function(delta)
-- 按下 MoveBackward 键(通常为 S)
end)
(Input.GetModifierKeys) Checks if has Shift pressed
local modifier_keys = Input.GetModifierKeys()
local has_shift_pressed = modifier_keys & KeyModifier.LeftShiftDown
-- Outputs "true"
🗿 静态函数
| Returns | Name | Description | |
|---|---|---|---|
Bind | 将函数绑定到使用 Register 定义的输入或游戏自带的输入中 | ||
| table | GetGameKeyBindings | 返回一个包含所有游戏按键绑定的表 | |
| KeyboardLayout | GetKeyboardLayout | 获取用户的键盘布局 | |
| integer | GetKeyCode | 获取按键的按键代码 | |
| string | GetKeyIcon | 获取按键的图标路径 | |
| table of string | GetMappedKeys | 返回绑定到某个按键绑定的所有按键 | |
| KeyModifier | GetModifierKeys | 获取当前按下的修饰键 | |
| table | GetScriptingKeyBindings | 返回一个包含所有脚本按键绑定的表 | |
InputKey | 强行向本地玩家发送一个按键输入事件 | ||
| boolean | IsInputEnabled | No description provided | |
| boolean | IsKeyDown | 返回某个按键当前是否正被按下 | |
| boolean | IsMouseEnabled | No description provided | |
Register | 将按键绑定注册到默认按键 | ||
ResetBindings | 重置当前包绑定的所有函数 | ||
SetInputEnabled | 切换本地玩家输入的开启状态 | ||
SetMouseCursor | 设置当前的鼠标光标类型 | ||
SetMouseEnabled | 显示/隐藏鼠标光标 | ||
Unbind | 取消绑定某个输入函数 | ||
Unregister | 取消注册某个按键绑定 |


Bind
将函数绑定到使用 Register 定义的输入或游戏自带的输入中Input.Bind(binding_name, input_event, callback)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | binding_name | Required parameter | 按键绑定 ID |
| InputEvent | input_event | Required parameter | 要注册的事件类型(Released/Pressed) |
| function | callback | Required parameter | 要触发的函数 with this format |


GetGameKeyBindings
返回一个包含所有游戏按键绑定的表
local ret = Input.GetGameKeyBindings()
Returns
| Type | Description |
|---|---|
| table | with this format |


GetKeyboardLayout
获取用户的键盘布局
local ret = Input.GetKeyboardLayout()
Returns
| Type | Description |
|---|---|
| KeyboardLayout | No description provided |


GetKeyCode
获取按键的按键代码
local ret = Input.GetKeyCode(key_name)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | key_name | Required parameter | No description provided |
Returns
| Type | Description |
|---|---|
| integer | No description provided |


GetKeyIcon
获取按键的图标路径
local ret = Input.GetKeyIcon(key_name, dark_mode?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | key_name | Required parameter | No description provided |
| boolean | dark_mode? | false | No description provided |
Returns
| Type | Description |
|---|---|
| string | No description provided |


GetMappedKeys
返回绑定到某个按键绑定的所有按键
local ret = Input.GetMappedKeys(binding_name)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | binding_name | Required parameter | 按键绑定 ID |


GetModifierKeys
获取当前按下的修饰键
local ret = Input.GetModifierKeys()
Returns
| Type | Description |
|---|---|
| KeyModifier | No description provided |
Input.GetModifierKeys Examples
Checks if has Shift pressed
local modifier_keys = Input.GetModifierKeys()
local has_shift_pressed = modifier_keys & KeyModifier.LeftShiftDown
-- Outputs "true"


GetScriptingKeyBindings
返回一个包含所有脚本按键绑定的表
local ret = Input.GetScriptingKeyBindings()
Returns
| Type | Description |
|---|---|
| table | with this format |


InputKey
强行向本地玩家发送一个按键输入事件
由于此操作会绕过内部验证,因此不会触发任何脚本事件
Input.InputKey(key_name, input_event, amount_depressed?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | key_name | Required parameter | 要输入的按键名称 |
| InputEvent | input_event | Required parameter | 要输入的事件类型 |
| float | amount_depressed? | 1 | 按下的程度 |


IsInputEnabled
local ret = Input.IsInputEnabled()
Returns
| Type | Description |
|---|---|
| boolean | 输入是否可见 |
See also SetInputEnabled.


IsKeyDown
返回某个按键当前是否正被按下
local ret = Input.IsKeyDown(key_name)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | key_name | Required parameter | No description provided |
Returns
| Type | Description |
|---|---|
| boolean | 按键是否被按下 |


IsMouseEnabled
local ret = Input.IsMouseEnabled()
Returns
| Type | Description |
|---|---|
| boolean | 鼠标是否可见 |
See also SetMouseEnabled.


Register
将按键绑定注册到默认按键
Input.Register(binding_name, key_name, description)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | binding_name | Required parameter | 按键绑定 ID |
| string | key_name | Required parameter | 若先前未设置过,则默认使用的按键 |
| string or nil | description | Required parameter | 在按键绑定设置界面中显示的文本 |


ResetBindings
重置当前包绑定的所有函数
Input.ResetBindings()


SetInputEnabled
切换本地玩家输入的开启状态
Input.SetInputEnabled(enable_input)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| boolean | enable_input | Required parameter | No description provided |
See also IsInputEnabled.


SetMouseCursor
设置当前的鼠标光标类型
Input.SetMouseCursor(cursor_type)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| CursorType | cursor_type | Required parameter | No description provided |


SetMouseEnabled
显示/隐藏鼠标光标
Input.SetMouseEnabled(is_enabled)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| boolean | is_enabled | Required parameter | No description provided |
See also IsMouseEnabled.


Unbind
取消绑定与指定 binding_name 和 input_event 相关的所有输入函数
Input.Unbind(binding_name, input_event, callback?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | binding_name | Required parameter | 按键绑定 ID |
| InputEvent | input_event | Required parameter | 要注册的事件类型(Released/Pressed) |
| function | callback? | nil | 要取消绑定的特定函数 |


Unregister
取消注册某个按键绑定
Input.Unregister(binding_name, key_name)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| string | binding_name | Required parameter | 按键绑定 ID |
| string | key_name | Required parameter | No description provided |
🚀 事件
| Name | Description | |
|---|---|---|
KeyBindingChange | 在设置中更改了按键绑定时调用 | |
KeyDown | 键盘按键正被按下 | |
KeyPress | 键盘按键已被按下 | |
KeyUp | 键盘按键已被释放 | |
MouseDown | 鼠标按键已被按下 / 正被按下 | |
MouseEnable | 当鼠标光标显示或隐藏时调用 | |
MouseMove | 当鼠标移动时调用 | |
MouseScroll | 当鼠标滚轮滚动时调用 | |
MouseUp | 鼠标按键已被释放 |

KeyBindingChange
在设置中更改了按键绑定时调用
Input.Subscribe("KeyBindingChange", function(binding_name, key, scale)
-- KeyBindingChange was called
end)

KeyDown
键盘按键正被按下
返回 false 以阻止该事件
Input.Subscribe("KeyDown", function(key_name, delta)
-- KeyDown was called
return true
end)

KeyPress
键盘按键已被按下
返回 false 以阻止该事件
Input.Subscribe("KeyPress", function(key_name, delta)
-- KeyPress was called
return true
end)

KeyUp
键盘按键已被释放
返回 false 以阻止该事件
Input.Subscribe("KeyUp", function(key_name, delta)
-- KeyUp was called
return true
end)

MouseDown
鼠标按键已被按下 / 正被按下
返回 false 以阻止该事件
Input.Subscribe("MouseDown", function(key_name, mouse_x, mouse_y)
-- MouseDown was called
return true
end)
Arguments
| Type | Argument | Description |
|---|---|---|
| string | key_name | No description provided |
| float | mouse_x | No description provided |
| float | mouse_y | No description provided |

MouseEnable
当鼠标光标显示或隐藏时调用
Input.Subscribe("MouseEnable", function(is_enabled)
-- MouseEnable was called
end)
Arguments
| Type | Argument | Description |
|---|---|---|
| boolean | is_enabled | No description provided |

MouseMove
当鼠标移动时调用
Input.Subscribe("MouseMove", function(cursor_delta_x, cursor_delta_y, mouse_x, mouse_y)
-- MouseMove was called
end)
Arguments
| Type | Argument | Description |
|---|---|---|
| float | cursor_delta_x | No description provided |
| float | cursor_delta_y | No description provided |
| float | mouse_x | No description provided |
| float | mouse_y | No description provided |

MouseScroll
当鼠标滚轮滚动时调用
Input.Subscribe("MouseScroll", function(mouse_x, mouse_y, delta)
-- MouseScroll was called
end)
Arguments
| Type | Argument | Description |
|---|---|---|
| float | mouse_x | No description provided |
| float | mouse_y | No description provided |
| float | delta | No description provided |

MouseUp
鼠标按键已被释放
返回 false 以阻止该事件
Input.Subscribe("MouseUp", function(key_name, mouse_x, mouse_y)
-- MouseUp was called
return true
end)
Arguments
| Type | Argument | Description |
|---|---|---|
| string | key_name | No description provided |
| float | mouse_x | No description provided |
| float | mouse_y | No description provided |
⌨️ 按键名称
按键/鼠标事件中返回的所有按键名称列表。
▶️ 功能键
| 按键名称 | 描述 |
|---|---|
F1 | 功能 1 |
F2 | 功能 2 |
F3 | 功能 3 |
F4 | 功能 4 |
F5 | 功能 5 |
F6 | 功能 6 |
F7 | 功能 7 |
F8 | 功能 8 |
F9 | 功能 9 |
F10 | 功能 10 |
F11 | 功能 11 |
F12 | 功能 12 |
▶️ 字母数字键
| 按键名称 | 描述 |
|---|---|
A | 字母 A |
B | 字母 B |
C | 字母 C |
D | 字母 D |
E | 字母 E |
F | 字母 F |
G | 字母 G |
H | 字母 H |
I | 字母 I |
J | 字母 J |
K | 字母 K |
L | 字母 L |
M | 字母 M |
N | 字母 N |
O | 字母 O |
P | 字母 P |
Q | 字母 Q |
R | 字母 R |
S | 字母 S |
T | 字母 T |
U | 字母 U |
V | 字母 V |
W | 字母 W |
X | 字母 X |
Y | 字母 Y |
Z | 字母 Z |
▶️ 特殊键
| 按键名称 | 描述 |
|---|---|
Escape | Escape |
Tab | Tab |
Tilde | ~ |
ScrollLock | 滚动锁定 |
Pause | Pause |
BackSpace | BackSpace |
One | One |
Two | Two |
Three | Three |
Four | Four |
Five | Five |
Six | Six |
Seven | Seven |
Eight | Eight |
Nine | Nine |
Zero | Zero |
Underscore | _ |
Equals | = |
Backslash | |
LeftBracket | [ |
RightBracket | ] |
Enter | Enter 键或小键盘 Enter 键 |
CapsLock | 大写锁定 |
Semicolon | ; |
Quote | ‘ |
LeftShift | 左 Shift 键 |
Comma | , |
Period | . |
Slash | / |
RightShift | 右 Shift 键 |
LeftControl | 左 Ctrl 键 |
LeftAlt | 左 Alt 键 |
SpaceBar | 空格键 |
RightAlt | 右 Alt 键 |
RightControl | 右 Ctrl 键 |
Left | Left |
Up | Up |
Down | Down |
Right | Right |
Home | Home |
End | End |
Insert | Insert |
PageUp | PgUp 键 |
Delete | Delete |
PageDown | PgDn 键 |
NumLock | 小键盘锁定 |
Divide | 小键盘 / |
Multiply | 小键盘 * |
Subtract | 小键盘 - |
Add | 小键盘 + |
PageDown | PgDn 键 |
NumPadOne | 小键盘 1 |
NumPadTwo | 小键盘 2 |
NumPadThree | 小键盘 3 |
NumPadFour | 小键盘 4 |
NumPadFive | 小键盘 5 |
NumPadSix | 小键盘 6 |
NumPadSeven | 小键盘 7 |
NumPadEight | 小键盘 8 |
NumPadNine | 小键盘 9 |
NumPadZero | 小键盘 0 |
Decimal | 小键盘小数点 |
▶️ 鼠标
| 按键名称 | 描述 |
|---|---|
LeftMouseButton | 鼠标左键 |
RightMouseButton | 鼠标右键 |
MiddleMouseButton | 鼠标中键 |
ThumbMouseButton | 主鼠标侧键 |
ThumbMouseButton2 | 副鼠标侧键 |
MouseScrollUp | 鼠标滚轮向上滚动 |
MouseScrollDown | 鼠标滚轮向下滚动 |
MouseX | 鼠标在 X 轴上移动 |
MouseY | 鼠标在 Y 轴上移动 |
▶️ AZERTY
| 按键名称 | 描述 |
|---|---|
Ampersand | & |
Asterix | - |
Caret | ^ |
Colon | : |
Dollar | $ |
Exclamation | ! |
LeftParantheses | ( |
RightParantheses | ) |
A_AccentGrave | À |
C_Cedille | Ç |
E_AccentAigu | É |
E_AccentGrave | È |