anchor.diff:  	slot_flags = SLOT_BELT
   	m_amt = 500
   	g_amt = 500
  -	w_class = 1.0
  +	w_class = 2 //Increased to 2, because diodes are w_class 2. Conservation of matter.
   	origin_tech = "combat=1"
   	origin_tech = "magnets=2"
   	var/turf/pointer_loc
   	var/energy = 5
   	var/max_energy = 5
  +	var/effectchance = 33
   	var/recharging = 0
   	var/recharge_locked = 0
  +	var/obj/item/weapon/stock_parts/micro_laser/diode //used for upgrading!
  +
   
   /obj/item/device/laser_pointer/red
   	pointer_icon_state = "red_laser"
  
positive.code: 	else if(issilicon(target))
  		var/mob/living/silicon/S = target
  		//20% chance to actually hit the sensors
  		if(prob(20))
  			S.Weaken(rand(5,10))
  			S << "<span class='warning'>Your sensors were overloaded by a laser!</span>"
  			outmsg = "<span class='notice'>You overload [S] by shining [src] at their sensors.</span>"
  
negative.code: 
  /obj/item/device/laser_pointer/New()
  	..()
  	diode = new(src)
  	if(!pointer_icon_state)
  		pointer_icon_state = pick("red_laser","green_laser","blue_laser","purple_laser")
  
  /obj/item/device/laser_pointer/upgraded/New()
  	..()
  	diode = new /obj/item/weapon/stock_parts/micro_laser/ultra
  
  
  
  /obj/item/device/laser_pointer/attack(mob/living/M, mob/user)
  	laser_act(M, user)
  
  /obj/item/device/laser_pointer/attackby(obj/item/W, mob/user)
  	if(istype(W, /obj/item/weapon/stock_parts/micro_laser))
  		if(!diode)
  			user.drop_item()
  			W.loc = src
  			diode = W
  			user << "<span class='notice'>You install a [diode.name] in [src].</span>"
  		else
  			user << "<span class='notice'>[src] already has a cell.</span>"
  
  	else if(istype(W, /obj/item/weapon/screwdriver))
  		if(diode)
  			user << "<span class='notice'>You remove the [diode.name] from the [src].</span>"
  			diode.loc = get_turf(src.loc)
  			diode = null
  			return
  		..()
  	return
  
  /obj/item/device/laser_pointer/afterattack(var/atom/target, var/mob/living/user, flag, params)
  	if(flag)	//we're placing the object on a table or in backpack
  		return
  