InputObject

显示已弃用

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

无法创建

一个 输入对象 代表单个用户输入,例如鼠标移动、触摸、按键操作等。当输入开始时创建。

该对象的属性根据 UserInputType 会有所不同。每种输入都会经历各种变化,以其 UserInputState 。在输入的使用期间,其他进一步描述输入的属性可能会更改,例如 PositionDelta 。键盘和游戏手柄按钮将具有 KeyCode 属性设置。

在输入开始之前创建一次,同一个对象存在并更新直到输入结束。因结果,您可以使用 Changed 事件跟踪对象的更改,因为用户在问题的输入更改时。您还可以将这些对象放入激活输入列表,并在创建后通过事件 such as UserInputService.InputBegan 与对象进行交互。这主要对触摸事件有用,因为每个触摸点都会有一个独立的输入对象。

还见:

概要

属性

属性

Delta

读取并联

描述鼠标/手柄移动之间的差异(更改)的 Vector3

当与输入的 position 一起使用时,这有助于跟踪用户的鼠标/手柄的位置和移动,例如当你正在创建自定义移动或相机脚本时。考虑使用 Object.Changed 事件跟踪输入对象更改或当用户通过事件如 UserInputService.InputChangedGuiObject.InputChanged 输入更改时。

请注意,一个对应于 (左键点击) 和 (右键点击) 从回调中提供的 (左键点击) 和 (右键点按) 在创建后不会更新,除了鼠标输入结束时。为了获取鼠标输入的更新差异,你必须使用 InputObjectInputChanged 回调中引用,或调用 GetMouseDelta() 。然而,任何与触摸输入相对应的 InputObjects 将在其生命周期内每一帧更新其差异和位置。

还见:

代码示例

这个例子创建了一个望远镜脚本,降低玩家的 FieldOfView()MouseDeltaSensitivity() 当玩家使用具有 MouseEnabled() 的鼠标点击时。该脚本还指向玩家的 向鼠标单击的世界位置。

当玩家再次离开鼠标点击时,玩家的相机返回到与玩家使用脚本时相同的视野和 领域。

当玩家使用望远镜时,脚本通过设置玩家的 MouseBehavior() 到锁定中心来锁定玩家的鼠标到屏幕中心。当玩家移动鼠标时,按照传递给 InputObject.DeltaInputChanged() 属性移动相机,表示玩家在屏幕位置上更改了鼠标的 Vector2

为了这个例子按期望的方式运行,它应该放置在 LocalScript 中。

创建望远镜脚本

