如何解决如何使工作区中的点击检测器在 StarterGui 中启用脚本? 罗布洛克工作室
我是脚本新手,我刚刚开始,所以请非常具体地回答。我有一个模型(名为 SpawnBox),里面有一个点击检测器(名为 ClickDetector)。我在 StarterGui 中也有一个 Gui(名为 Gui)。该 gui 内部有一个框架(名为 Frame),其中当前有一个 LocalScript(称为 LocalScript)。这个 LocalScript 现在被禁用了,那么我如何使用我之前提到的点击检测器启用脚本?提前致谢。
解决方法
您可以创建一个普通脚本作为点击检测器的子项,并在其中执行以下操作:
-将点击检测器引用为 script.Parent
- 创建一个 .MouseClick
函数,该函数是用于启用 LocalScript 的代码
.MouseClick
函数构成:<Click Detector>.MouseClick:Connect(function(player) end)
<Click Detector>.MouseClick
函数带有一个参数,它是点击按钮的玩家(在 game.Players
中)。现在您需要引用玩家的 PlayerGui
,因为这是每个玩家 Gui 的存放位置,也是唯一可以更改它们及其属性的地方。由于参数引用了 game.Players
中的播放器,因此您只需执行 <player>.PlayerGui
即可获得 PlayerGui
。 (如果您运行游戏并单击浏览器选项卡中 Players
旁边的箭头,则会弹出玩家列表或您自己的列表。然后单击玩家旁边的箭头,您将看到 {{ 1}}。如果再进一步,您将看到名为 PlayerGui
的 ScreenGui,如果再次单击,您将看到名为 Gui
的框架)。此框架内是我们将启用的 LocalScript。
Frame
是脚本的布尔值(Disabled
或 true
)值属性。为了引用 Lua 中的属性,我们使用句点 false
。获得脚本后,我们可以执行 .
来启用它。您的代码结构应如下所示:
<LocalScript>.Disabled = false
Define your Click Detector
Open a .MouseClick function with a parameter for the player who clicked
Get LocalScript by doing: local script = <player>.PlayerGui.Gui.Frame.LocalScript
Enable the script by doing: script.Disabled = false
额外帮助链接:
https://developer.roblox.com/en-us/api-reference/class/ClickDetector
https://developer.roblox.com/en-us/api-reference/class/PlayerGui
已编辑:
这里应该是资源管理器中脚本的层次结构:
点击检测器
└ 脚本
现在你的代码看起来像这样:
end the .MouseClick function
如果您在对象引用方面需要帮助,我建议您观看 AlvinBlox 的此视频:
https://www.youtube.com/watch?v=_K7stCkqFBY
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。