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
01 | local intValue = script.Parent.IntValue |
02 |
03 | local restValue = 0 |
04 | local currentKey = 5 |
05 | local table = workspace.Folder:GetChildren() |
06 |
07 | restValue = #table - currentKey |
08 |
09 | if restValue > 5 and intValue < restValue then |
10 | currentKey = currentKey+ intValue.Value |
11 | elseif restValue < = 5 and intValue > = restValue then |
12 | currentKey = 1 |
13 | end |
I don't really know the error mean and what Im doing wrong.
Thank for you guys help!
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.
01 | local intValue = script.Parent.IntValue |
02 |
03 | local restValue = 0 |
04 | local currentKey = 5 |
05 | local table = workspace.Folder:GetChildren() |
06 |
07 | restValue = #table - currentKey |
08 |
09 | if restValue > 5 and intValue < restValue then |
10 | currentKey = currentKey+ intValue.Value |
11 | elseif restValue < = 5 and intValue.Value > = restValue then --here |
12 | currentKey = 1 |
13 | end |