【问题标题】:Why isn't this roblox dialog script working为什么这个 roblox 对话脚本不起作用
【发布时间】:2021-08-29 19:07:45
【问题描述】:

所以我希望游戏在选择对话框选项时执行特定操作。

script.Parent.DialogChoiceSelected:connect(function(player,choice)
    if choice.Name == "No" then
        player.Character.Humanoid.Health = 0
    elseif choice.Name == "Yes" then
        player.Character.Humanoid.Health = 1000
    end
end)

脚本已启用,它将其放在与选项相同的对话框中,并且我知道对话框名称是正确的,但是当对话选择被选中时绝对没有任何事情。所以有人请给我解释一下****是怎么回事

【问题讨论】:

    标签: lua roblox


    【解决方案1】:

    查看Dialog.DialogChoiceSelected 的文档,有这一行:

    此事件仅在客户端发生,不会在服务器上触发。它应该连接到 LocalScript 或 LocalScript 所需的 ModuleScript。

    因此,您需要在适当的位置之一使用LocalScript 来连接到此 Dialog 对象,然后您的代码应该可以正常工作。

    【讨论】:

      【解决方案2】:

      如果您将脚本放在对话框中,它不会工作,因为它是客户端,所以它必须是 LocalScript 并且必须是以下任一的后代:

      玩家的背包,例如工具的孩子 玩家角色模型 玩家的 PlayerGui 玩家的 PlayerScripts ReplicatedFirst 服务。

      然后将本地脚本的代码改为workspace:WaitForChild("TheDialogName")。

      https://developer.roblox.com/en-us/api-reference/class/LocalScript

      https://developer.roblox.com/en-us/api-reference/class/Dialog

      【讨论】:

        猜你喜欢
        • 2015-06-16
        • 2020-12-14
        • 2013-10-20
        • 2014-09-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-18
        • 2015-10-29
        相关资源
        最近更新 更多