Can we get a line of error? I will edit my reply when provided.
EDIT:
It's because you're trying to Cast number values, to objects. TeleportToPrivateServer (third arg) requires a list of player OBJECTS, not UserID's. In the script you put 1, and 2 which aren't player objects and are number values.
I would also recommend table.insert(playerQueue,player) instead of using **playerQueue[numOfPlayers] = player
** as this is incredibly insufficient and can cause bugs.
(Sorry for late reply. Been busy.)
Here is an updated code just to help with your troubles. This is also correct. I would also discontinue the use of local functions unless you are creating a function, within a function. It just makes it a bit harder to use it in a proper manner.
local requiredPlayers = 3
local playerQueue = {}
local ts = game:GetService("TeleportService")
function hasPlayer(tab, ply)
if table.find(tab,ply) then
return true
end
return false
end
function joinQueue(player)
if not player or not player:IsA("Player") then print("No Player Object. Discontinuing request.") end
if not hasPlayer(playerQueue, player) then
table.insert(playerQueue,player)
queueUpdate()
print(player.Name.." added to queue.")
else
print("Player is already in queue. Discontinuing request.")
end
end
function leaveQueue(player)
if not player or not player:IsA("Player") then print("No Player Object. Discontinuing request.") end
if hasPlayer(playerQueue,player) then
table.remove(playerQueue,table.find(playerQueue,player))
queueUpdate()
print(player.Name.." removed from queue.")
else
print("Player does not exist in queue. Discontinuing request.")
end
end
function queueUpdate()
if #playerQueue >= requiredPlayers then
for i=1,10 do
print(i.." until start.")
if #playerQueue < requiredPlayers then
print("Not enough players. Discontinuing request.")
break
end
end
print("Preparing to teleport from queue.")
local code = ts:ReserveServer(11299666436)
ts:TeleportToPrivateServer(11299666436, code, playerQueue)
playerQueue = {}
end
end
script.Parent.Touched:Connect(joinQueue)
3 comments
This is what it says: 18:56:21 -- Unable to cast value to object
18:56:21 -- Unable to cast value to object Stack Begin Script 'Workspace.Pad1.Script', line 40 - function queueLoop Stack End
Are you gonna respond