mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-19 19:13:30 +01:00
Adds a special suicide action to air tanks (#18575)
* Add /tg/ tank suicide_act * Review
This commit is contained in:
@@ -115,6 +115,20 @@
|
||||
|
||||
qdel(src)
|
||||
|
||||
/obj/item/tank/suicide_act(mob/user)
|
||||
var/mob/living/carbon/human/H = user
|
||||
user.visible_message("<span class='suicide'>[user] is putting [src]'s valve to [user.p_their()] lips! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/effects/spray.ogg', 10, TRUE, -3)
|
||||
|
||||
if(!QDELETED(H) && air_contents && air_contents.return_pressure() >= 1000)
|
||||
var/obj/item/organ/external/head/head = H.get_organ("head")
|
||||
head.disfigure()
|
||||
H.inflate_gib()
|
||||
return OBLITERATION
|
||||
|
||||
to_chat(user, "<span class='warning'>There isn't enough pressure in [src] to commit suicide with...</span>")
|
||||
return SHAME
|
||||
|
||||
/obj/item/tank/deconstruct(disassembled = TRUE)
|
||||
if(!disassembled)
|
||||
var/turf/T = get_turf(src)
|
||||
|
||||
@@ -101,3 +101,9 @@
|
||||
Weaken(30 SECONDS)
|
||||
do_jitter_animation(1000, -1) // jitter until they are gibbed
|
||||
addtimer(CALLBACK(src, .proc/gib), rand(2 SECONDS, 10 SECONDS))
|
||||
|
||||
/mob/living/carbon/proc/inflate_gib() // Plays an animation that makes mobs appear to inflate before finally gibbing
|
||||
addtimer(CALLBACK(src, .proc/gib, null, null, TRUE, TRUE), 25)
|
||||
var/matrix/M = matrix()
|
||||
M.Scale(1.8, 1.2)
|
||||
animate(src, time = 40, transform = M, easing = SINE_EASING)
|
||||
|
||||
Reference in New Issue
Block a user