Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
2

Can't compare userdata to a number?

Asked by 4 years ago

So im trying to make a test script to campare some value, but when i run it, it throw some error: attempt to compare userdata with number

  • Script:
local intValue = script.Parent.IntValue

local restValue = 0
local currentKey = 5
local table = workspace.Folder:GetChildren()

restValue = #table - currentKey

if restValue  > 5 and intValue < restValue then
    currentKey = currentKey+ intValue.Value
elseif restValue <= 5 and intValue >= restValue then
    currentKey= 1
end

I don't really know the error mean and what Im doing wrong.

Thank for you guys help!

1 answer

Log in to vote
3
Answered by
Psudar 882 Moderation Voter
4 years ago
Edited 4 years ago

Oh, you messed up at line 10.

The UserData value is the intValue, but you forgot to do intValue.Value, so you're basically trying to compare the object itself, the userdata, with the restValue, a number.

local intValue = script.Parent.IntValue

local restValue = 0
local currentKey = 5
local table = workspace.Folder:GetChildren()

restValue = #table - currentKey

if restValue  > 5 and intValue < restValue then
    currentKey = currentKey+ intValue.Value
elseif restValue <= 5 and intValue.Value >= restValue then --here
    currentKey= 1
end
Ad

Answer this question