anchor.diff:  	operating = new_value
   	update_appearance()
   	update_move_direction()
  -	if(!operating) //If we ever turn off, disable moveloops
  +	//If we ever turn off, disable moveloops
  +	if(operating == CONVEYOR_OFF)
   		for(var/atom/movable/movable in get_turf(src))
   			stop_conveying(movable)
   
   /obj/machinery/conveyor/proc/update()
  -	. = TRUE
   	if(machine_stat & NOPOWER)
   		set_operating(FALSE)
   		return FALSE
  -	if(!operating) //If we're on, start conveying so moveloops on our tile can be refreshed if they stopped for some reason
  -		return
  -	for(var/atom/movable/movable in get_turf(src))
  -		start_conveying(movable)
  +
  +	// If we're on, start conveying so moveloops on our tile can be refreshed if they stopped for some reason
  +	if(operating != CONVEYOR_OFF)
  +		for(var/atom/movable/movable in get_turf(src))
  +			start_conveying(movable)
  +	return TRUE
   
   /obj/machinery/conveyor/proc/conveyable_enter(datum/source, atom/convayable)
   	SIGNAL_HANDLER
   	if(operating == CONVEYOR_OFF)
   		SSmove_manager.stop_looping(convayable, SSconveyors)
  -		return
  -	var/datum/move_loop/move/moving_loop = SSmove_manager.processing_on(convayable, SSconveyors)
  -	if(moving_loop)
  -		moving_loop.direction = movedir
  -		moving_loop.delay = speed SECONDS
   		return
   	start_conveying(convayable)
   
  
positive.code: 		SSmove_manager.stop_looping(convayable, SSconveyors)
  
  /obj/machinery/conveyor/proc/start_conveying(atom/movable/moving)
  	var/static/list/unconveyables = typecacheof(list(/obj/effect, /mob/dead))
  	if(!istype(moving) || is_type_in_typecache(moving, unconveyables) || moving == src)
  		return
  	moving.AddComponent(/datum/component/convey, movedir, speed SECONDS)
  
  /obj/machinery/conveyor/proc/stop_conveying(atom/movable/thing)
  	if(!ismovable(thing))
  
negative.code: 
  	else if(!user.combat_mode)
  		user.transferItemToLoc(attacking_item, drop_location())
  
  	return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN
  
  
  