You should instead set the value back to 135 when you detected the value is 0, so instead
game.Players.PlayerAdded:Connect(function(plr)
local value = plr:WaitForChild("Value")
value.Changed:Connect(function(x)
if x <= 0 and plr.Character then
plr.Character:BreakJoints()
value.Value = 135
end
end)
end)
or something along those lines, since you never know which happens first if you were to do it separately