尝试使用“findFirstChild”访问空值错误

local debounce = true
local infinite = 2

local cooldownOption = script:FindFirstChild("EnableCooldown")
local cooldownTime = cooldownOption:FindFirstChild("CooldownTime")

-- 冷却

如果 debounce 为 true 且 cooldownOption 存在则
    重复执行
        debounce = false
        game.ReplicatedStorage.AttemptConvertCash:FireServer("Convert Cash")
        infinite = infinite + 1
        wait(cooldownTime.Value)
    直到 infinite == 1

-- 无冷却

否则如果 cooldownOption 不存在则
    重复执行
        game.ReplicatedStorage.AttemptConvertCash:FireServer("Convert Cash")
        infinite = infinite + 1
    直到 infinite == 1

-- 其他情况

否则如果 cooldownTime 为 nil 或 0,则报错“Cooldown Time is equal \"nil\"”

这是我的代码,我不知道如何修复它,我尝试了所有方法。(我是新开发者) 请帮帮我。 如果您需要更多细节,请问我。

如果您能帮我,感谢您: D 那将是非常好的:D

点赞
用户13025946
用户13025946

根据看起来的情况,你正在缺失值。我已经在下面的代码中添加了修复代码。

local debounce = true
local infinite = 2
local cooldownOption = Instance.new("BoolValue")
cooldownOption.Parent = script
cooldownOption.Name = "EnableCooldown"
local cooldownTime = Instance.new("NumberValue")
cooldownTime.Parent = script
cooldownTime.Name = "CooldownTime"

--值

cooldownOption.Value = false
cooldownTime.Value = 0.5

--冷却

if debounce == true and cooldownOption == true then
    repeat
        debounce = false
        game.ReplicatedStorage.AttemptConvertCash:FireServer("Convert Cash")
        infinite = infinite + 1
        wait(cooldownTime.Value)
    until infinite == 1
    --无冷却
elseif cooldownOption == false then
    repeat
        game.ReplicatedStorage.AttemptConvertCash:FireServer("Convert Cash")
        infinite = infinite + 1
    until infinite == 1
elseif cooldownTime == nil or cooldownTime == 0 then
    error("Cooldown Time is equal \"nil\"")
end

如果有问题请告诉我。

2020-07-17 23:20:54