Adds the Death Sandwich to the game (#75013)

## About The Pull Request
Adds the Death Sandwich to the game, the ultimate form of
bread-conveyed-meat-based consumables.

![deathsandwich](https://user-images.githubusercontent.com/66052067/235041733-287be1fd-1eed-4d6d-840b-96f95494f093.png)


And remember;
Eat it right, or you die!
## Why It's Good For The Game
I'm genuinely surprised we don't already have a meatball sub in the game
also I love humor food, and I doubt my edition of the Eggcellent
Challenge would ever be merged if I tried to do so, so this is the next
best thing.
## Changelog
🆑 Wallem
add: The ancient recipe for the Death Sandwich has been rediscovered
buried in the deepest depths of an erupting volcano.
/🆑
This commit is contained in:
Wallem
2023-05-02 21:49:35 -04:00
committed by GitHub
parent 1361099cf5
commit 9c0900bc9f
8 changed files with 128 additions and 0 deletions
@@ -0,0 +1,60 @@
/datum/disease/death_sandwich_poisoning
name = "Death Sandwich Poisoning"
desc = "If left untreated the subject will ultimately perish."
form = "Condition"
spread_text = "Unknown"
max_stages = 3
cure_text = "Anacea" // I ain't about to make a second sandwich to counteract the first one, so closest thing I'm going for is this.
cures = list(/datum/reagent/toxin/anacea)
cure_chance = 4
agent = "eating the Death Sandwich wrong"
viable_mobtypes = list(/mob/living/carbon/human)
severity = DISEASE_SEVERITY_DANGEROUS
disease_flags = CURABLE
spread_flags = DISEASE_SPREAD_SPECIAL
visibility_flags = HIDDEN_SCANNER
bypasses_immunity = TRUE
/datum/disease/death_sandwich_poisoning/stage_act(seconds_per_tick, times_fired)
. = ..()
if(!.)
return
switch(stage)
if(1)
if(SPT_PROB(1.5, seconds_per_tick))
affected_mob.emote("cough")
if(SPT_PROB(0.5, seconds_per_tick))
affected_mob.emote("gag")
if(SPT_PROB(0.5, seconds_per_tick))
affected_mob.adjustToxLoss(5)
if(2)
if(SPT_PROB(5, seconds_per_tick))
affected_mob.emote("cough")
if(SPT_PROB(2.5, seconds_per_tick))
affected_mob.emote("gag")
if(SPT_PROB(1, seconds_per_tick))
to_chat(affected_mob, span_danger("Your body feels hot!"))
if(prob(20))
affected_mob.take_bodypart_damage(burn = 1)
if(SPT_PROB(3, seconds_per_tick))
affected_mob.adjustToxLoss(10)
if(3)
if(SPT_PROB(5, seconds_per_tick))
affected_mob.emote("gag")
if(SPT_PROB(10, seconds_per_tick))
affected_mob.emote("gasp")
if(SPT_PROB(2.5, seconds_per_tick))
affected_mob.vomit(20, TRUE)
if(SPT_PROB(2.5, seconds_per_tick))
to_chat(affected_mob, span_danger("Your body feels hot!"))
if(prob(60))
affected_mob.take_bodypart_damage(burn = 2)
if(SPT_PROB(6, seconds_per_tick))
affected_mob.adjustToxLoss(15)
if(SPT_PROB(1.5, seconds_per_tick))
to_chat(affected_mob, span_danger("You try to scream, but nothing comes out!"))
affected_mob.set_silence_if_lower(5 SECONDS)