Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Remote event only firing once per server for everyone in the game?

Asked by 4 years ago

Not sure why, but my remote event, in replicated storage, will only fire once. This is happening for all the remote events in this game, if anyone fires it once, no one can use it anymore. The normal script is kinda long, because its for my game.

Normal script:

local remote = game.ReplicatedStorage.JoinEvent
local remote2 = game.ReplicatedStorage.ShowEvent
local remote3 = game.ReplicatedStorage.LeaveEvent
remote.OnServerEvent:Connect(function(player)
    player.PlayerGui:WaitForChild("LobbyGui")

    for i, v in pairs(game.Players:GetPlayers()) do
        local frame = v.PlayerGui.LobbyGui.Frame
    print ("Worked")
    if frame.Players.Script.Players.Value < frame.Players.Script.MaxPlayers.Value then
        if frame.Player2.Text == "" then
            frame.Player2.Text = player.Name
            frame.Player2.Player2.Value = player.Name
            frame.Players.Script.Players.Value = frame.Players.Script.Players.Value + 1
            local strin = Instance.new("BoolValue")
            strin.Name = frame.Player1.Script.Player1.Value
            strin.Parent = v
            remote2:FireAllClients()

            elseif frame.Player3.Text == "" then
                frame.Player3.Text = player.Name
                frame.Player3.Player3.Value = player.Name
                frame.Players.Script.Players.Value = frame.Players.Script.Players.Value + 1
                local strin = Instance.new("BoolValue")
                strin.Name = frame.Player1.Script.Player1.Value
                strin.Parent = v
                remote2:FireAllClients()
        else
            frame.Player4.Text = player.Name
            frame.Player4.Player4.Value = player.Name
            frame.Players.Script.Players.Value = frame.Players.Script.Players.Value + 1
            local strin = Instance.new("BoolValue")
            strin.Name = frame.Player1.Script.Player1.Value
            strin.Parent = v
            remote2:FireAllClients()
        end
        end
        end
end)

Local script:

local remote = game.ReplicatedStorage.JoinEvent
local remote2 = game.ReplicatedStorage.ShowEvent

script.Parent.MouseButton1Click:Connect(function()
    if game.Players.LocalPlayer:FindFirstChildOfClass("BoolValue") then

    else
        remote:FireServer()
        wait()
        game.Players.LocalPlayer.PlayerGui.CreateGui.Enabled = false
    game.Players.LocalPlayer.PlayerGui.LobbysGui.Enabled = false
    game.Players.LocalPlayer.PlayerGui.ActiveLobbys.Enabled = false
    game.Players.LocalPlayer.PlayerGui.LobbyGui.Enabled = true
    end
end)

Answer this question