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

Having Trouble with ':GetChildren()' In my mains script for my game. Can you guys solve it?

Hello,

Recently I was trying to script a sword fighting game. Im not good at scripting, and had many errors. I am having trouble with ":GetChildren()" In 1 part of my code. Ive watched many tutorials to help me, but still can't find the problem.

(Script)(I put words where the script is: local AvailableSpawnPoints = SpawnPoints)

-- Define Values

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local ServerStorage = game:GetService("ServerStorage")

local MapsFolder = ServerStorage:WaitForChild("Maps")

local Status = ReplicatedStorage:WaitForChild("Status")

local GameLength = 100

-- Game loop

while true do

Status.Value = "Waiting for more players"

repeat wait(1) until game.Players.NumPlayers >= 2

Status.Value = "Intermission..."

wait (10)

local plrs = {}

for i, player in pairs(game.Players:GetPlayers())do
	if player then
		table.insert(plrs,player)-- Add each player into plrs table
	end
end

wait (2)

local AvailableMaps = MapsFolder:GetChildren()
     
local ChosenMap = AvailableMaps[math.random(1,#AvailableMaps)]

Status.Value = ChosenMap.Name.." Chosen"

local ClonedMap = ChosenMap:Clone()
ClonedMap.Parent = workspace

--Teleport Players to map

local SpawnPoints = ClonedMap:FindFirstChild("SpawnPoints")

if not SpawnPoints then
	print("SpawnPoints not found!")
end

local AvailableSpawnPoints = SpawnPoints 

for i, player in pairs(plrs) do
	if player then 
		character = player.Character
		
		if character then
			--Teleport them
			
			character:FindFirstChild("HumanoidRootPart").CFrame = AvailableSpawnPoints[1].CFrame
			table.remove(AvailableSpawnPoints,1)
			
			--Give them a sword
			
			local Sword = ServerStorage.Sword:Clone()
			Sword.Parent = player.Backpack
			
			local GameTag = Instance.new("BoolValue")
			GameTag.Name = "GameTag"
			GameTag.Parent = player.Character
					
		else
			--there is no character
			if not player then 
				table.remove(plrs,i)
			end	
		end
	end		
end

	
Status.Value = "Ready... Go!"

wait(2)

for i = GameLength,0,-1 do
		
	for x, player in pairs(plrs) do		
		if player then
						
			character = player.Character
					
			if not character then				
				--Left the game								
			else							
				if character:FindFirstChild("Gametag") then
				--They are still alive						
					print(player.Name.." is still in the game")						
				else
				--they are dead 						
					table.remove(plrs,x)						
					print(player.Name.." has been removed")											
				end					
			end					
		end	
	end		
	Status.Value = "There are "..i.." seconds remaning / "..#plrs.." players left"
		
	if #plrs == 1 then	
		--winner						
		Status.Value = "And the winner is..."..plrs[1].Name	
		break						
	elseif #plrs == 0 then				
		Status.Value = "Nobody won :/"				
		break				
	elseif i == 0 then					
		Status.Value = "Time ran out :/"					
		break					
	end
	
	wait(1)
end

print("End of game")	

wait(2)


for i, player in pairs(game.Players:GetPlayers()) do	
	character = player.Character
	
	if not character then
	--ignore		
	else 	
		if character:FindFirstChild("Gametag") then	
			character.GameTag:Destroy()		
		end			
		if player:FindFirstChild("Sword") then	
			player.Backpack.Sword:Destroy()				
		end
			
		if character:FindFirstChild("Sword") then		
			character.Sword:Destroy()		
		end
		
	end

	player:LoadCharacter()	
end

ClonedMap:Destroy()	

Status.Value = "Game ended"
wait(2)	

end

2 answers

where is the :GetChildren() in your code I cannot pick it out with over 130 lines of code.

Hello dude, please highlight where is that GetChildren problem, and always post us error which it is throwing up. If it is not called from localscript which cant access server storage I think, we would really need to see error and that certain part of code, please edit your post or post new one, or contact me on discord - lukiny9000_2#0558. Have a good day.

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