mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-25 06:00:16 +01:00
[MIRROR] Gibs/Dead bodies no longer produce miasma (#4444)
* Gibs/Dead bodies no longer produce miasma (#57957) * Gibs/Dead bodies no longer produce miasma Miasma production as it is now is too little over too long a time span, and it just ends up spreading across the station and having little effect. My goal here is to remove a source of uninteresting gas from the station's air, and make corpses and gib piles more infectious. I've placed the cap on disease payout at a strength of 7, so there's a slight chance of a positive disease, but I think it's counteracted by the danger presented by just infecting yourself till you get what you want. I've rewriten the rot component to just run a percent chance to infect someone with a disease based on the type of rot, and moved almost all of its behavior to signals. There's one portion I can't rewrite without making significant changes to how I handle atmos sensitivity, so that'll come later. Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com> * Gibs/Dead bodies no longer produce miasma Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
This commit is contained in:
co-authored by
Mothblocks
LemonInTheDark
parent
2ddbb74439
commit
cdfbf86d07
@@ -8,12 +8,15 @@
|
||||
bloodiness = BLOOD_AMOUNT_PER_DECAL
|
||||
beauty = -100
|
||||
clean_type = CLEAN_TYPE_BLOOD
|
||||
var/should_dry = TRUE
|
||||
var/dryname = "dried blood" //when the blood lasts long enough, it becomes dry and gets a new name
|
||||
var/drydesc = "Looks like it's been here a while. Eew." //as above
|
||||
var/drytime = 0
|
||||
|
||||
/obj/effect/decal/cleanable/blood/Initialize()
|
||||
/obj/effect/decal/cleanable/blood/Initialize(mapload)
|
||||
. = ..()
|
||||
if(!should_dry)
|
||||
return
|
||||
if(bloodiness)
|
||||
start_drying()
|
||||
else
|
||||
@@ -98,15 +101,13 @@
|
||||
. = ..()
|
||||
reagents.add_reagent(/datum/reagent/liquidgibs, 5)
|
||||
RegisterSignal(src, COMSIG_MOVABLE_PIPE_EJECTING, .proc/on_pipe_eject)
|
||||
if(mapload) //Don't rot at roundstart for the love of god
|
||||
return
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs/replace_decal(obj/effect/decal/cleanable/C)
|
||||
return FALSE //Never fail to place us
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs/dry()
|
||||
. = ..()
|
||||
AddComponent(/datum/component/rot/gibs)
|
||||
AddComponent(/datum/component/rot, 0, 0.7)
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs/ex_act(severity, target)
|
||||
return FALSE
|
||||
@@ -169,6 +170,7 @@
|
||||
desc = "Space Jesus, why didn't anyone clean this up? They smell terrible."
|
||||
icon_state = "gib1-old"
|
||||
bloodiness = 0
|
||||
should_dry = FALSE
|
||||
dryname = "old rotting gibs"
|
||||
drydesc = "Space Jesus, why didn't anyone clean this up? They smell terrible."
|
||||
|
||||
@@ -177,6 +179,7 @@
|
||||
setDir(pick(1,2,4,8))
|
||||
add_blood_DNA(list("Non-human DNA" = random_blood_type()))
|
||||
AddElement(/datum/element/swabable, CELL_LINE_TABLE_SLUDGE, CELL_VIRUS_TABLE_GENERIC, rand(2,4), 10)
|
||||
dry()
|
||||
|
||||
/obj/effect/decal/cleanable/blood/drip
|
||||
name = "drips of blood"
|
||||
|
||||
Reference in New Issue
Block a user