diff --git a/code/datums/mood_events/needs_events.dm b/code/datums/mood_events/needs_events.dm index dd5441476dc..93a8f186da6 100644 --- a/code/datums/mood_events/needs_events.dm +++ b/code/datums/mood_events/needs_events.dm @@ -76,6 +76,11 @@ mood_change = 4 timeout = 5 MINUTES +/datum/mood_event/shower_hater + description = "I hate being wet!" + mood_change = -2 + timeout = 3 MINUTES + /datum/mood_event/fresh_laundry description = "There's nothing like the feeling of a freshly laundered jumpsuit." mood_change = 2 diff --git a/code/datums/status_effects/neutral.dm b/code/datums/status_effects/neutral.dm index 8737cacede3..8aca00b288b 100644 --- a/code/datums/status_effects/neutral.dm +++ b/code/datums/status_effects/neutral.dm @@ -618,7 +618,7 @@ /atom/movable/screen/alert/status_effect/shower_regen/hater name = "Washing" desc = "Waaater... Fuck this WATER!!" - icon_state = "shower_regen_hater" + icon_state = "shower_regen_catgirl" /datum/status_effect/shower_regen id = "shower_regen" diff --git a/code/game/objects/structures/shower.dm b/code/game/objects/structures/shower.dm index 6c5435c1bfa..6cae493e57b 100644 --- a/code/game/objects/structures/shower.dm +++ b/code/game/objects/structures/shower.dm @@ -259,8 +259,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/shower, (-16)) return var/mob/living/living_target = target check_heat(living_target) - living_target.add_mood_event("shower", /datum/mood_event/nice_shower) living_target.apply_status_effect(/datum/status_effect/shower_regen) + if(!HAS_TRAIT(target, TRAIT_WATER_HATER) || HAS_TRAIT(target, TRAIT_WATER_ADAPTATION)) + living_target.add_mood_event("shower", /datum/mood_event/nice_shower) + else + living_target.add_mood_event("shower", /datum/mood_event/shower_hater) /** * Toggle whether shower is actually on and outputting water.