Alright The Minigame script Works But, the Message and Hint Stay on screen the whole time and on the 15th line there is a error.
gamewait = 20 -- How long to wait between minigames
hin = Instance.new("Hint")
mes = Instance.new("Message")
hin.Name = "GameHint"
mes.Name = "GameMessage"
Games = {"Original Sweeper","Sword Sweeper","Hammer Sweeper"} -- Model your minigames, and put their names here in their proper order!
hin.Parent = game.Workspace
Numofplayers = 2
hin.Text = "It is required to have at least " ..Numofplayers .." players in the server to start. If there is " ..Numofplayers .." or more players, your game will start shortly."
CheckSpawns = {"Spawn1","Spawn2","Spawn3","Spawn4","Spawn5","Spawn6"} --Put the name of your spawns for each minigame here. One of these lines for each minigame. In order! Make more of these.
Spawns = {CheckSpawns} -- The names of the groups of spawns go here in order of minigames!
Cuga = 0 -- Leave this alone!
Howto = {"Avoid the sweeper by jumping over it!"} -- Put the minigame(s) description here in order of your minigames!
Gamestucture = {game.Workspace:findFirstChild("Original Sweeper"):clone()} -- Nil value error
Gamestucture = {game.Workspace:findFirstChild("Sword Sweeper"):clone()}
Gamestucture = {game.Workspace:findFirstChild("Hammer Sweeper"):clone()} -- This allows the minigames to go into Workspace. One for each minigame. The name(s) must be right!
Waittime = {100} --- How much time is in each minigame in order!
Points = {1} ---How many points the minigames give in proper order
-- Put the name of the weapon group here. If there are no weapons, just put "".
for i=1, #Games do
game.Workspace:findFirstChild(Games[i]):remove()
end
function performrandom(gamenum)
for i=1, #Path do
path[i] = math.random(1, #Games)
end
end
while true do
if game.Players.NumPlayers > Numofplayers - 1 then
hin.Parent = game.Workspace
for i=0, gamewait do
hin.Text = "Next Game Starts In: " ..gamewait - i .." Seconds."
if game.Workspace:findFirstChild("Non") then
else
wait(1)
end
end
if game.Workspace:findFirstChild("Non") then game.Workspace:findFirstChild("Non"):remove() end
hin.Text = "Deciding Sweeper"
mes.Parent = game.Workspace
if game.Workspace:findFirstChild("Tag") then
if game.Workspace.Tag.Value < #Games + 1 then
Cuga = game.Workspace.Tag.Value
mes.Text = "An Game Decider Has Requested the Game To Be Game: " ..game.Workspace.Tag.Value
game.Workspace.Tag:remove()
wait(2)
end
else
for i=1, #Games do
mes.Text = Games[i]
wait(.1)
end
for i=1, #Games do
mes.Text = Games[i]
wait(.1)
end
for i=1, #Games do
mes.Text = Games[i]
wait(.1)
end
for i=1, #Games do
mes.Text = Games[i]
wait(.1)
end
Cuga = math.random(1, #Games)
--Starts Testcode #1
for i=1, Cuga do
mes.Text = Games[i]
wait(.1)
end
--Ends Testcode #1
--Cuga = performrandom(#Games)
--mes.Text = "Game is: " ..Games[Cuga] -->(REPLACED WITH TESTCODE #2)
mes.Text = "Sweeper is: " ..Games[Cuga]
wait(3.5)
end
if Howto[Cuga] ~= "" then
mes.Text = Howto[Cuga]
wait(4)
end
listPlayer = game.Players:GetChildren()
b = 1
for i=1, #listPlayer do
if b > #Spawns[Cuga] then b = 1 end
arf = listPlayer[i].Name
if game.Workspace:findFirstChild(arf) then
body = game.Workspace:findFirstChild(arf)
if body ~= nil then
if body:findFirstChild("Humanoid") and body:findFirstChild("Torso") then
--body.Torso.CFrame = Game.Workspace:findFirstChild(Spawns[Cuga]).CFrame
local teleportto=game.Workspace:findFirstChild(Spawns[Cuga][b])
if teleportto~=nil then
local torso = body.Torso
local location = {teleportto.Position}
local i = 1
local x = location[i].x
local y = location[i].y
local z = location[i].z
x = x + math.random(-2, 2)
z = z + math.random(-2, 2)
y = y + math.random(2, 5)
local cf = torso.CFrame
local lx = 0
local ly = y
local lz = 0
torso.CFrame = CFrame.new(Vector3.new(x,y,z), Vector3.new(lx,ly,lz))
end
end
end
end
b = b + 1
end
newworld = Gamestucture[Cuga]:clone()
newworld.Parent = game.Workspace
wait(.2)
--Starts Testcode #3A
playerchildren = game.Players:GetChildren()
for i=1, #playerchildren do
arf = playerchildren[i].Name
if game.Workspace:findFirstChild(arf) then
body = game.Workspace:findFirstChild(arf)
if body:findFirstChild("Torso") then
body.Torso.Anchored = false
end
end
end
--Ends Testcode #3A
if Weapons[Cuga] ~= "" then
for i=1, #listPlayer do
for a=1, #Weapons[Cuga] do
if game.Lighting:findFirstChild(Weapons[Cuga][a]) then
newwep = game.Lighting:findFirstChild(Weapons[Cuga][a]):clone()
newwep.Parent = listPlayer[i].Backpack
end
end
end
end
for i=1, #listPlayer do
local newtag = Instance.new("StringValue")
newtag.Name = listPlayer[i].Name
newtag.Parent = script
newtag.Value = "Winner"
local PlayerCheck = script.Parent.PlayerLeft:clone()
PlayerCheck.Disabled = false
PlayerCheck.Parent = newtag
end
mes.Text = "GO!"
--Starts Testcode #2B
for i=1, #playerchildren do
arf = playerchildren[i].Name
if game.Workspace:findFirstChild(arf) then
body = game.Workspace:findFirstChild(arf)
if body:findFirstChild("Torso") then
body.Torso.Anchored = false
end
end
end
--Ends Testcode #2B
if newworld:findFirstChild("Enabled") then
wait(6)
newworld:findFirstChild("Enabled").Value = 1
end
mes.Text = ""
i = 0
while i <= Waittime[Cuga] do
hin.Text = "Game Ends In: " ..Waittime[Cuga] - i .." Seconds."
i = i + 1
findchildren = script.Parent:findFirstChild("Game Script"):GetChildren()
if #findchildren > 1 then
else
i = Waittime[Cuga] + 1
end
wait(1)
end
childrenwinners = script.Parent:findFirstChild("Game Script"):GetChildren()
messagetosay = "Nobody"
for i=1,#childrenwinners do
if i > 1 then
messagetosay = messagetosay .." & " ..childrenwinners[i].Name
else
messagetosay = childrenwinners[i].Name
end
childrenwinners[i]:remove()
end
if #childrenwinners < 2 then
messagetosay = messagetosay .." has won!"
else
messagetosay = messagetosay .." have won!"
end
mes.Text = messagetosay
pointsperplayer = (Points[Cuga] * game.Players.NumPlayers) / #childrenwinners
for i=1,#childrenwinners do
if game.Players:findFirstChild(childrenwinners[i].Name) then
player = game.Players:findFirstChild(childrenwinners[i].Name)
if player~= nil then
if player.Character:findFirstChild("Torso") then
if player.Character.Torso:findFirstChild("roblox") then
if player.Character.Torso.roblox.Texture == "http://www.roblox.com/asset/?id=8157886" then
player.leaderstats.Points.Value = (player.leaderstats.Points.Value + (pointsperplayer))
end
end
end
player.leaderstats.Points.Value = player.leaderstats.Points.Value + (pointsperplayer)
end
end
end
newworld:remove()
wait(3)
mes.Text = ""
hin.Text = ""
else
mes.Text = ""
hin.Text = "It is required to have at least " ..Numofplayers .." players in the server to start. If there is " ..Numofplayers .." or more players, your game will start shortly."
end
wait(5)
end
Any help at all would be nice.

3 comments
For lines 15 and 16, use a different variable for each, otherwise you overwrite the first one.
Also, where are the mini game models? If they're in lighting, then why, on lines 14-16, are you trying to access them through workspace?
They arent In Lighting, This script it used Models in Workspace.