anchor.diff:  ///Special throw_impact for hats to frisbee hats at people to place them on their heads/attempt to de-hat them.
   /obj/item/clothing/head/throw_impact(atom/hit_atom, datum/thrownthing/thrownthing)
   	. = ..()
  -	///if the thrown object's target zone isn't the head	
  +	///if the thrown object's target zone isn't the head
   	if(thrownthing.target_zone != BODY_ZONE_HEAD)
   		return
   	///ignore any hats with the tinfoil counter-measure enabled
  
positive.code: 		return
  	///if the hat happens to be capable of holding contents and has something in it. mostly to prevent super cheesy stuff like stuffing a mini-bomb in a hat and throwing it
  	if(LAZYLEN(contents))
  		return	
  	if(iscarbon(hit_atom))
  		var/mob/living/carbon/H = hit_atom
  		if(istype(H.head, /obj/item))
  
negative.code: 			if(HAS_TRAIT(WH, TRAIT_NODROP))
  				H.visible_message("<span class='warning'>[src] bounces off [H]'s [WH.name]!", "<span class='warning'>[src] bounces off your [WH.name], falling to the floor.</span>")
  				return
  			///check if the item is an actual clothing head item, since some non-clothing items can be worn
  			if(istype(WH, /obj/item/clothing/head))
  				var/obj/item/clothing/head/WHH = WH
  				///SNUG_FIT hats are immune to being knocked off
  				if(WHH.clothing_flags & SNUG_FIT)
  					H.visible_message("<span class='warning'>[src] bounces off [H]'s [WHH.name]!", "<span class='warning'>[src] bounces off your [WHH.name], falling to the floor.</span>")
  					return
  			///if the hat manages to knock something off
  			if(H.dropItemToGround(WH))
  				H.visible_message("<span class='warning'>[src] knocks [WH] off [H]'s head!</span>", "<span class='warning'>[WH] is suddenly knocked off your head by [src]!</span>")
  		if(H.equip_to_slot_if_possible(src, SLOT_HEAD, 0, 1, 1))
  			H.visible_message("<span class='notice'>[src] lands neatly on [H]'s head!", "<span class='notice'>[src] lands perfectly onto your head!</span>")
  		return
  	if(iscyborg(hit_atom))
  		var/mob/living/silicon/robot/R = hit_atom
  		///hats in the borg's blacklist bounce off
  		if(is_type_in_typecache(src, GLOB.blacklisted_borg_hats))
  			R.visible_message("<span class='warning'>[src] bounces off [R]!", "<span class='warning'>[src] bounces off you, falling to the floor.</span>")
  			return
  		else
  