From d04d14532df3b73e1429d16e5d53c8e892ef892a Mon Sep 17 00:00:00 2001
From: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
Date: Wed, 15 Apr 2026 17:06:40 +0200
Subject: [PATCH] Fix Watches and Add Ashtrays Examine Hint (#22219)
fixes watches referring to bluespace during the roundend timer, ashtrays
not having a examine hint about emptying vs putting it into a disposal,
and ashtrays not giving a feedback message when trying to empty a empty
one.
fixes #22209 and fixes #22215.
---
code/game/objects/items/weapons/material/ashtray.dm | 4 ++++
code/modules/clothing/wrists/watches.dm | 4 ++--
code/modules/recycling/disposal.dm | 10 ++++++----
html/changelogs/SleepyGemmy-fixes.yml | 9 +++++++++
4 files changed, 21 insertions(+), 6 deletions(-)
create mode 100644 html/changelogs/SleepyGemmy-fixes.yml
diff --git a/code/game/objects/items/weapons/material/ashtray.dm b/code/game/objects/items/weapons/material/ashtray.dm
index cc109d66ba6..c6832f5e58f 100644
--- a/code/game/objects/items/weapons/material/ashtray.dm
+++ b/code/game/objects/items/weapons/material/ashtray.dm
@@ -134,6 +134,10 @@
update_icon()
return ..()
+/obj/item/material/ashtray/mechanics_hints(mob/user, distance, is_adjacent)
+ . += ..()
+ . += "Use help intent to empty into a disposal. Use harm intent to put into a disposal."
+
/obj/item/material/ashtray/plastic/Initialize(newloc, material_key)
. = ..(newloc, MATERIAL_PLASTIC)
diff --git a/code/modules/clothing/wrists/watches.dm b/code/modules/clothing/wrists/watches.dm
index f24c905871b..dde42a3cff9 100644
--- a/code/modules/clothing/wrists/watches.dm
+++ b/code/modules/clothing/wrists/watches.dm
@@ -96,8 +96,8 @@
if(wired && screwed)
to_chat(usr, SPAN_NOTICE("You check your watch, spotting a digital collection of numbers reading '[worldtime2text()]'. Today's date is '[time2text(world.time, "Month DD")]. [GLOB.game_year]'."))
- if (GLOB.evacuation_controller.get_status_panel_eta())
- to_chat(usr, SPAN_WARNING("Time until Bluespace Jump: [GLOB.evacuation_controller.get_status_panel_eta()]."))
+ if(GLOB.evacuation_controller.get_status_panel_eta())
+ to_chat(usr, SPAN_WARNING("Time until shift end: [GLOB.evacuation_controller.get_status_panel_eta()]."))
else if(wired && !screwed)
to_chat(usr, SPAN_NOTICE("You check your watch, realising it's still open."))
else
diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm
index c06e09d7427..a179ca95f89 100644
--- a/code/modules/recycling/disposal.dm
+++ b/code/modules/recycling/disposal.dm
@@ -210,10 +210,12 @@
update()
return TRUE
- else if (istype (attacking_item, /obj/item/material/ashtray) && user.a_intent != I_HURT)
+ else if(istype(attacking_item, /obj/item/material/ashtray) && user.a_intent != I_HURT) // If attacked with ashtray on harm intent.
var/obj/item/material/ashtray/A = attacking_item
- if(A.emptyout(src))
- user.visible_message("[user] pours [attacking_item] out into [src].", SPAN_NOTICE("You pour [attacking_item] out into [src]."))
+ if(A.emptyout(src)) // Ashtray has contents.
+ user.visible_message("[user] pours \the [attacking_item] out into \the [src].", SPAN_NOTICE("You pour \the [attacking_item] out into \the [src]."))
+ else // Ashtray has no contents.
+ to_chat(user, SPAN_NOTICE("\The [attacking_item] is empty."))
return TRUE
else if (istype (attacking_item, /obj/item/lightreplacer))
@@ -261,7 +263,7 @@
user.drop_from_inventory(attacking_item, src)
- user.visible_message("[user] places \the [attacking_item] into \the [src].", SPAN_NOTICE("You place \the [attacking_item] into the [src]."), range = 3)
+ user.visible_message("[user] places \the [attacking_item] into \the [src].", SPAN_NOTICE("You place \the [attacking_item] into \the [src]."), range = 3)
update()
/**
diff --git a/html/changelogs/SleepyGemmy-fixes.yml b/html/changelogs/SleepyGemmy-fixes.yml
new file mode 100644
index 00000000000..7142c13970f
--- /dev/null
+++ b/html/changelogs/SleepyGemmy-fixes.yml
@@ -0,0 +1,9 @@
+author: SleepyGemmy
+
+delete-after: True
+
+changes:
+ - bugfix: "Fixed watches referring to bluespace transfer during the round end timer."
+ - bugfix: "Fixed ashtrays not having a examine hint about emptying vs putting it into a disposal."
+ - bugfix: "Fixed ashtrays not giving a feedback message when trying to empty a empty one."
+ - bugfix: "Fixed a duplicate \"the\" when putting something inside a disposal."