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

FireClient Function not working properly?

Asked by 2 years ago

hi, I encounter a problem when trying to Firing a Client, the problem was The FireClient unexpectedly Fired all clients (tried print statement to test). What is the problem of my code?

-- Received LocalScript

-- Remove the leave matchmaking button if timer is running out (The button is deleted for all users once a user joined a match)
invis.OnClientEvent:Connect(function()
    print("I got Fired (DELETE_INSTANCE_SCRIPT)")
        script.Parent.Visible = false
end)

-- Processed ServerScript

timeout.OnServerEvent:Connect(function(p, t)
local reserveCode = ts:ReserveServer(GameId)
    print("Timeout.")
    if t == "ab220AEm" then
        -- Fire the client so the button will be removed
        re2:FireClient(p)
        -- Teleportation Processing
        local plrToTeleport = {}
        for k,v in pairs(rs.a:GetChildren()) do
            table.insert(plrToTeleport, game:GetService("Players"):FindFirstChild(v.Value))
        end
        ts:TeleportToPrivateServer(GameId, reserveCode, plrToTeleport)
        table.clear(plrToTeleport)
        rs.a:FindFirstChild(tostring(p).."_Joined"):Destroy()
        wait(5)
        -- normalize after the teleportation is processed
        normal:FireAllClients()
    else
        -- if invalid key given, the player will be kicked
        p:Kick("Caught in 4K for exploiting")
    end
end)

-- LocalScript Firing the Server

ev.OnClientEvent:Connect(function()
    script.Parent.Visible = true
    -- Timer
    for i = TIME, 0, -1 do
        -- In case if user wants to cancel the matchmaking break the timer
        if TIME == CANCEL_OFFSET then
            break
        end
        script.Parent.Text = "Game Starting in " .. tostring(i)
        wait(1)
    end
    -- Return The time to 5 seconds if the user cancelled
    if TIME == CANCEL_OFFSET then
        TIME = 5
        return
    end
    script.Parent.Text = "Teleporting..."
    timeout:FireServer("ab220AEm")
end)

Answer this question