From 2564f323fb89cfdefb07bc5c0ec450021c0bb402 Mon Sep 17 00:00:00 2001
From: LT3 <83487515+lessthnthree@users.noreply.github.com>
Date: Tue, 15 Apr 2025 21:00:04 -0700
Subject: [PATCH] Fix alcohol moodlet (#3522)
## About The Pull Request
Fix the alcohol status moodlet to work with our blood alcohol system.
## Changelog
:cl: LT3
fix: Mood will show your correct drunkenness status
/:cl:
---
code/datums/mood.dm | 12 ++++++++++++
.../code/alcohol_processing.dm | 18 +++++++++---------
2 files changed, 21 insertions(+), 9 deletions(-)
diff --git a/code/datums/mood.dm b/code/datums/mood.dm
index eb41971ad96..9d4ba4393c6 100644
--- a/code/datums/mood.dm
+++ b/code/datums/mood.dm
@@ -350,6 +350,8 @@
if(0 to NUTRITION_LEVEL_STARVING)
msg += "[span_boldwarning("I'm starving!")]
"
+ // BUBBER EDIT CHANGE BEGIN - ALCOHOL PROCESSING
+ /*
var/drunkness = mob_parent.get_drunk_amount()
if(drunkness >= 1)
msg += span_notice("My current drunkenness: ")
@@ -366,6 +368,16 @@
msg += "[span_warning("I'm feeling like a mess.")]
"
if(81 to INFINITY)
msg += "[span_boldwarning("I'm completely wasted.")]
"
+ */
+
+ var/drunkness = get_drunk_mood(mob_parent)
+ if(drunkness)
+ msg += span_notice("My current drunkenness: [drunkness]")
+ if(get_alcohol_processing(mob_parent))
+ msg += "[span_info(" I'm still processing what I drank...")]
"
+ else
+ msg += "
"
+ // BUBBER EDIT CHANGE END - ALCOHOL PROCESSING
msg += span_notice("My current sanity: ") //Long term
//ORIGINAL
diff --git a/modular_skyrat/modules/alcohol_processing/code/alcohol_processing.dm b/modular_skyrat/modules/alcohol_processing/code/alcohol_processing.dm
index 43b644f638d..72034481ad0 100644
--- a/modular_skyrat/modules/alcohol_processing/code/alcohol_processing.dm
+++ b/modular_skyrat/modules/alcohol_processing/code/alcohol_processing.dm
@@ -19,7 +19,7 @@
/datum/mood/proc/get_alcohol_processing(mob/user)
if(user.reagents.reagent_list.len)
for(var/datum/reagent/consumable/ethanol/booze in user.reagents.reagent_list)
- return span_notice("I'm still processing that alcohol I drank...\n")
+ return TRUE
/// Adds a moodlet entry based on the current blood alcohol content of the mob.
/datum/mood/proc/get_drunk_mood(mob/user)
@@ -27,21 +27,21 @@
var/blood_alcohol_content = target.get_blood_alcohol_content()
switch(blood_alcohol_content)
if(BAC_STAGE_1_ACTIVE to BAC_STAGE_2_WARN)
- return span_notice("Had a drink, time to relax!\n")
+ return span_info("Had a drink, time to relax!")
if(BAC_STAGE_2_WARN to BAC_STAGE_2_ACTIVE)
- return span_nicegreen("Now I'm starting to feel that drink.\n")
+ return span_nicegreen("Now I'm starting to feel that drink.")
if(BAC_STAGE_2_ACTIVE to BAC_STAGE_3_WARN)
- return span_nicegreen("A bit tipsy, this feels good!\n")
+ return span_nicegreen("A bit tipsy, this feels good!")
if(BAC_STAGE_3_WARN to BAC_STAGE_3_ACTIVE)
- return span_nicegreen("Those drinks are really starting to hit!\n")
+ return span_nicegreen("Those drinks are really starting to hit!")
if(BAC_STAGE_3_ACTIVE to BAC_STAGE_4_WARN)
- return span_nicegreen("I can't remember how many I've had, but I feel great!\n")
+ return span_nicegreen("I can't remember how many I've had, but I feel great!")
if(BAC_STAGE_4_WARN to BAC_STAGE_4_ACTIVE)
- return span_warning("I think I've had too much to drink... I should probably stop... drink some water...\n")
+ return span_warning("I think I've had too much to drink... I should probably stop... drink some water...")
if(BAC_STAGE_4_ACTIVE to BAC_STAGE_5_WARN)
- return span_bolddanger("I'm not feeling so hot...\n")
+ return span_bolddanger("I'm not feeling so hot...")
if(BAC_STAGE_5_WARN to INFINITY)
- return span_bolddanger("Is there a doctor around? I really don't feel good...\n")
+ return span_bolddanger("Is there a doctor around? I really don't feel good...")
#undef BAC_STAGE_1_ACTIVE
#undef BAC_STAGE_2_WARN