local UserInputService = game:GetService("UserInputService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.CharacterAdded:Wait()
local head = character:WaitForChild("Head", false)
local mouse = player:GetMouse()
local zoomed = false
local camera = game.Workspace.CurrentCamera
local target = nil
local originalProperties = {
FieldOfView = nil,
_CFrame = nil,
MouseBehavior = nil,
MouseDeltaSensitivity = nil,
}
local AngleX, TargetAngleX = 0, 0
local AngleY, TargetAngleY = 0, 0
-- 将相机重置为 CFrame 和 FieldOfView,在缩放之前
local function ResetCamera()
target = nil
camera.CameraType = Enum.CameraType.Custom
camera.CFrame = originalProperties._CFrame
camera.FieldOfView = originalProperties.FieldOfView
UserInputService.MouseBehavior = originalProperties.MouseBehavior
UserInputService.MouseDeltaSensitivity = originalProperties.MouseDeltaSensitivity
end
local function ZoomCamera()
-- 允许通过脚本更改相机
camera.CameraType = Enum.CameraType.Scriptable
-- 在缩放之前存储相机属性
originalProperties._CFrame = camera.CFrame
originalProperties.FieldOfView = camera.FieldOfView
originalProperties.MouseBehavior = UserInputService.MouseBehavior
originalProperties.MouseDeltaSensitivity = UserInputService.MouseDeltaSensitivity
-- 缩放相机
target = mouse.Hit.Position
local eyesight = head.Position
camera.CFrame = CFrame.new(eyesight, target)
camera.Focus = CFrame.new(target)
camera.FieldOfView = 10
-- 锁定并减慢鼠标
UserInputService.MouseBehavior = Enum.MouseBehavior.LockCenter
UserInputService.MouseDeltaSensitivity = 1
-- 重置缩放角度
AngleX, TargetAngleX = 0, 0
AngleY, TargetAngleY = 0, 0
end
-- 切换镜头缩放/取消缩放
local function MouseClick()
if zoomed then
-- 缩放相机
ResetCamera()
else
-- 在相机放大
ZoomCamera()
end
zoomed = not zoomed
end
local function MouseMoved(input)
if zoomed then
local sensitivity = 0.6 -- 任何高于此的数值都会使查找上下更加困难;推荐在 0~1 之间的数值
local smoothness = 0.05 -- 推荐在 0~1 之间的任何东西
local delta = Vector2.new(input.Delta.x / sensitivity, input.Delta.y / sensitivity) * smoothness
local X = TargetAngleX - delta.y
local Y = TargetAngleY - delta.x
TargetAngleX = (X >= 80 and 80) or (X <= -80 and -80) or X
TargetAngleY = (Y >= 80 and 80) or (Y <= -80 and -80) or Y
AngleX = AngleX + (TargetAngleX - AngleX) * 0.35
AngleY = AngleY + (TargetAngleY - AngleY) * 0.15
camera.CFrame = CFrame.new(head.Position, target)
* CFrame.Angles(0, math.rad(AngleY), 0)
* CFrame.Angles(math.rad(AngleX), 0, 0)
end
end
local function InputBegan(input, _gameProcessedEvent)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
MouseClick()
end
end
local function InputChanged(input, _gameProcessedEvent)
if input.UserInputType == Enum.UserInputType.MouseMovement then
MouseMoved(input)
end
end
if UserInputService.MouseEnabled then
UserInputService.InputBegan:Connect(InputBegan)
UserInputService.InputChanged:Connect(InputChanged)
end
读取并联

包含一个 Enum.KeyCode 枚列,描述使用了哪种输入。对于像键盘这样的输入类型,这描述了按下了哪个键。对于像鼠标这样的输入,这不提供额外信息。

枚数


<th>值</th>
<th>描述</th>
</tr>
</thead>
<tr>
<td>
<b>未知</b>
</td>
<td>0</td>
<td />
</tr>
<tr>
<td>
<b>返回键</b>
</td>
<td>8</td>
<td />
</tr>
<tr>
<td>
<b>标签</b>
</td>
<td>9</td>
<td />
</tr>
<tr>
<td>
<b>清除</b>
</td>
<td>12</td>
<td />
</tr>
<tr>
<td>
<b>返回</b>
</td>
<td>13</td>
<td />
</tr>
<tr>
<td>
<b>暂停</b>
</td>
<td>19</td>
<td />
</tr>
<tr>
<td>
<b>逃脱</b>
</td>
<td>27</td>
<td />
</tr>
<tr>
<td>
<b>空间</b>
</td>
<td>32</td>
<td />
</tr>
<tr>
<td>
<b>引用双倍</b>
</td>
<td>34</td>
<td />
</tr>
<tr>
<td>
<b>哈希</b>
</td>
<td>35</td>
<td />
</tr>
<tr>
<td>
<b>美元</b>
</td>
<td>36</td>
<td />
</tr>
<tr>
<td>
<b>百分比</b>
</td>
<td>37</td>
<td />
</tr>
<tr>
<td>
<b>扰流板</b>
</td>
<td>38</td>
<td />
</tr>
<tr>
<td>
<b>引用</b>
</td>
<td>39</td>
<td />
</tr>
<tr>
<td>
<b>左括号</b>
</td>
<td>40</td>
<td />
</tr>
<tr>
<td>
<b>右括号</b>
</td>
<td>41</td>
<td />
</tr>
<tr>
<td>
<b>星号</b>
</td>
<td>42</td>
<td />
</tr>
<tr>
<td>
<b>加</b>
</td>
<td>43</td>
<td />
</tr>
<tr>
<td>
<b>逗号</b>
</td>
<td>44</td>
<td />
</tr>
<tr>
<td>
<b>减</b>
</td>
<td>45</td>
<td />
</tr>
<tr>
<td>
<b>期间</b>
</td>
<td>46</td>
<td />
</tr>
<tr>
<td>
<b>切割</b>
</td>
<td>47</td>
<td />
</tr>
<tr>
<td>
<b>零</b>
</td>
<td>48</td>
<td />
</tr>
<tr>
<td>
<b>一个</b>
</td>
<td>49</td>
<td />
</tr>
<tr>
<td>
<b>两个</b>
</td>
<td>50</td>
<td />
</tr>
<tr>
<td>
<b>三</b>
</td>
<td>51</td>
<td />
</tr>
<tr>
<td>
<b>四个</b>
</td>
<td>52</td>
<td />
</tr>
<tr>
<td>
<b>五</b>
</td>
<td>53</td>
<td />
</tr>
<tr>
<td>
<b>六</b>
</td>
<td>54</td>
<td />
</tr>
<tr>
<td>
<b>七</b>
</td>
<td>55</td>
<td />
</tr>
<tr>
<td>
<b>八</b>
</td>
<td>56</td>
<td />
</tr>
<tr>
<td>
<b>九</b>
</td>
<td>57</td>
<td />
</tr>
<tr>
<td>
<b>撇号</b>
</td>
<td>58</td>
<td />
</tr>
<tr>
<td>
<b>分号</b>
</td>
<td>59</td>
<td />
</tr>
<tr>
<td>
<b>小于</b>
</td>
<td>60</td>
<td />
</tr>
<tr>
<td>
<b>等于</b>
</td>
<td>61</td>
<td />
</tr>
<tr>
<td>
<b>大于等于</b>
</td>
<td>62</td>
<td />
</tr>
<tr>
<td>
<b>问题</b>
</td>
<td>63</td>
<td />
</tr>
<tr>
<td>
<b>At</b>
</td>
<td>64</td>
<td />
</tr>
<tr>
<td>
<b>左括号</b>
</td>
<td>91</td>
<td />
</tr>
<tr>
<td>
<b>返回斩</b>
</td>
<td>92</td>
<td />
</tr>
<tr>
<td>
<b>右侧支架</b>
</td>
<td>93</td>
<td />
</tr>
<tr>
<td>
<b>护理</b>
</td>
<td>94</td>
<td />
</tr>
<tr>
<td>
<b>下划线</b>
</td>
<td>95</td>
<td />
</tr>
<tr>
<td>
<b>引用符</b>
</td>
<td>96</td>
<td />
</tr>
<tr>
<td>
<b>A</b>
</td>
<td>97</td>
<td />
</tr>
<tr>
<td>
<b>B</b>
</td>
<td>98</td>
<td />
</tr>
<tr>
<td>
<b>C</b>
</td>
<td>99</td>
<td />
</tr>
<tr>
<td>
<b>D</b>
</td>
<td>100</td>
<td />
</tr>
<tr>
<td>
<b>E</b>
</td>
<td>101</td>
<td />
</tr>
<tr>
<td>
<b>F</b>
</td>
<td>102</td>
<td />
</tr>
<tr>
<td>
<b>G</b>
</td>
<td>103</td>
<td />
</tr>
<tr>
<td>
<b>H</b>
</td>
<td>104</td>
<td />
</tr>
<tr>
<td>
<b>I</b>
</td>
<td>105</td>
<td />
</tr>
<tr>
<td>
<b>J</b>
</td>
<td>106</td>
<td />
</tr>
<tr>
<td>
<b>K</b>
</td>
<td>107</td>
<td />
</tr>
<tr>
<td>
<b>L</b>
</td>
<td>108</td>
<td />
</tr>
<tr>
<td>
<b>M</b>
</td>
<td>109</td>
<td />
</tr>
<tr>
<td>
<b>N</b>
</td>
<td>110</td>
<td />
</tr>
<tr>
<td>
<b>O</b>
</td>
<td>111</td>
<td />
</tr>
<tr>
<td>
<b>P</b>
</td>
<td>112</td>
<td />
</tr>
<tr>
<td>
<b>Q</b>
</td>
<td>113</td>
<td />
</tr>
<tr>
<td>
<b>R</b>
</td>
<td>114</td>
<td />
</tr>
<tr>
<td>
<b>S</b>
</td>
<td>115</td>
<td />
</tr>
<tr>
<td>
<b>T</b>
</td>
<td>116</td>
<td />
</tr>
<tr>
<td>
<b>U</b>
</td>
<td>117</td>
<td />
</tr>
<tr>
<td>
<b>V</b>
</td>
<td>118</td>
<td />
</tr>
<tr>
<td>
<b>W</b>
</td>
<td>119</td>
<td />
</tr>
<tr>
<td>
<b>X</b>
</td>
<td>120</td>
<td />
</tr>
<tr>
<td>
<b>Y</b>
</td>
<td>121</td>
<td />
</tr>
<tr>
<td>
<b>Z</b>
</td>
<td>122</td>
<td />
</tr>
<tr>
<td>
<b>左捲</b>
</td>
<td>123</td>
<td />
</tr>
<tr>
<td>
<b>管道</b>
</td>
<td>124</td>
<td />
</tr>
<tr>
<td>
<b>右捲曲</b>
</td>
<td>125</td>
<td />
</tr>
<tr>
<td>
<b>tilde</b>
</td>
<td>126</td>
<td />
</tr>
<tr>
<td>
<b>删除</b>
</td>
<td>127</td>
<td />
</tr>
<tr>
<td>
<b>键盘零</b>
</td>
<td>256</td>
<td />
</tr>
<tr>
<td>
<b>键盘一</b>
</td>
<td>257</td>
<td />
</tr>
<tr>
<td>
<b>键盘二</b>
</td>
<td>258</td>
<td />
</tr>
<tr>
<td>
<b>键盘三</b>
</td>
<td>259</td>
<td />
</tr>
<tr>
<td>
<b>键盘Four</b>
</td>
<td>260</td>
<td />
</tr>
<tr>
<td>
<b>键盘五</b>
</td>
<td>261</td>
<td />
</tr>
<tr>
<td>
<b>键盘六</b>
</td>
<td>262</td>
<td />
</tr>
<tr>
<td>
<b>按钮七</b>
</td>
<td>263</td>
<td />
</tr>
<tr>
<td>
<b>键盘八</b>
</td>
<td>264</td>
<td />
</tr>
<tr>
<td>
<b>键盘九</b>
</td>
<td>265</td>
<td />
</tr>
<tr>
<td>
<b>按钮期</b>
</td>
<td>266</td>
<td />
</tr>
<tr>
<td>
<b>键盘分割</b>
</td>
<td>267</td>
<td />
</tr>
<tr>
<td>
<b>键盘乘法</b>
</td>
<td>268</td>
<td />
</tr>
<tr>
<td>
<b>键盘减号</b>
</td>
<td>269</td>
<td />
</tr>
<tr>
<td>
<b>键盘加</b>
</td>
<td>270</td>
<td />
</tr>
<tr>
<td>
<b>键盘输入</b>
</td>
<td>271</td>
<td />
</tr>
<tr>
<td>
<b>键盘等于</b>
</td>
<td>272</td>
<td />
</tr>
<tr>
<td>
<b>Up</b>
</td>
<td>273</td>
<td />
</tr>
<tr>
<td>
<b>向下</b>
</td>
<td>274</td>
<td />
</tr>
<tr>
<td>
<b>右侧</b>
</td>
<td>275</td>
<td />
</tr>
<tr>
<td>
<b>左</b>
</td>
<td>276</td>
<td />
</tr>
<tr>
<td>
<b>插入</b>
</td>
<td>277</td>
<td />
</tr>
<tr>
<td>
<b>首页</b>
</td>
<td>278</td>
<td />
</tr>
<tr>
<td>
<b>结束</b>
</td>
<td>279</td>
<td />
</tr>
<tr>
<td>
<b>向上页</b>
</td>
<td>280</td>
<td />
</tr>
<tr>
<td>
<b>向下页面</b>
</td>
<td>281</td>
<td />
</tr>
<tr>
<td>
<b>左Shift</b>
</td>
<td>304</td>
<td />
</tr>
<tr>
<td>
<b>右移</b>
</td>
<td>303</td>
<td />
</tr>
<tr>
<td>
<b>左元</b>
</td>
<td>310</td>
<td />
</tr>
<tr>
<td>
<b>右元素</b>
</td>
<td>309</td>
<td />
</tr>
<tr>
<td>
<b>左Alt</b>
</td>
<td>308</td>
<td />
</tr>
<tr>
<td>
<b>RightAlt</b>
</td>
<td>307</td>
<td />
</tr>
<tr>
<td>
<b>左控制</b>
</td>
<td>306</td>
<td />
</tr>
<tr>
<td>
<b>右控制</b>
</td>
<td>305</td>
<td />
</tr>
<tr>
<td>
<b>锁定键</b>
</td>
<td>301</td>
<td />
</tr>
<tr>
<td>
<b>数字锁</b>
</td>
<td>300</td>
<td />
</tr>
<tr>
<td>
<b>滚动锁</b>
</td>
<td>302</td>
<td />
</tr>
<tr>
<td>
<b>左超</b>
</td>
<td>311</td>
<td />
</tr>
<tr>
<td>
<b>右超级</b>
</td>
<td>312</td>
<td />
</tr>
<tr>
<td>
<b>模式</b>
</td>
<td>313</td>
<td />
</tr>
<tr>
<td>
<b>组合</b>
</td>
<td>314</td>
<td />
</tr>
<tr>
<td>
<b>帮助</b>
</td>
<td>315</td>
<td />
</tr>
<tr>
<td>
<b>打印</b>
</td>
<td>316</td>
<td />
</tr>
<tr>
<td>
<b>SysReq</b>
</td>
<td>317</td>
<td />
</tr>
<tr>
<td>
<b>打破</b>
</td>
<td>318</td>
<td />
</tr>
<tr>
<td>
<b>菜单</b>
</td>
<td>319</td>
<td />
</tr>
<tr>
<td>
<b>电力</b>
</td>
<td>320</td>
<td />
</tr>
<tr>
<td>
<b>欧元</b>
</td>
<td>321</td>
<td />
</tr>
<tr>
<td>
<b>撤销</b>
</td>
<td>322</td>
<td />
</tr>
<tr>
<td>
<b>F1</b>
</td>
<td>282</td>
<td />
</tr>
<tr>
<td>
<b>F2</b>
</td>
<td>283</td>
<td />
</tr>
<tr>
<td>
<b>F3</b>
</td>
<td>284</td>
<td />
</tr>
<tr>
<td>
<b>F4</b>
</td>
<td>285</td>
<td />
</tr>
<tr>
<td>
<b>F5</b>
</td>
<td>286</td>
<td />
</tr>
<tr>
<td>
<b>F6</b>
</td>
<td>287</td>
<td />
</tr>
<tr>
<td>
<b>F7</b>
</td>
<td>288</td>
<td />
</tr>
<tr>
<td>
<b>F8</b>
</td>
<td>289</td>
<td />
</tr>
<tr>
<td>
<b>F9</b>
</td>
<td>290</td>
<td />
</tr>
<tr>
<td>
<b>F10</b>
</td>
<td>291</td>
<td />
</tr>
<tr>
<td>
<b>F11</b>
</td>
<td>292</td>
<td />
</tr>
<tr>
<td>
<b>F12</b>
</td>
<td>293</td>
<td />
</tr>
<tr>
<td>
<b>F13</b>
</td>
<td>294</td>
<td />
</tr>
<tr>
<td>
<b>F14</b>
</td>
<td>295</td>
<td />
</tr>
<tr>
<td>
<b>F15</b>
</td>
<td>296</td>
<td />
</tr>
<tr>
<td>
<b>世界0</b>
</td>
<td>160</td>
<td />
</tr>
<tr>
<td>
<b>世界1</b>
</td>
<td>161</td>
<td />
</tr>
<tr>
<td>
<b>世界2</b>
</td>
<td>162</td>
<td />
</tr>
<tr>
<td>
<b>世界3</b>
</td>
<td>163</td>
<td />
</tr>
<tr>
<td>
<b>世界4</b>
</td>
<td>164</td>
<td />
</tr>
<tr>
<td>
<b>世界5</b>
</td>
<td>165</td>
<td />
</tr>
<tr>
<td>
<b>世界6</b>
</td>
<td>166</td>
<td />
</tr>
<tr>
<td>
<b>世界7</b>
</td>
<td>167</td>
<td />
</tr>
<tr>
<td>
<b>世界8</b>
</td>
<td>168</td>
<td />
</tr>
<tr>
<td>
<b>世界9</b>
</td>
<td>169</td>
<td />
</tr>
<tr>
<td>
<b>世界10</b>
</td>
<td>170</td>
<td />
</tr>
<tr>
<td>
<b>世界11</b>
</td>
<td>171</td>
<td />
</tr>
<tr>
<td>
<b>世界12</b>
</td>
<td>172</td>
<td />
</tr>
<tr>
<td>
<b>世界13</b>
</td>
<td>173</td>
<td />
</tr>
<tr>
<td>
<b>世界14</b>
</td>
<td>174</td>
<td />
</tr>
<tr>
<td>
<b>世界15</b>
</td>
<td>175</td>
<td />
</tr>
<tr>
<td>
<b>世界16</b>
</td>
<td>176</td>
<td />
</tr>
<tr>
<td>
<b>世界17</b>
</td>
<td>177</td>
<td />
</tr>
<tr>
<td>
<b>世界18</b>
</td>
<td>178</td>
<td />
</tr>
<tr>
<td>
<b>世界19</b>
</td>
<td>179</td>
<td />
</tr>
<tr>
<td>
<b>世界20</b>
</td>
<td>180</td>
<td />
</tr>
<tr>
<td>
<b>世界21</b>
</td>
<td>181</td>
<td />
</tr>
<tr>
<td>
<b>世界22</b>
</td>
<td>182</td>
<td />
</tr>
<tr>
<td>
<b>世界23</b>
</td>
<td>183</td>
<td />
</tr>
<tr>
<td>
<b>世界24</b>
</td>
<td>184</td>
<td />
</tr>
<tr>
<td>
<b>世界25</b>
</td>
<td>185</td>
<td />
</tr>
<tr>
<td>
<b>世界26</b>
</td>
<td>186</td>
<td />
</tr>
<tr>
<td>
<b>世界27</b>
</td>
<td>187</td>
<td />
</tr>
<tr>
<td>
<b>世界28</b>
</td>
<td>188</td>
<td />
</tr>
<tr>
<td>
<b>世界29</b>
</td>
<td>189</td>
<td />
</tr>
<tr>
<td>
<b>世界30</b>
</td>
<td>190</td>
<td />
</tr>
<tr>
<td>
<b>世界31</b>
</td>
<td>191</td>
<td />
</tr>
<tr>
<td>
<b>World32</b>
</td>
<td>192</td>
<td />
</tr>
<tr>
<td>
<b>世界33</b>
</td>
<td>193</td>
<td />
</tr>
<tr>
<td>
<b>世界34</b>
</td>
<td>194</td>
<td />
</tr>
<tr>
<td>
<b>世界35</b>
</td>
<td>195</td>
<td />
</tr>
<tr>
<td>
<b>世界36</b>
</td>
<td>196</td>
<td />
</tr>
<tr>
<td>
<b>世界37</b>
</td>
<td>197</td>
<td />
</tr>
<tr>
<td>
<b>世界38</b>
</td>
<td>198</td>
<td />
</tr>
<tr>
<td>
<b>世界39</b>
</td>
<td>199</td>
<td />
</tr>
<tr>
<td>
<b>世界40</b>
</td>
<td>200</td>
<td />
</tr>
<tr>
<td>
<b>世界41</b>
</td>
<td>201</td>
<td />
</tr>
<tr>
<td>
<b>世界42</b>
</td>
<td>202</td>
<td />
</tr>
<tr>
<td>
<b>世界43</b>
</td>
<td>203</td>
<td />
</tr>
<tr>
<td>
<b>世界44</b>
</td>
<td>204</td>
<td />
</tr>
<tr>
<td>
<b>世界45</b>
</td>
<td>205</td>
<td />
</tr>
<tr>
<td>
<b>世界46</b>
</td>
<td>206</td>
<td />
</tr>
<tr>
<td>
<b>世界47</b>
</td>
<td>207</td>
<td />
</tr>
<tr>
<td>
<b>世界48</b>
</td>
<td>208</td>
<td />
</tr>
<tr>
<td>
<b>世界49</b>
</td>
<td>209</td>
<td />
</tr>
<tr>
<td>
<b>世界50</b>
</td>
<td>210</td>
<td />
</tr>
<tr>
<td>
<b>World51</b>
</td>
<td>211</td>
<td />
</tr>
<tr>
<td>
<b>世界52</b>
</td>
<td>212</td>
<td />
</tr>
<tr>
<td>
<b>World53</b>
</td>
<td>213</td>
<td />
</tr>
<tr>
<td>
<b>世界54</b>
</td>
<td>214</td>
<td />
</tr>
<tr>
<td>
<b>World55</b>
</td>
<td>215</td>
<td />
</tr>
<tr>
<td>
<b>World56</b>
</td>
<td>216</td>
<td />
</tr>
<tr>
<td>
<b>World57</b>
</td>
<td>217</td>
<td />
</tr>
<tr>
<td>
<b>World58</b>
</td>
<td>218</td>
<td />
</tr>
<tr>
<td>
<b>世界59</b>
</td>
<td>219</td>
<td />
</tr>
<tr>
<td>
<b>World60</b>
</td>
<td>220</td>
<td />
</tr>
<tr>
<td>
<b>World61</b>
</td>
<td>221</td>
<td />
</tr>
<tr>
<td>
<b>World62</b>
</td>
<td>222</td>
<td />
</tr>
<tr>
<td>
<b>World63</b>
</td>
<td>223</td>
<td />
</tr>
<tr>
<td>
<b>World64</b>
</td>
<td>224</td>
<td />
</tr>
<tr>
<td>
<b>World65</b>
</td>
<td>225</td>
<td />
</tr>
<tr>
<td>
<b>World66</b>
</td>
<td>226</td>
<td />
</tr>
<tr>
<td>
<b>World67</b>
</td>
<td>227</td>
<td />
</tr>
<tr>
<td>
<b>World68</b>
</td>
<td>228</td>
<td />
</tr>
<tr>
<td>
<b>World69</b>
</td>
<td>229</td>
<td />
</tr>
<tr>
<td>
<b>World70</b>
</td>
<td>230</td>
<td />
</tr>
<tr>
<td>
<b>World71</b>
</td>
<td>231</td>
<td />
</tr>
<tr>
<td>
<b>World72</b>
</td>
<td>232</td>
<td />
</tr>
<tr>
<td>
<b>World73</b>
</td>
<td>233</td>
<td />
</tr>
<tr>
<td>
<b>World74</b>
</td>
<td>234</td>
<td />
</tr>
<tr>
<td>
<b>World75</b>
</td>
<td>235</td>
<td />
</tr>
<tr>
<td>
<b>World76</b>
</td>
<td>236</td>
<td />
</tr>
<tr>
<td>
<b>World77</b>
</td>
<td>237</td>
<td />
</tr>
<tr>
<td>
<b>World78</b>
</td>
<td>238</td>
<td />
</tr>
<tr>
<td>
<b>World79</b>
</td>
<td>239</td>
<td />
</tr>
<tr>
<td>
<b>World80</b>
</td>
<td>240</td>
<td />
</tr>
<tr>
<td>
<b>World81</b>
</td>
<td>241</td>
<td />
</tr>
<tr>
<td>
<b>World82</b>
</td>
<td>242</td>
<td />
</tr>
<tr>
<td>
<b>World83</b>
</td>
<td>243</td>
<td />
</tr>
<tr>
<td>
<b>World84</b>
</td>
<td>244</td>
<td />
</tr>
<tr>
<td>
<b>World85</b>
</td>
<td>245</td>
<td />
</tr>
<tr>
<td>
<b>World86</b>
</td>
<td>246</td>
<td />
</tr>
<tr>
<td>
<b>World87</b>
</td>
<td>247</td>
<td />
</tr>
<tr>
<td>
<b>World88</b>
</td>
<td>248</td>
<td />
</tr>
<tr>
<td>
<b>World89</b>
</td>
<td>249</td>
<td />
</tr>
<tr>
<td>
<b>世界90</b>
</td>
<td>250</td>
<td />
</tr>
<tr>
<td>
<b>World91</b>
</td>
<td>251</td>
<td />
</tr>
<tr>
<td>
<b>世界92</b>
</td>
<td>252</td>
<td />
</tr>
<tr>
<td>
<b>世界93</b>
</td>
<td>253</td>
<td />
</tr>
<tr>
<td>
<b>世界94</b>
</td>
<td>254</td>
<td />
</tr>
<tr>
<td>
<b>世界95</b>
</td>
<td>255</td>
<td />
</tr>
<tr>
<td>
<b>按钮X</b>
</td>
<td>1000</td>
<td />
</tr>
<tr>
<td>
<b>按钮Y</b>
</td>
<td>1001</td>
<td />
</tr>
<tr>
<td>
<b>按钮A</b>
</td>
<td>1002</td>
<td />
</tr>
<tr>
<td>
<b>按钮B</b>
</td>
<td>1003</td>
<td />
</tr>
<tr>
<td>
<b>按钮R1</b>
</td>
<td>1004</td>
<td />
</tr>
<tr>
<td>
<b>按钮L1</b>
</td>
<td>1005</td>
<td />
</tr>
<tr>
<td>
<b>按钮R2</b>
</td>
<td>1006</td>
<td />
</tr>
<tr>
<td>
<b>按钮L2</b>
</td>
<td>1007</td>
<td />
</tr>
<tr>
<td>
<b>按钮R3</b>
</td>
<td>1008</td>
<td />
</tr>
<tr>
<td>
<b>按钮L3</b>
</td>
<td>1009</td>
<td />
</tr>
<tr>
<td>
<b>按钮开始</b>
</td>
<td>1010</td>
<td />
</tr>
<tr>
<td>
<b>按钮选择</b>
</td>
<td>1011</td>
<td />
</tr>
<tr>
<td>
<b>DPad左</b>
</td>
<td>1012</td>
<td />
</tr>
<tr>
<td>
<b>DPadRight</b>
</td>
<td>1013</td>
<td />
</tr>
<tr>
<td>
<b>DPadUp</b>
</td>
<td>1014</td>
<td />
</tr>
<tr>
<td>
<b>DPad向下</b>
</td>
<td>1015</td>
<td />
</tr>
<tr>
<td>
<b>拇指棒1</b>
</td>
<td>1016</td>
<td />
</tr>
<tr>
<td>
<b>拇指棒2</b>
</td>
<td>1017</td>
</tr>
名称

还见:

代码示例

这个例子获取一个列表的导航游戏板和一个列表支持的Enum.KeyCodes。然后,它循环通过支持的 KeyCode 列表并将 ButtonXX 键绑定到函数,如果使用游戏手柄 ContextActionService

绑定支持游戏手柄键盘命令

local UserInputService = game:GetService("UserInputService")
local ContextActionService = game:GetService("ContextActionService")
local function actionHandler(actionName, inputState, inputObject)
if inputState == Enum.UserInputState.Begin then
print("Action Handler: " .. actionName)
print(inputObject)
end
-- 由于此函数不返回任何内容,这个处理器将
-- “洗手台”输入,其他任何操作处理器不会在之后调用
-- 这个。
end
local navGamepads = UserInputService:GetNavigationGamepads()
for _, gamepad in pairs(navGamepads) do
local supportedKeyCodes = UserInputService:GetSupportedGamepadKeyCodes(gamepad)
for _, keycode in pairs(supportedKeyCodes) do
if keycode == Enum.KeyCode.ButtonX then
ContextActionService:BindAction("SampleAction", actionHandler, false, Enum.KeyCode.ButtonX)
end
if keycode == Enum.KeyCode.X then
ContextActionService:BindAction("SampleAction", actionHandler, false, Enum.KeyCode.X)
end
end
end

Position

读取并联

该属性描述了这个输入的 Vector3 位置值。

对于鼠标和触摸输入,这是鼠标/触摸的屏幕位置,描述在 X 和 Y 组件中。应用于 GUI 元素的插入(例如来自顶部栏)在位置中被计算。

对于鼠标轮输入,Z组件描述轮子是否向前移动(1)、向后移动(-1)或不移动(0)。

对于 Enum.KeyCode 输入,这表示玩家的 Mouse 位置。

请注意,一个对应于 (左键点击) 和 (右键点击) 从回调中提供的 (左键点击) 和 (右键点按) 在创建后不会更新,除了鼠标输入结束时。为了获取鼠标输入的更新位置,您必须使用 InputObjectInputChanged 回调中引用,或调用 GetMouseLocation() 。然而,任何与触摸输入相对应的 InputObjects 将在其生命周期内每一帧更新其差异和位置。

还见于

UserInputState

读取并联

用户输入状态 描述在 UserInputType 后进行的输入状态,根据特定流程进行。它使用相同名称的枚数,Enum.UserInputState。查看枚举页以获取此属性的所有可用值列表。

还见:

代码示例

这个例子获取一个列表的导航游戏板和一个列表支持的Enum.KeyCodes。然后,它循环通过支持的 KeyCode 列表并将 ButtonXX 键绑定到函数,如果使用游戏手柄 ContextActionService

绑定支持游戏手柄键盘命令

local UserInputService = game:GetService("UserInputService")
local ContextActionService = game:GetService("ContextActionService")
local function actionHandler(actionName, inputState, inputObject)
if inputState == Enum.UserInputState.Begin then
print("Action Handler: " .. actionName)
print(inputObject)
end
-- 由于此函数不返回任何内容,这个处理器将
-- “洗手台”输入,其他任何操作处理器不会在之后调用
-- 这个。
end
local navGamepads = UserInputService:GetNavigationGamepads()
for _, gamepad in pairs(navGamepads) do
local supportedKeyCodes = UserInputService:GetSupportedGamepadKeyCodes(gamepad)
for _, keycode in pairs(supportedKeyCodes) do
if keycode == Enum.KeyCode.ButtonX then
ContextActionService:BindAction("SampleAction", actionHandler, false, Enum.KeyCode.ButtonX)
end
if keycode == Enum.KeyCode.X then
ContextActionService:BindAction("SampleAction", actionHandler, false, Enum.KeyCode.X)
end
end
end

UserInputType

读取并联

用户输入类型 是描述这个 InputObject 代表何种输入的属性,例如鼠标、键盘、触摸或游戏手柄输入。它使用相同名称的枚数,Enum.UserInputType。查看枚举页以获取此属性的所有可用值列表。

还见:

方法

IsModifierKeyDown

参数

modifierKey: Enum.ModifierKey
默认值:""

返回

活动