【问题标题】:My number value isn't updating, how do I fix it?我的数值没有更新,我该如何解决?
【发布时间】:2021-09-04 14:17:38
【问题描述】:

所以我试图让循环每秒更改数值的值,但它会不断返回nil0。我尝试将其添加为影响实际值的本地值以及其他一些事情,例如将其改为字符串并用新字符串替换字符串,但仍然没有返回任何内容。这是我现在的代码,它是返回 0 而不是 nil 或错误的代码。

local SecondsAfterGameStart = game.ServerStorage.SecondsAfterGameStart.Value

while true do
    wait(0.1)
    SecondsAfterGameStart = SecondsAfterGameStart + 1
end

【问题讨论】:

标签: lua roblox


【解决方案1】:

当您将SecondsAfterGameStart.Value 保存到局部变量中时,您不会保留对原始 NumberValue 对象的引用,而是将其值复制到局部变量中。稍后在您的 while 循环中,您将访问和修改一个变量而不是原始对象,因此永远不会将更改保存回 ServerStorage 中的对象。

因此,与其保存值,不如保留整个 NumberValue 本身。然后就可以直接更新Value了。

local SecondsAfterGameStart = game.ServerStorage.SecondsAfterGameStart

while true do
    wait(0.1)
    SecondsAfterGameStart.Value = SecondsAfterGameStart.Value + 1
end

【讨论】:

  • 谢谢,我试试看!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-19
  • 2019-04-19
  • 2021-03-26
  • 2013-09-26
  • 2021-03-22
  • 2023-01-03
  • 2021-03-12
相关资源
最近更新 更多