Still have questions? Join our Discord server and get real time help.
1

# Game not reading IntValue Correctly?

Edited 8 months ago

Hello! I've been struggling with a bigger problem inside of my game for a bit now, and I finally found the problem. However, I'm not sure how to fix it.

When a player joins, a folder is created inside them (in addition to leaderstats, they are siblings) and there is an intvalue inside of that. Every time I print the value, it returns 0 no matter what.

It is inside of a for loop, so Players[i] is the local player

local Players = game.Players:GetChildren()
for i =1, #Players do
local Spent = Players[i].folder.spent.Value
print("Spent "..Spent)
end


This ALWAYS returns "Spent 0", and never returns an error

This is the code that changes it, it is in a textbutton in a localscript:

script.Parent.MouseButton1Click:Connect(function()
local player = game.Players.LocalPlayer
player.spent.Value = player.spent.Value + 5
end
end)


0
The IntValue is being changed, right? xAtom_ik 575 — 8mo
0
Yes, I tried doing it within my script and I tried changing the value in the explorer but neither worked XDgirl909090 150 — 8mo
0
Could we get the full code of your loop and when you set it? xAtom_ik 575 — 8mo

0
Gingerely 245
8 months ago

Hi! I know the answer. The variable spent is a constant. To fix this, all you have to do it delete the value in "local spent".

local Spent = Players[i].folder.spent
print("Spent "..Spent.Value)


Because when you just do local Spent = Players[i].folder.spent.Value , that is a constant that will never change.

0
Thanks! XDgirl909090 150 — 8mo
0
np :) Gingerely 245 — 8mo