mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-20 06:32:56 +00:00
32 lines
1.3 KiB
Plaintext
32 lines
1.3 KiB
Plaintext
/obj/projectile/energy/electrode
|
|
name = "electrode"
|
|
icon_state = "spark"
|
|
color = COLOR_YELLOW
|
|
stamina = 70 // SKYRAT EDIT CHANGE
|
|
paralyze = 10 SECONDS
|
|
stutter = 10 SECONDS
|
|
jitter = 40 SECONDS
|
|
hitsound = 'sound/items/weapons/taserhit.ogg'
|
|
range = 7
|
|
tracer_type = /obj/effect/projectile/tracer/stun
|
|
muzzle_type = /obj/effect/projectile/muzzle/stun
|
|
impact_type = /obj/effect/projectile/impact/stun
|
|
|
|
/obj/projectile/energy/electrode/on_hit(atom/target, blocked = 0, pierce_hit)
|
|
. = ..()
|
|
if(!ismob(target) || blocked >= 100) //Fully blocked by mob or collided with dense object - burst into sparks!
|
|
do_sparks(1, TRUE, src)
|
|
else if(iscarbon(target))
|
|
var/mob/living/carbon/C = target
|
|
C.adjust_confusion_up_to(15 SECONDS, 30 SECONDS) // SKYRAT EDIT ADDITION - Electrode jitteriness
|
|
C.add_mood_event("tased", /datum/mood_event/tased)
|
|
SEND_SIGNAL(C, COMSIG_LIVING_MINOR_SHOCK)
|
|
if(HAS_TRAIT(C, TRAIT_HULK))
|
|
C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk")
|
|
else if(!C.check_stun_immunity(CANKNOCKDOWN))
|
|
addtimer(CALLBACK(C, TYPE_PROC_REF(/mob/living/carbon, do_jitter_animation), 20), 0.5 SECONDS)
|
|
|
|
/obj/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet
|
|
do_sparks(1, TRUE, src)
|
|
..()
|