-- Set Physics No and always active=Yes Name the first belt1 and set the ifused to the same name. Each one after raise the number by 1. IE: belt1 blet2 belt3 etc... --Rotate the object so it moves in the direction you need. belt_originalX=-9999 belt_originalY=0 belt_originalZ=0 function belt_init(e) end function belt_main(e) if belt_originalX == -9999 then -- Change this entity number to the first belt object. if e == 5 then belt_originalX = g_Entity[e]['x'] belt_originalY = g_Entity[e]['y'] belt_originalZ = g_Entity[e]['z'] else return end end --set the belt speed MoveForward(e,400) dx = belt_originalX - g_Entity[e]['x'] dy = belt_originalY - g_Entity[e]['y'] dz = belt_originalZ - g_Entity[e]['z'] dist = math.sqrt((dx*dx) + (dy*dy) + (dz*dz)) --Set this number to the distance of the complete belt move distance. You will need to play with this depending on your distance. if dist > 1700 then SetPosition(e,belt_originalX , belt_originalY , belt_originalZ) elseif GetPlayerDistance(e) < 60 then TransportToIfUsed(e) end end