diff --git a/code/modules/projectiles/projectile/bullets/shotgun.dm b/code/modules/projectiles/projectile/bullets/shotgun.dm index c28d85511e..4411334883 100644 --- a/code/modules/projectiles/projectile/bullets/shotgun.dm +++ b/code/modules/projectiles/projectile/bullets/shotgun.dm @@ -18,13 +18,28 @@ /obj/item/projectile/bullet/shotgun_stunslug name = "stunslug" damage = 5 - stamina = 20 - knockdown = 100 + stamina = 30 stutter = 5 jitter = 20 range = 7 icon_state = "spark" color = "#FFFF00" + var/tase_duration = 50 + +/obj/item/projectile/bullet/shotgun_stunslug/on_hit(atom/target, blocked = FALSE) + . = ..() + if(!ismob(target) || blocked >= 100) //Fully blocked by mob or collided with dense object - burst into sparks! + do_sparks(1, TRUE, src) + if(iscarbon(target)) + var/mob/living/carbon/C = target + SEND_SIGNAL(C, COMSIG_ADD_MOOD_EVENT, "tased", /datum/mood_event/tased) + SEND_SIGNAL(C, COMSIG_LIVING_MINOR_SHOCK) + C.IgniteMob() + if(C.dna && C.dna.check_mutation(HULK)) + C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk") + else if(tase_duration && (C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE) && !HAS_TRAIT(C, TRAIT_TASED_RESISTANCE)) + C.electrocute_act(15, src, 1, SHOCK_NOSTUN) + C.apply_status_effect(STATUS_EFFECT_TASED_WEAK, tase_duration) /obj/item/projectile/bullet/shotgun_meteorslug name = "meteorslug" @@ -93,7 +108,6 @@ /obj/item/projectile/bullet/scattershot damage = 20 - stamina = 65 /obj/item/projectile/bullet/seed damage = 4