That’s because this code is non-functional, it’s not connected to an event and is never to be running, because the script reads through these lines without reading them again.
A connection to an event would look like this.
script.Parent.OpenDoor.Changed:Connect(function()
if script.Parent.OpenDoor.Value == true then
print("shshdhdh")
moving = true
move()
moving = false
end
end)
A loop is unnecessary in this case.