this was solved in the scriptinghelpers discord
I'm making a spawn that will update the player's "Stage" stat, but it does nothing.
I even tried using prints to check was was going on, and both outputted 1, which meant the stat was changed to 1, and the stage number was 1, but the leaderboard stat value never changed.
--Server Script--
wait(0.1)
local function setSpawn(partTouching)
if game.Players:GetPlayerFromCharacter(partTouching.Parent) then --Check if is a player
local player = game.Players:GetPlayerFromCharacter(partTouching.Parent)
local character = player.Character
local stageNum = script.Parent.StageNum.Value
local stage = player.leaderstats.Stage.Value
print(stageNum)
if stage < stageNum and player.Character.Humanoid.Health ~= 0.001 then
stage = stage + 1
print(stage)
player.RespawnLocation = script.Parent
else
character.HumanoidRootPart.Position = script.Parent.Destination.Position
end
end
end
script.Parent.Touched:Connect(setSpawn)
--Output--
1 --(print(stageNum), which is intended)
1 --(It says 1 here, but the stat never changed, I even checked the intValue itself and it never changed.)
Is there any reason why this is happening?
