anchor.diff:  	aiming_beam()
   	if(current_user.client.mouseParams)
   		var/list/mouse_control = params2list(current_user.client.mouseParams)
  +		if(isturf(current_user.client.mouseLocation))
  +			current_user.face_atom(current_user.client.mouseLocation)
   		if(mouse_control["screen-loc"])
   			var/list/screen_loc_params = splittext(mouse_control["screen-loc"], ",")
   			var/list/screen_loc_X = splittext(screen_loc_params[1],":")
  
positive.code: 	var/structure_piercing = 2
  	var/structure_bleed_coeff = 0.7
  	var/do_pierce = TRUE
  
  /obj/item/ammo_casing/energy/beam_rifle/proc/sync_stats()
  	var/obj/item/weapon/gun/energy/beam_rifle/BR = loc
  	if(!BR)
  		stack_trace("Beam rifle syncing error")
  	do_pierce = BR.projectile_setting_pierce
  	wall_pierce_amount = BR.wall_pierce_amount
  	wall_devastate = BR.wall_devastate
  
negative.code: 		cached = get_turf(src)
  
  /obj/item/projectile/beam/beam_rifle/hitscan/proc/spawn_tracer_effect()
  	QDEL_IN((new tracer_type(loc, time = 5, angle_override = Angle, p_x = pixel_x, p_y = pixel_y, color_override = color)), 5)
  
  /obj/item/projectile/beam/beam_rifle/hitscan/aiming_beam
  	tracer_type = /obj/effect/temp_visual/projectile_beam/tracer/aiming
  