Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

My admin tablets don't work?

Okay, this is another long job. My tabs never load into workspace? Why does this happen?

tabs = {}
tabSettings = {
	size = Vector3.new(4,4,4),
	material = Enum.Material.Neon,
	anchored = true,
	locked = true
}
tabs = {}
Output = function(Player,Text,Color)
	if not game.Players:FindFirstChild(Player) then return else Player = game.Players:FindFirstChild(Player); end;
	if Text == nil then Text = "Sample text"; end;
	if Color == nil then Color = BrickColor.new("Really red");
	local tab = Instance.new("Part",workspace);
	tab.Anchored = tabSettings.anchored;
	tab.Locked = tabSettings.locked;
	tab.Size = tabSettings.size;
	tab.Material = tabSettings.material;
	tab.TopSurface,tab.BottomSurface = 0,0;
	tab.FormFactor = "Custom";
	local sb = Instance.new("SelectionBox",tab);
	sb.Adornee = tab;
	sb.Color = BrickColor.new(Color).Color;
	sb.Transparency = .2;
	sb.LineThickness = .03;
	local gui = Instance.new("BillboardGui",tab);
	gui.Adornee = tab;
	gui.Size = UDim2.new(1,0,1,0);
	gui.StudsOffset = Vector3.new(0,2.5,0);
	local tl = Instance.new("TextLabel",gui);
	tl.Text = Text;
	tl.Size = UDim2.new(1,0,1,0);
	tl.TextColor3 = tab.Color;
	tl.BackgroundTransparency = 1;
	tl.Font = "Arial";
	tl.FontSize = "Size18";
	tl.TextStrokeTransparency = .81
	tl.TextStrokeColor3 = Color3.new(255,255,255);
	tl.TextTransparency = 0;
	local cd = Instance.new("ClickDetector",tab);
	cd.MaxActivationDistance = 1000;
	cd.MouseClick:connect(function(p)
		if p.Name == Player.Name then
			tab:Destroy();
			for i,v in pairs(tabs) do
				if v.Name == tab.Name then
					table.remove(tabs,i)
				end
			end
		end
	end)
	tab.Parent = workspace;
	pcall(function()
		tab.CFrame = Player.Character.Torso.CFrame;
	end)
	table.insert(tabs,{Tab = tab,Player = Player,Text = tl, Sb = sb});
	end
end
Output("28nard","This is some text","Really red")

there aren't any errors...

1 answer

The script loads before the player exists. You are looking for the player before the player is created. It stops because the player was not found on line 10. Replace line 10 withPlayer=game.Players:WaitForChild(Player) or get rid of line 10 and call the function with the first argument being game.Players:WaitForChild("28nard") instead of just the name.

This discussion is preserved as it was. New answers, comments, and votes are closed.