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
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.
where is the :GetChildren() in your code I cannot pick it out with over 130 lines of code.