Changing value, it prints what it changes to. But doesn't actually do what the value says

I’ve been trying to fix this issue for the past 2 days. And I need help. So I have a remote event which fires the a vote hits 2 votes. It will then fire to the server twice(because there are 2 players.) The one problem is that the walls dont destroy. So I decided to set cancollide on all the parts to false. It prints that it’s false but when I try to go through it, it’s still not collidable. This is the server script that sets everything inside the wall model to cancollide false. Here:

for i,v in pairs(FindChosenMap.Walls:GetChildren()) do
				if v:IsA("Part") then
					v.CanCollide = false
					print(v.CanCollide)
				end
			end

if you want the full script then say below. If you have any questions then say below.

1 Like

Can i see the full script? @kinglol123468

I fixed it by adding a value then adding a script that destroys the walls when the value changes to true. Thanks for the attempt to help tho

You possibly needed to use “GetDescendants()” instead of “GetChildren()” depending on the hierarchy structure of the walls themselves. I’d recommend switching “Parts” to “BaseParts” as well, in case the walls contain any unusual “Part” instance types, like MeshParts, Trusses, Wedges etc.