From f3486be2928f9881cac02acae806fc1f0965d215 Mon Sep 17 00:00:00 2001 From: Metis <100518708+sheepishgoat@users.noreply.github.com> Date: Thu, 19 Dec 2024 15:07:57 -0500 Subject: [PATCH] permafat damage --- GainStation13/code/mechanics/fatness.dm | 8 ++++++++ code/__DEFINES/combat.dm | 2 ++ code/modules/mob/living/carbon/human/species.dm | 2 ++ 3 files changed, 12 insertions(+) diff --git a/GainStation13/code/mechanics/fatness.dm b/GainStation13/code/mechanics/fatness.dm index b2c370571f..4315a6570a 100644 --- a/GainStation13/code/mechanics/fatness.dm +++ b/GainStation13/code/mechanics/fatness.dm @@ -275,3 +275,11 @@ GLOBAL_LIST_INIT(uncapped_resize_areas, list(/area/command/bridge, /area/mainten var/fat_to_add = ((amount * CONFIG_GET(number/damage_multiplier)) * FAT_DAMAGE_TO_FATNESS) adjust_fatness(fat_to_add, FATTENING_TYPE_WEAPON) return fat_to_add + +/mob/living/carbon/proc/applyPermaFatnessDamage(amount) + if(!client?.prefs?.weight_gain_permanent) // If we cant apply permafat, apply regular fat + return applyFatnessDamage(amount) + + var/fat_to_add = ((amount * CONFIG_GET(number/damage_multiplier)) * PERMA_FAT_DAMAGE_TO_FATNESS) + adjust_perma(fat_to_add, FATTENING_TYPE_WEAPON) + return fat_to_add diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 4629c4a954..785c83c322 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -277,5 +277,7 @@ // GS13 EDIT #define FAT "fat" +#define PERMA_FAT "perma_fat" /// What is the rate that one damage is converted to fatness? #define FAT_DAMAGE_TO_FATNESS 4 +#define PERMA_FAT_DAMAGE_TO_FATNESS 4 diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 5f2875df34..550d179583 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -2325,6 +2325,8 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) // GS13 EDIT if(FAT) H.applyFatnessDamage(damage * hit_percent) + if(PERMA_FAT) + H.applyPermaFatnessDamage(damage * hit_percent) return TRUE