anchor.diff:  	name = "reactive armor"
   	desc = "Doesn't seem to do much for some reason."
   	var/active = 0
  -	var/reactivearmor_cooldown = 0//cooldown specific to reactive armor
  +	var/reactivearmor_cooldown = 100 //cooldown specific to reactive armor
  +	var/reactivearmor_semicd = 0
   	icon_state = "reactiveoff"
   	item_state = "reactiveoff"
   	blood_overlay_type = "armor"
  
positive.code: 	desc = "Someone seperated our Research Director from his own head!"
  	var/tele_range = 6
  	var/rad_amount= 15
  
  /obj/item/clothing/suit/armor/reactive/teleport/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance)
  	if(!active)
  		return 0
  	if(prob(hit_reaction_chance))
  		var/mob/living/carbon/human/H = owner
  		if(world.time < reactivearmor_cooldown)
  			owner.visible_message("<span class='danger'>The reactive teleport system is still recharging! It fails to teleport [H]!</span>")
  			return
  		owner.visible_message("<span class='danger'>The reactive teleport system flings [H] clear of [attack_text], shutting itself off in the process!</span>")
  		var/list/turfs = new/list()
  		for(var/turf/T in orange(tele_range, H))
  			if(T.density)
  				continue
  			if(T.x>world.maxx-tele_range || T.x<tele_range)
  
negative.code: 			owner.Beam(M,icon_state="lightning[rand(1, 12)]",icon='icons/effects/effects.dmi',time=5)
  			M.adjustFireLoss(25)
  			playsound(M, 'sound/machines/defib_zap.ogg', 50, 1, -1)
  		reactivearmor_semicd = world.time + reactivearmor_cooldown
  		return 1
  
  /obj/item/clothing/suit/armor/reactive/table
  	name = "reactive table armor"
  	desc = "If you can't beat the memes, embrace them."
  	var/tele_range = 10
  	var/nospace = 1
  
  /obj/item/clothing/suit/armor/reactive/table/hit_reaction(mob/living/carbon/human/owner, attack_text)
  	if(!active)
  		return 0
  	if(prob(hit_reaction_chance))
  		var/mob/living/carbon/human/H = owner
  		if(world.time < reactivearmor_semicd)
  			owner.visible_message("<span class='danger'>The reactive table memes are still on cooldown!</span>")
  			return
  		owner.visible_message("<span class='danger'>The reactive teleport system flings [H] clear of [attack_text] and slams them into a freshly fabricated tables! The memes are dank!</span>")
  		owner.Weaken(2)
  		var/list/turfs = new/list()
  		for(var/turf/T in orange(tele_range, H))
  			if(istype(T,/turf/open/space)||nospace == 1)
  				continue
  			if(T.density)
  				continue
  			if(T.x>world.maxx-tele_range || T.x<tele_range)
  				continue
  			if(T.y>world.maxy-tele_range || T.y<tele_range)
  				continue
  			turfs += T
  		if(!turfs.len)
  			turfs += pick(/turf in orange(tele_range, H))
  		var/turf/picked = pick(turfs)
  		if(!isturf(picked))
  			return
  		H.forceMove(picked)
  		new /obj/structure/table(get_turf(owner))
  		reactivearmor_semicd = world.time + reactivearmor_cooldown
  		return 1
  	return 0
  
  /obj/item/clothing/suit/armor/reactive/table/emp_act()
  	return
  
  //All of the armor below is mostly unused
  
  /obj/item/clothing/suit/armor/centcom
  	name = "\improper Centcom armor"
  