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

How to check if parent is a certain player?

Hey, I wanna check if my tool's parent is a player. I used a table to get all the descendants of workspace and anchored them. But, when I hold out my tool, it is also anchored. I want something that can check if the tool's parent is a player and then skip the item.

local Event = game.ReplicatedStorage.Event.TimeStopEvent
local InUse = game.ReplicatedStorage.Event.InUse
local Sound = game.Workspace.TheWorldSound
local Resume = game.Workspace.ResumeTime
local Table = {}

game.ReplicatedStorage.Event.TimeStopEvent.OnServerEvent:Connect(function(player)
	local descendants = Workspace:GetDescendants() -- gets all things under workspace
	if game.ReplicatedStorage.Event.InUse.Value == false then
		game.ReplicatedStorage.Event.InUse.Value = true
		Sound:Play()
		game.Lighting.Gay.Saturation = -1
		game.Lighting.Gay.Enabled = true
		for i = 255, 0, -31.875 do
			game.Lighting.Gay.TintColor = Color3.fromRGB(i, 0, 255)
			wait()
		end
		for i = 0, 255, 31.875 do
			game.Lighting.Gay.TintColor = Color3.fromRGB(0, i, 255)
			wait()
		end
		for i = 255, 0, -31.875 do
			game.Lighting.Gay.TintColor = Color3.fromRGB(0, 255, i)
			wait()
		end
		for i = 0, 255, 31.875 do
			game.Lighting.Gay.TintColor = Color3.fromRGB(i, 255, 0)
			wait()
		end
		for i = 0, 255, 31.875 do
			game.Lighting.Gay.TintColor = Color3.fromRGB(255, 255, i)
			wait()
		end
		for i = 1, #descendants do -- Getting all the things under workspace and putting them in TABLE
			if descendants[i]:IsA("Part") or descendants[i]:IsA("MeshPart") then --checking each individual descendant
				if descendants[i].Anchored == false and descendants[i].Parent.Name ~= player.Name and descendants[i].Name ~= ("Handle") and descendants[i].Name ~= ("Baseplate") and not descendants[i].Parent:IsA ("Accessory") then
					descendants[i].Anchored = true -- if all requirements met, they are anchored
					table.insert(Table, descendants[i]) -- creates table of anchored descendants
				end
			end
		end
	elseif game.ReplicatedStorage.Event.InUse.Value == true then
		InUse.Value = false
		Resume:Play()
		for i = -1, 0, 0.125 do
			game.Lighting.Gay.Saturation = i -- ts effect
			wait()
		end
		for i = 1, #Table do -- take the table we made of the descendants from earlier and then unanchor them
			local descendants = Table[i] 
			descendants.Anchored = false
		end
		table.clear	(Table)
	end
end)

2 answers

You can just simply skip any instance that is a tool/is a child of a tool inside of your anchoring script. Something like

If not object:IsA(“tool”) or object.Parent == “tool” then
        — anchor script here
end

I dont have the script so I dont know exactly what your doing

1 comment

0

for other players, their tool is also unfrozen

local timeStopUser = player.Name -- You can also fire some events to set the variable's name to the player who used Time Stop

if (descendants[i].Parent.Name == timeStopUser) then
	-- Do something
end

13 comments

0

basically i made a time stop script and it freezes everything during stopped time. what im trying to do is make everything stop apart from me and whatever im holding. also other players can use the tools as well so i need it to be a specific parent.

0

Alright, made changes to my answer, I believe that's what you wanted

0

sorry i shouldve been more specific. everyone has the time stop so it cant be a specific player. it has to be the player that used the time stop that the sword isnt anchored. im gonna post the code so you know wwhats happening.

0

Alright bro, i've read ur codes, is there any problem with the codes?? Like error or something?

0

no it works perfectly

0

apart from the Ws on workspace are uppercase

0

Hmm ok, what are the lines of codes that produce different result(s) than expected one(s)?

0

none. everything (apart from my other script) works fine and as expected.

0

Alright, I've updated the codes again, hope that is what you wanted

0

ok ill try it once my studio responds again

0

this unfortunately didnt work as whenever i used the parent name it would unanchor the parent instead of the sword

0

actually im positive it would work. i just need to make "timestopper" variable the person who stopped time. do you have any ideas?

0

actually no it doesnt work i just tested it with timestopper being a string of my name

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