anchor.diff:  	Attacked(obj/projectile/p)
   		..()
   
  +		var/area/a = loc.loc
   		if(p.owner)
   			if(isplayer(p.owner))
   
  -				if(p.owner == src && istype(p, /obj/projectile/NoImpact)) return
  -
  -				var/area/a = loc.loc
  +				if(p.owner == src && (istype(p, /obj/projectile/NoImpact) || !a.selfDamage)) return
  +
   				if(!a.friendlyFire) return
   
   				if(a.timedProtection && (lastHostile == 0 || world.time - lastHostile > 600)) return
  
positive.code: area/var
  	friendlyFire = TRUE
  	timedProtection = FALSE
  
  
  mob/Player/var/element
  
negative.code: 			dmg -= round(Ghost.level / 2)
  
  		if(dmg <= 0) return
  
  		if(a.scaleDamage && p.owner != src)
  			dmg = round(MHP / a.scaleDamage, 1)
  
  		dmg = onDamage(dmg, p.owner)
  
  