mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 16:47:13 +01:00
[NO GBP] Fixes dumb usage of TRAIT_LIVERLESS_METABOLISM i caused (#76500)
## About The Pull Request TRAIT_LIVERLESS_METABOLISM should do what it implies, and make you always metabolize as if you were liverless. This was a stupid mistake on my part because I wasn't aware TRAIT_STABLELIVER was a thing. ## Why It's Good For The Game TRAIT_LIVERLESS_METABOLISM and TRAIT_STABLELIVER should not behave the exact same. ## Changelog Not quite player facing.
This commit is contained in:
@@ -277,19 +277,18 @@
|
||||
[advanced ? "<td><font color='#ff3333'>[CEILING(organ.damage,1)]</font></td>" : ""]\
|
||||
<td>[status]</td></tr>"
|
||||
|
||||
var/datum/species/the_dudes_species = humantarget.dna.species
|
||||
var/missing_organs = list()
|
||||
if(!humantarget.get_organ_slot(ORGAN_SLOT_BRAIN))
|
||||
missing_organs += "brain"
|
||||
if(!(TRAIT_NOBLOOD in the_dudes_species.inherent_traits) && !humantarget.get_organ_slot(ORGAN_SLOT_HEART))
|
||||
if(!HAS_TRAIT_FROM(humantarget, TRAIT_NOBLOOD, SPECIES_TRAIT) && !humantarget.get_organ_slot(ORGAN_SLOT_HEART))
|
||||
missing_organs += "heart"
|
||||
if(!(TRAIT_NOBREATH in the_dudes_species.inherent_traits) && !humantarget.get_organ_slot(ORGAN_SLOT_LUNGS))
|
||||
if(!HAS_TRAIT_FROM(humantarget, TRAIT_NOBREATH, SPECIES_TRAIT) && !humantarget.get_organ_slot(ORGAN_SLOT_LUNGS))
|
||||
missing_organs += "lungs"
|
||||
if(!(TRAIT_LIVERLESS_METABOLISM in the_dudes_species.inherent_traits) && !humantarget.get_organ_slot(ORGAN_SLOT_LIVER))
|
||||
if(!HAS_TRAIT_FROM(humantarget, TRAIT_LIVERLESS_METABOLISM, SPECIES_TRAIT) && !humantarget.get_organ_slot(ORGAN_SLOT_LIVER))
|
||||
missing_organs += "liver"
|
||||
if(the_dudes_species.mutantstomach && !humantarget.get_organ_slot(ORGAN_SLOT_STOMACH))
|
||||
if(!HAS_TRAIT_FROM(humantarget, TRAIT_NOHUNGER, SPECIES_TRAIT) && !humantarget.get_organ_slot(ORGAN_SLOT_STOMACH))
|
||||
missing_organs += "stomach"
|
||||
if(the_dudes_species.mutanttongue && !humantarget.get_organ_slot(ORGAN_SLOT_TONGUE))
|
||||
if(!humantarget.get_organ_slot(ORGAN_SLOT_TONGUE))
|
||||
missing_organs += "tongue"
|
||||
if(!humantarget.get_organ_slot(ORGAN_SLOT_EARS))
|
||||
missing_organs += "ears"
|
||||
|
||||
@@ -129,8 +129,7 @@
|
||||
/obj/item/organ/internal/liver/on_life(seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
//If your liver is failing, then we use the liverless version of metabolize
|
||||
//We don't check for TRAIT_NOMETABOLISM here because we do want a functional liver if somehow we have one inserted
|
||||
if(organ_flags & ORGAN_FAILING)
|
||||
if((organ_flags & ORGAN_FAILING) || HAS_TRAIT(owner, TRAIT_LIVERLESS_METABOLISM))
|
||||
owner.reagents.metabolize(owner, seconds_per_tick, times_fired, can_overdose = TRUE, liverless = TRUE)
|
||||
return
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
name = "mass of bones"
|
||||
desc = "You have no idea what this strange ball of bones does."
|
||||
icon_state = "liver-bone"
|
||||
organ_traits = list(TRAIT_LIVERLESS_METABOLISM)
|
||||
organ_traits = list(TRAIT_STABLELIVER)
|
||||
|
||||
/obj/item/organ/internal/liver/bone/handle_chemical(mob/living/carbon/organ_owner, datum/reagent/chem, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
|
||||
Reference in New Issue
Block a user