我在roblox studio中制作了关卡系统,脚本似乎没问题,但是xp达到max后没有升​​级,而是继续升级,我该怎么办?

I made level system in roblox studio, script seems to be ok, but instead of leveling up after xp hits max, it just continues going, what should i do?

所以脚本应该可以正常工作,除了它在 exp 达到所需的数量后它不会升级,它只是继续运行,这是脚本:我为糟糕的英语道歉

local maxXp = 20
game.Players.PlayerAdded:Connect(function(player)
    local levelinfo = Instance.new("Folder")
    levelinfo.Name = "LevelsInfo"
    levelinfo.Parent = player
    
    local level = Instance.new("IntValue")
    level.Name = "Level"
    level.Value = 1
    level.Parent = levelinfo
    
    local exp = Instance.new("IntValue")
    exp.Name = "Experience"
    exp.Value = 5
    exp.Parent = levelinfo
    
    
    local xpNeeded = Instance.new("IntValue")
    xpNeeded.Name = "expNeeded"
    xpNeeded.Value = 20
    xpNeeded.Parent = levelinfo
    
    
    exp.Changed:Connect(function(newExp)
        if exp.Value >= xpNeeded.Value then
            level.Value += 1
            exp.Value -= xpNeeded.Value
            xpNeeded.Value = xpNeeded.Value + 2
        end
    end)    
end)

应该起作用的部分是:

    exp.Changed:Connect(function(newExp)
        if exp.Value >= xpNeeded.Value then
            level.Value += 1
            exp.Value -= xpNeeded.Value
            xpNeeded.Value = xpNeeded.Value + 2
        end
    end)    

我没有收到任何错误,似乎没有任何问题,有人可以告诉我该怎么做吗?

我测试了代码,它运行良好。在 ServerScriptService 中放置一个脚本(不是本地脚本),它将开始工作。

我解决了这个问题,问题原来是我从本地脚本增加我的 exp 而它没有复制到服务器,我解决了这个问题,现在一切正常