Roblox Studio 我的脚本只能运行一次

Roblox Studio My script only works one time

我做了一个枪店网站。当我第一次尝试购买枪支时它有效,但是当我从我的库存中删除枪支并再次尝试时它不会起作用。

请帮忙。

local ServerStorage = game:GetService("ServerStorage")

local Vendedor = script.Parent
local ClickDetector = game.Workspace.Lojadearmas.Vendedor.ClickDetector

local Glock = ServerStorage:WaitForChild("G17"):Clone()

ClickDetector.MouseClick:Connect(function(player)
    print(player.name)
    local Player = player
    local Gui = player.PlayerGui.LojaArmas
    Gui.Frame.Visible = true
    Gui.Frame2.Visible = true
    Gui.Glock.Visible = true
    Gui.Fechar.Visible = true
    Gui.Loja.Visible = true
    
    Gui.Fechar.MouseButton1Click:Connect(function()
        Gui.Frame.Visible = false
        Gui.Frame2.Visible = false
        Gui.Glock.Visible = false
        Gui.Fechar.Visible = false
        Gui.Loja.Visible = false
        print(Player)
    end)
    
    Gui.Glock.MouseButton1Click:Connect(function()
        if Player.leaderstats.Reais.Value >= 1000 then
        Glock.Parent = Player.Backpack
        print(Player.leaderstats.Reais.Value)
        Player.leaderstats.Reais.Value = Player.leaderstats.Reais.Value - 1000
        end 
    end)
end)

这是因为您在引用变量 Glock 时克隆了它一次。试试这个:

local ServerStorage = game:GetService("ServerStorage")

local Vendedor = script.Parent
local ClickDetector = game.Workspace.Lojadearmas.Vendedor.ClickDetector

local Glock = ServerStorage:WaitForChild("G17")

ClickDetector.MouseClick:Connect(function(player)
    print(player.name)
    local Player = player
    local Gui = player.PlayerGui.LojaArmas
    Gui.Frame.Visible = true
    Gui.Frame2.Visible = true
    Gui.Glock.Visible = true
    Gui.Fechar.Visible = true
    Gui.Loja.Visible = true
    
    Gui.Fechar.MouseButton1Click:Connect(function()
        Gui.Frame.Visible = false
        Gui.Frame2.Visible = false
        Gui.Glock.Visible = false
        Gui.Fechar.Visible = false
        Gui.Loja.Visible = false
        print(Player)
    end)
    
    Gui.Glock.MouseButton1Click:Connect(function()
        if Player.leaderstats.Reais.Value >= 1000 then
        Glock:Clone().Parent = Player.Backpack
        print(Player.leaderstats.Reais.Value)
        Player.leaderstats.Reais.Value = Player.leaderstats.Reais.Value - 1000
        end 
    end)
end)

如果您需要任何进一步的帮助,请告诉我。