Bonjour à tous Je me demande pourquoi ce code me donne une erreur
Il est censé prendre un peu d'argent de tous les joueurs, puis ajouter 1 à une valeur int (étape) mettre à jour son coût et modifiez la valeur de la vitesse (SpawnDelay) alors quand il clique dessus encore, il sait à quel stade il est, mais pour une raison quelconque, cela ne fonctionne pas comme l'instruction if apparaît comme incorrect s'il vous plaît aider:Si Déclaration ne fonctionne pas dans RobloxLua
local stage = script.Parent.stage.Value
local text = script.Parent.Text
script.Parent.MouseButton1Click:connect(function()
if stage == 0 then
for i, v in pairs(game.Players:GetPlayers()) do
v.leaderstats.Cash.Value = v.leaderstats.Cash.Value - 100
workspace.RedTycoon.Factory.SpawnDelay.Value = 15
text = "Upgrade Speed (Cost = 200)"
stage = stage + 1
elseif stage == 1 then
for i, v in pairs(game.Players:GetPlayers()) do
v.leaderstats.Cash.Value = v.leaderstats.Cash.Value - 200
workspace.RedTycoon.Factory.SpawnDelay.Value = 10
text = "Upgrade Speed (Cost = 500)"
stage = stage + 1
end
elseif stage == 2 then
for i, v in pairs(game.Players:GetPlayers()) do
v.leaderstats.Cash.Value = v.leaderstats.Cash.Value - 500
workspace.RedTycoon.Factory.SpawnDelay.Value = 8
text = "Upgrade Speed (Cost = 1000)"
stage = stage + 1
end)
Je viens essayé ceci
local stage = script.Parent.stage.Value
local text = script.Parent.Text
local delaytime = workspace.RedTycoon.Factory.SpawnDelay.Value
text = "Upgrade Speed (Cost = 100)"
script.Parent.MouseButton1Click:connect(function()
if stage == 0 then
delaytime = 15
text = "Upgrade Speed (Cost = 500)"
stage = stage + 1
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 100
end
end
elseif stage == 1 then
delaytime = 10
text = "Upgrade Speed (Cost = 1000)"
stage = stage + 1
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 500
end
end
elseif stage == 2 then
delaytime = 10
text = "Upgrade Speed (Cost = 1500)"
stage = stage + 1
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 1000
end
end
elseif stage == 3 then
text = "Upgrade Speed (Cost = 2000)"
delaytime = 8
stage = stage + 1
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 1500
end
end
elseif stage == 4 then
delaytime = 4
text = "Upgrade Speed (Cost = 20000)"
stage = stage + 1
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 2000
end
end
elseif stage == 5 then
delaytime = 2
text = "No More Upgrades Avalible"
stage = stage + 1
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 20000
end
end
else
text = "Just for being annoying here you have 1 less cash:"
for _, player in ipairs(game.Players:GetPlayers()) do
if player:FindFirstChild("leaderstats") then
player.leaderstats.Cash.Value = player.leaderstats.Cash.Value - 1
end
end
wait(4)
text = "No More Upgrades Avalible"
end
end)
Ça n'a pas