I want the right to be true, and the left to be false, or vice versa. All I get is both true, both false or sometimes it works.
game.workspace.r1.CanCollide = math.random(1,2) == 1 if game.Workspace.r1.CanCollide ~= true then game.Workspace.l1.CanCollide = false end game.workspace.r2.CanCollide = math.random(1,2) == 1 if game.Workspace.r2.CanCollide ~= true then game.Workspace.l2.CanCollide = false end game.workspace.r3.CanCollide = math.random(1,2) == 1 if game.Workspace.r3.CanCollide ~= false then game.Workspace.l3.CanCollide = false end game.workspace.r4.CanCollide = math.random(1,2) == 1 if game.Workspace.r4.CanCollide ~= true then game.Workspace.l4.CanCollide = false end game.workspace.r5.CanCollide = math.random(1,2) == 1 if game.Workspace.r5.CanCollide ~= true then game.Workspace.l5.CanCollide = false end game.workspace.r6.CanCollide = math.random(1,2) == 1 if game.Workspace.r6.CanCollide ~= true then game.Workspace.l6.CanCollide = false end game.workspace.r7.CanCollide = math.random(1,2) == 1 if game.Workspace.r7.CanCollide ~= true then game.Workspace.l7.CanCollide = false end game.workspace.r8.CanCollide = math.random(1,2) == 1 if game.Workspace.r8.CanCollide ~= true then game.Workspace.l8.CanCollide = false end game.workspace.r9.CanCollide = math.random(1,2) == 1 if game.Workspace.r9.CanCollide ~= true then game.Workspace.l9.CanCollide = false end
There is a much more efficient way of completing this task, which also allows for expandability.
Explanations are left in comments inside the code chuck below.
-- initialise a new variable with the amount of parts inside workspace PARTS_COUNT: number = 9 -- create a for loop for index = 1, PARTS_COUNT do -- define the two parts local PartRight = workspace:WaitForChild('r' + index) local PartLeft = workspace:WaitForChild('l' + index) -- check if both parts exists, if not, skip this number if PartRight == nil or PartLeft == nil then continue end -- randomly generate the bool -- we use (math.random(1, 2) - 1) because 0 is false, and 1 is true local Enabled: bool = ((math.random(1, 2) - 1) == 1) -- set PartRight's collision PartRight.CanCollide = Enabled -- call 'not Enabled' to give us the opposite (false will turn into true, and vice versa) PartLeft.CanCollide = not Enabled end