Please help me and say why my script does not work.

script.Parent.Touched:Connect(function)
	local door1 = script.Parent.Parent.door1
	for i = 0.1, 0.8, 0.1 do
		door1.CFrame = CFrame.new(door1.CFrame.X, door1.CFrame.Y, door1.CFrame.Z + i)
		wait(0.05)
	end
	wait(2.5)
	for i = 0.1, 0.8, 0.1 do
		door1.CFrame = CFrame.new(door1.CFrame.X, door1.CFrame.Y, door1.CFrame.Z - i)
		wait(0.05)
	end
end)