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

What is wrong with my Sliding Door script?

I'm working on an onTouched sliding door script, but for some reason when I touch the brick, the Door doesn't slide, it just teleports, and it doesn't teleport to where I want it to stop either. It disappears when I hit the brick.


function onTouched(hit)
	debounce = false
	player = hit.Parent
	increment = 0.1
	if hit.Parent ~= nil and debounce == false then
		debounce = true
		repeat
			wait(0.01)
			pos = 33.5
			script.Parent.Parent.Door.CFrame = script.Parent.Parent.Door.CFrame * CFrame.new(86.222, pos - increment, 85.573) 
			pos = pos - increment
		until
			pos == 18.5
			
		wait(3)
		repeat
			wait(0.01)
			pos1 = 18.5
			script.Parent.Parent.Door.CFrame = script.Parent.Parent.Door.CFrame * CFrame.new(86.222, pos1 + increment, 85.573)
			pos1 = pos1 + increment
		until
			pos1 == 33.5
		debounce = false
	end
end

script.Parent.Touched:connect(onTouched)

1 answer

since you are using the Door's CFrame, you don't need to add on the extra 86.222 on the X axis or the 85.573 on the Z axis. This is making your door fly off that many pixels from where you want it to be. Replace these values with 0.

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