Roblox 脚本未检测到值

问题描述 投票:0回答:2

我尝试制作一个在速度为100时播放声音的脚本,但它没有做任何事情。脚本:

local speed = script.Parent.Speed


wait(3)
if speed.Value == 100 then
    print('test')
    workspace.Sound:Play()
end
lua scripting roblox
2个回答
3
投票

你的代码是说,嘿,找到这个 IntValue,3 秒后,如果该值是 100,就做一件事......就是这样。一旦到达脚本末尾,就完成了。

如果您想监听更改并对这些更改做出反应,您需要将事件侦听器添加到 IntValue 对象本身公开的信号中。 Roblox 提供了 Changed 信号,每次对象发生变化时都会触发该信号。

local speed = script.Parent.Speed
speed.Changed:Connect(function(newValue)
    print("speed is now ", newValue)
    if speed.Value == 100 then
        print("speed is at 100!")
        workspace.Sound:Play()
    end
end)

0
投票

厕所爸爸你是超级西格玛吗?如果不是你的专业人士。不管怎样,你是在准确的时刻读取它,所以除非你有其他代码在 3 秒后读取它,否则它会通过并且不会被检测到!

© www.soinside.com 2019 - 2024. All rights reserved.