Skip to content

Tutorials

untroublee edited this page Nov 11, 2024 · 8 revisions

Installation

  1. Download the model directly from github
    • Click on uQueueService.rbxm, then click View raw to download
  2. Put the module inside ServerScriptService

Note: This will not be uploaded on the roblox marketplace due to requiring assets inside of the module

Getting Started

Here are a few guides on how to get started with uQueueService after installation

Require the module

-- Services --
local SSS = game:GetService("ServerScriptService")
local Players = game:GetService("Players")

-- Modules --
local uQueueService = require(SSS:WaitForChild("uQueueService"))

Create a Queue

local queueParams : uQueueService.QueueParams = {
    MinPlayers = 2,
    MaxPlayers = 4,
    Countdown = 3,
    PlaceId = 9618129346831261326489321694862134686213468698132468689132646871326486813264683216483264868312646312643612648612648613264,
    -- Pretend that's a real place id lmao
}

local newQueue = uQueueService.new(queueParams)

Add players to a Queue

Players.PlayerAdded:Connect(function(plr)
    newQueue:AddPlayer(plr)
end)

Remove players from a Queue

Players.PlayerRemoved:Connect(function(plr)
    newQueue:RemovePlayer(plr)
end)

Apply teleport data

-- new script
-- Services --
local SSS = game:GetService("ServerScriptService")
local Players = game:GetService("Players")

-- Modules --

local uQueueService = require(SSS:WaitForChild("uQueueService"))

-- Variables --

local queueParams : uQueueService.QueueParams = {
    MinPlayers = 2,
    MaxPlayers = 4,
    Countdown = 3,
    PlaceId = 5862384328632478273,
    
    TpData = {
        msg = "Hello World!"
    }
    -- TpData can be any value
}

local newQueue = uQueueService.new(queueParams)

Full script

-- Services --
local SSS = game:GetService("ServerScriptService")
local Players = game:GetService("Players")

-- Modules --

local uQueueService = require(SSS:WaitForChild("uQueueService"))
local Types = require(SSS:WaitForChild("uQueueService"):WaitForChild("Types"))

-- Variables --

local queueParams : Types.Queue = {
    MinPlayers = 2,
    MaxPlayers = 4,
    Countdown = 3,
    PlaceId = 5862384328632478273,
    
    TpData = "Hello world!"
    -- Can be any value
}

local newQueue = uQueueService.new(queueParams)

-- Events --

Players.PlayerAdded:Connect(function(plr)
    newQueue:AddPlayer(plr)
end)

Players.PlayerRemoved:Connect(function(plr)
    newQueue:RemovePlayer(plr)
end)

newQueue:Initiated:Connect(function()
    print(`Queue has been initated! Teleporting players {newQueue.queued}...`)
end)

Clone this wiki locally