New disarm intent suicide (#47902)

About The Pull Request

Adds a new disarm intent suicide. Fixes the intent logic, it will now run different suicides for disarm and grab. Added some ghostize that I overlooked last time.

https://streamable.com/ifx25
Why It's Good For The Game

Fixes, silly new content
Changelog

cl Skoglol
fix: All human intent suicides now work properly
add: New disarm intent suicide
/cl
This commit is contained in:
skoglol
2019-12-10 20:44:28 +13:00
committed by oranges
parent 27ee01cee1
commit 10de2370cf
5 changed files with 35 additions and 4 deletions
+14 -4
View File
@@ -75,20 +75,23 @@
adjustOxyLoss(max(200 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0))
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
return
var/suicide_message
if(a_intent == INTENT_DISARM)
if(prob(25))
disarm_suicide() // Snowflake suicide for a tired joke.
return //above proc handles logging and death
suicide_message = pick("[src] is attempting to push [p_their()] own head off [p_their()] shoulders! It looks like [p_theyre()] trying to commit suicide.", \
"[src] is pushing [p_their()] thumbs into [p_their()] eye sockets! It looks like [p_theyre()] trying to commit suicide.", \
"[src] is ripping [p_their()] own arms off! It looks like [p_theyre()] trying to commit suicide.")//heheh get it?
if(a_intent == INTENT_GRAB)
"[src] is pushing [p_their()] thumbs into [p_their()] eye sockets! It looks like [p_theyre()] trying to commit suicide.")
else if(a_intent == INTENT_GRAB)
suicide_message = pick("[src] is attempting to pull [p_their()] own head off! It looks like [p_theyre()] trying to commit suicide.", \
"[src] is aggressively grabbing [p_their()] own neck! It looks like [p_theyre()] trying to commit suicide.", \
"[src] is pulling [p_their()] eyes out of their sockets! It looks like [p_theyre()] trying to commit suicide.")
if(a_intent == INTENT_HELP)
else if(a_intent == INTENT_HELP)
suicide_message = pick("[src] is hugging [p_them()]self to death! It looks like [p_theyre()] trying to commit suicide.", \
"[src] is high-fiving [p_them()]self to death! It looks like [p_theyre()] trying to commit suicide.", \
"[src] is getting too high on life! It looks like [p_theyre()] trying to commit suicide.")
@@ -121,6 +124,7 @@
suicide_log()
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
/mob/living/carbon/monkey/verb/suicide()
set hidden = 1
@@ -138,6 +142,7 @@
adjustOxyLoss(max(200- getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0))
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
/mob/living/silicon/ai/verb/suicide()
set hidden = 1
@@ -156,6 +161,7 @@
//put em at -175
adjustOxyLoss(max(maxHealth * 2 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0))
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
/mob/living/silicon/robot/verb/suicide()
set hidden = 1
@@ -174,6 +180,7 @@
//put em at -175
adjustOxyLoss(max(maxHealth * 2 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0))
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
/mob/living/silicon/pai/verb/suicide()
set hidden = 1
@@ -186,6 +193,7 @@
suicide_log()
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
else
to_chat(src, "Aborting suicide attempt.")
@@ -207,6 +215,7 @@
//put em at -175
adjustOxyLoss(max(200 - getFireLoss() - getBruteLoss() - getOxyLoss(), 0))
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
/mob/living/simple_animal/verb/suicide()
set hidden = 1
@@ -223,6 +232,7 @@
suicide_log()
death(FALSE)
ghostize(FALSE) // Disallows reentering body and disassociates mind
/mob/living/proc/suicide_log()
log_message("committed suicide as [src.type]", LOG_ATTACK)