anchor.diff:  	if(semicd)
   		return
   
  +	//Vary by at least this much
  +	var/base_bonus_spread = 0
   	var/sprd = 0
   	var/randomized_gun_spread = 0
   	var/rand_spr = rand()
  +	if(user && HAS_TRAIT(user, TRAIT_POOR_AIM)) //Nice job hotshot
  +		bonus_spread += 35
  +		base_bonus_spread += 10
  +
   	if(spread)
   		randomized_gun_spread =	rand(0,spread)
  -	var/randomized_bonus_spread = rand(0, bonus_spread)
  +	var/randomized_bonus_spread = rand(base_bonus_spread, bonus_spread)
   
   	if(burst_size > 1)
   		firing_burst = TRUE
  
positive.code: 
  /obj/item/gun/proc/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
  	if(user)
  		if(HAS_TRAIT(user, TRAIT_POOR_AIM)) //nice shootin' tex
  			target = pick(orange(2, target))
  		SEND_SIGNAL(user, COMSIG_MOB_FIRED_GUN, src, target, params, zone_override)
  
  	SEND_SIGNAL(src, COMSIG_GUN_FIRED, user, target, params, zone_override)
  
negative.code: 				to_chat(user, "<span class='warning'>[src] is lethally chambered! You don't want to risk harming anyone...</span>")
  				return
  		if(randomspread)
  			sprd = round((rand(0, 1) - 0.5) * DUALWIELD_PENALTY_EXTRA_MULTIPLIER * (randomized_gun_spread + randomized_bonus_spread))
  		else //Smart spread
  			sprd = round((((rand_spr/burst_size) * iteration) - (0.5 + (rand_spr * 0.25))) * (randomized_gun_spread + randomized_bonus_spread))
  		before_firing(target,user)
  