From d5cc576efbc564de6a8a2abd6cdd3e56164e1394 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Fri, 15 Oct 2021 19:41:35 +0200 Subject: [PATCH] [MIRROR] Drowsiness refactor [MDB IGNORE] (#8836) * Drowsiness refactor (#62104) Creates two procs in /mob/status_procs for handling drowsiness changes (with check for negative values), and refactors all code to use these procs instead of assigning values to the mob's drowsiness themselves. * Drowsiness refactor * Fixing more stuff in our code Co-authored-by: thatoneplebeian <67017991+thatoneplebeian@users.noreply.github.com> Co-authored-by: GoldenAlpharex --- code/datums/brain_damage/severe.dm | 2 +- .../diseases/advance/symptoms/narcolepsy.dm | 6 ++-- .../diseases/advance/symptoms/sensory.dm | 4 +-- code/game/objects/items/grenades/hypno.dm | 2 +- code/game/objects/structures/watercloset.dm | 4 +-- .../abductor/equipment/abduction_gear.dm | 4 +-- code/modules/assembly/flash.dm | 4 +-- code/modules/mining/fulton.dm | 2 +- code/modules/mob/living/carbon/life.dm | 2 +- code/modules/mob/living/damage_procs.dm | 2 +- code/modules/mob/living/living.dm | 2 +- code/modules/mob/status_procs.dm | 15 ++++++++- .../chemistry/reagents/alcohol_reagents.dm | 4 +-- .../reagents/cat2_medicine_reagents.dm | 4 +-- .../chemistry/reagents/drink_reagents.dm | 32 +++++++++---------- .../chemistry/reagents/drug_reagents.dm | 2 +- .../chemistry/reagents/medicine_reagents.dm | 14 ++++---- .../chemistry/reagents/other_reagents.dm | 10 +++--- .../chemistry/reagents/toxin_reagents.dm | 4 +-- .../nanites/nanite_programs/suppression.dm | 2 +- code/modules/surgery/organs/liver.dm | 6 ++-- .../morenarcotics/chemistry/reagents/opium.dm | 2 +- .../chemistry/reagents/quaalude.dm | 2 +- .../morenarcotics/chemistry/reagents/thc.dm | 2 +- 24 files changed, 73 insertions(+), 60 deletions(-) diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index 425a0f75b25..9a603b4abe8 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -138,7 +138,7 @@ owner.Sleeping(60) else if(!owner.drowsyness && DT_PROB(sleep_chance, delta_time)) to_chat(owner, span_warning("You feel tired...")) - owner.drowsyness += 10 + owner.adjust_drowsyness(10) /datum/brain_trauma/severe/monophobia name = "Monophobia" diff --git a/code/datums/diseases/advance/symptoms/narcolepsy.dm b/code/datums/diseases/advance/symptoms/narcolepsy.dm index a75e4adcd8e..3ef34d5999d 100644 --- a/code/datums/diseases/advance/symptoms/narcolepsy.dm +++ b/code/datums/diseases/advance/symptoms/narcolepsy.dm @@ -52,7 +52,7 @@ Bonus if(prob(50)) to_chat(M, span_warning("You try to focus on staying awake.")) if(M.drowsyness < 70) - M.drowsyness += 5 + M.adjust_drowsyness(5) if(4) if(prob(50)) if(yawning) @@ -60,7 +60,7 @@ Bonus else to_chat(M, span_warning("You nod off for a moment.")) //you can't really yawn while nodding off, can you? if(M.drowsyness < 70) - M.drowsyness += 10 + M.adjust_drowsyness(10) if(yawning) M.emote("yawn") if(M.CanSpreadAirborneDisease()) @@ -69,7 +69,7 @@ Bonus if(prob(50)) to_chat(M, span_warning("[pick("So tired...","You feel very sleepy.","You have a hard time keeping your eyes open.","You try to stay awake.")]")) if(M.drowsyness < 70) - M.drowsyness += 40 + M.adjust_drowsyness(40) if(yawning) M.emote("yawn") if(M.CanSpreadAirborneDisease()) diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index ab3a62bc97a..5a9423c81a9 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -37,7 +37,7 @@ if(A.stage >= 3) M.dizziness = max(0, M.dizziness - 2) - M.drowsyness = max(0, M.drowsyness - 2) + M.adjust_drowsyness(-2) M.slurring = max(0, M.slurring - 2) M.set_confusion(max(0, M.get_confusion() - 2)) if(purge_alcohol) @@ -47,7 +47,7 @@ H.drunkenness = max(H.drunkenness - 5, 0) if(A.stage >= 4) - M.drowsyness = max(0, M.drowsyness - 2) + M.adjust_drowsyness(-2) if(M.reagents.has_reagent(/datum/reagent/toxin/mindbreaker)) M.reagents.remove_reagent(/datum/reagent/toxin/mindbreaker, 5) if(M.reagents.has_reagent(/datum/reagent/toxin/histamine)) diff --git a/code/game/objects/items/grenades/hypno.dm b/code/game/objects/items/grenades/hypno.dm index 847d749a367..a9da83b3d65 100644 --- a/code/game/objects/items/grenades/hypno.dm +++ b/code/game/objects/items/grenades/hypno.dm @@ -64,4 +64,4 @@ to_chat(C, span_hypnophrase("The light is so pretty...")) C.add_confusion(min(C.get_confusion() + 10, 20)) C.dizziness += min(C.dizziness + 10, 20) - C.drowsyness += min(C.drowsyness + 10, 20) + C.adjust_drowsyness(min(C.drowsyness + 10, 20)) diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 136b309cd92..da3771a46b3 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -330,7 +330,7 @@ begin_reclamation() if(washing_face) SEND_SIGNAL(user, COMSIG_COMPONENT_CLEAN_FACE_ACT, CLEAN_WASH) - user.drowsyness = max(user.drowsyness - rand(2,3), 0) //Washing your face wakes you up if you're falling asleep + user.adjust_drowsyness(rand(-2, -3)) //Washing your face wakes you up if you're falling asleep else if(ishuman(user)) var/mob/living/carbon/human/human_user = user if(!human_user.wash_hands(CLEAN_WASH)) @@ -544,7 +544,7 @@ if(washing_face) SEND_SIGNAL(user, COMSIG_COMPONENT_CLEAN_FACE_ACT, CLEAN_WASH) - user.drowsyness = max(user.drowsyness - rand(2,3), 0) //Washing your face wakes you up if you're falling asleep + user.adjust_drowsyness(rand(-2, -3)) //Washing your face wakes you up if you're falling asleep else if(ishuman(user)) var/mob/living/carbon/human/human_user = user if(!human_user.wash_hands(CLEAN_WASH)) diff --git a/code/modules/antagonists/abductor/equipment/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm index de3505a4214..32be980042a 100644 --- a/code/modules/antagonists/abductor/equipment/abduction_gear.dm +++ b/code/modules/antagonists/abductor/equipment/abduction_gear.dm @@ -541,7 +541,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} to_chat(user, span_warning("The specimen's tinfoil protection is interfering with the sleep inducement!")) L.visible_message(span_danger("[user] tried to induced sleep in [L] with [src], but [L.p_their()] tinfoil protection [L.p_them()]!"), \ span_userdanger("You feel a strange wave of heavy drowsiness wash over you, but your tinfoil protection deflects most of it!")) - L.drowsyness += 2 + L.adjust_drowsyness(2) return L.visible_message(span_danger("[user] induces sleep in [L] with [src]!"), \ span_userdanger("You suddenly feel very drowsy!")) @@ -553,7 +553,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} L.visible_message(span_danger("[user] tried to induce sleep in [L] with [src], but [L.p_their()] tinfoil protection completely protected [L.p_them()]!"), \ span_userdanger("Any sense of drowsiness is quickly diminished as your tinfoil protection deflects the effects!")) return - L.drowsyness += 1 + L.adjust_drowsyness(1) to_chat(user, span_warning("Sleep inducement works fully only on stunned specimens! ")) L.visible_message(span_danger("[user] tried to induce sleep in [L] with [src]!"), \ span_userdanger("You suddenly feel drowsy!")) diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index 6121ec491b5..410f36b7c0c 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -400,7 +400,7 @@ to_chat(M, span_hypnophrase("The light makes you feel oddly relaxed...")) M.add_confusion(min(M.get_confusion() + 10, 20)) M.dizziness += min(M.dizziness + 10, 20) - M.drowsyness += min(M.drowsyness + 10, 20) + M.adjust_drowsyness(min(M.drowsyness+10, 20)) M.apply_status_effect(STATUS_EFFECT_PACIFY, 100) else M.apply_status_effect(/datum/status_effect/trance, 200, TRUE) @@ -414,7 +414,7 @@ to_chat(M, span_notice("Such a pretty light...")) M.add_confusion(min(M.get_confusion() + 4, 20)) M.dizziness += min(M.dizziness + 4, 20) - M.drowsyness += min(M.drowsyness + 4, 20) + M.adjust_drowsyness(min(M.drowsyness+4, 20)) M.apply_status_effect(STATUS_EFFECT_PACIFY, 40) #undef CONFUSION_STACK_MAX_MULTIPLIER diff --git a/code/modules/mining/fulton.dm b/code/modules/mining/fulton.dm index 51b61ff47df..8e0afab7eee 100644 --- a/code/modules/mining/fulton.dm +++ b/code/modules/mining/fulton.dm @@ -113,7 +113,7 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons) if(ishuman(A)) var/mob/living/carbon/human/L = A L.SetUnconscious(0) - L.drowsyness = 0 + L.set_drowsyness(0) L.SetSleeping(0) sleep(30) var/list/flooring_near_beacon = list() diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 778b4590588..fbca92c1918 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -546,7 +546,7 @@ All effects don't start immediately, but rather get worse over time; the rate is dizziness = max(dizziness - (restingpwr * delta_time), 0) if(drowsyness) - drowsyness = max(drowsyness - (restingpwr * delta_time), 0) + adjust_drowsyness(-1 * restingpwr * delta_time) blur_eyes(1 * delta_time) if(DT_PROB(2.5, delta_time)) AdjustSleeping(100) diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index f4104151da6..8a8b726b69b 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -115,7 +115,7 @@ if(EFFECT_EYE_BLUR) blur_eyes(effect * hit_percent) if(EFFECT_DROWSY) - drowsyness = max(drowsyness,(effect * hit_percent)) + adjust_drowsyness(effect * hit_percent) if(EFFECT_JITTER) if((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) jitteriness = max(jitteriness,(effect * hit_percent)) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 1a62500cf01..d5ba838b99e 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -806,7 +806,7 @@ fire_stacks = 0 set_confusion(0) dizziness = 0 - drowsyness = 0 + set_drowsyness(0) stuttering = 0 slurring = 0 jitteriness = 0 diff --git a/code/modules/mob/status_procs.dm b/code/modules/mob/status_procs.dm index abccf21de41..03e32377dc6 100644 --- a/code/modules/mob/status_procs.dm +++ b/code/modules/mob/status_procs.dm @@ -1,6 +1,6 @@ //Here are the procs used to modify status effects of a mob. -//The effects include: stun, knockdown, unconscious, sleeping, resting, jitteriness, dizziness, ear damage, +//The effects include: stun, knockdown, unconscious, sleeping, resting, jitteriness, dizziness, drowsyness, ear damage, // eye damage, eye_blind, eye_blurry, druggy, TRAIT_BLIND trait, and TRAIT_NEARSIGHT trait. ///Set the jitter of a mob @@ -19,6 +19,19 @@ /mob/proc/set_dizziness(amount) dizziness = max(amount, 0) +/** +* Set drowsyness of a mob to passed value +*/ +/mob/proc/set_drowsyness(amount) + drowsyness = max(amount, 0) + +/** + * Adds passed value to the drowsyness of a mob + */ +/mob/proc/adjust_drowsyness(amount) + drowsyness = max(drowsyness + amount, 0) + + ///Blind a mobs eyes by amount /mob/proc/blind_eyes(amount) adjust_blindness(amount) diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 4472e1fccea..aa5dcea3b08 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -169,7 +169,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/kahlua/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 * REM * delta_time), 0) + M.adjust_drowsyness(-3 * REM * delta_time) M.AdjustSleeping(-40 * REM * delta_time) if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.Jitter(5) @@ -230,7 +230,7 @@ All effects don't start immediately, but rather get worse over time; the rate is chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/consumable/ethanol/thirteenloko/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness = max(M.drowsyness - (7 * REM * delta_time), 0) + M.adjust_drowsyness(-7 * REM * delta_time) M.AdjustSleeping(-40 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) diff --git a/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm index 6b185838d80..64dc605a9c8 100644 --- a/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm @@ -135,7 +135,7 @@ /datum/reagent/medicine/c2/probital/overdose_process(mob/living/M, delta_time, times_fired) M.adjustStaminaLoss(3 * REM * delta_time, 0) if(M.getStaminaLoss() >= 80) - M.drowsyness += 1 * REM * delta_time + M.adjust_drowsyness(1 * REM * delta_time) if(M.getStaminaLoss() >= 100) to_chat(M,span_warning("You feel more tired than you usually do, perhaps if you rest your eyes for a bit...")) M.adjustStaminaLoss(-100, TRUE) @@ -282,7 +282,7 @@ M.adjustOxyLoss(-3 * REM * delta_time * normalise_creation_purity()) M.adjustStaminaLoss(2 * REM * delta_time) if(drowsycd && COOLDOWN_FINISHED(src, drowsycd)) - M.drowsyness += 10 + M.adjust_drowsyness(10) COOLDOWN_START(src, drowsycd, 45 SECONDS) else if(!drowsycd) COOLDOWN_START(src, drowsycd, 15 SECONDS) diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index e049773fb2e..f50ee274361 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -289,7 +289,7 @@ /datum/reagent/consumable/coffee/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 * REM * delta_time), 0) + M.adjust_drowsyness(-3 * REM * delta_time) M.AdjustSleeping(-40 * REM * delta_time) //310.15 is the normal bodytemp. M.adjust_bodytemperature(25 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, 0, M.get_body_temp_normal()) @@ -312,7 +312,7 @@ /datum/reagent/consumable/tea/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (2 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (1 * REM * delta_time), 0) + M.adjust_drowsyness(-1 * REM * delta_time) M.jitteriness = max(M.jitteriness - (3 * REM * delta_time), 0) M.AdjustSleeping(-20 * REM * delta_time) if(M.getToxLoss() && DT_PROB(10, delta_time)) @@ -364,7 +364,7 @@ /datum/reagent/consumable/icecoffee/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 * REM * delta_time), 0) + M.adjust_drowsyness(-3 * REM * delta_time) M.AdjustSleeping(-40 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) M.Jitter(5 * REM * delta_time) @@ -384,7 +384,7 @@ /datum/reagent/consumable/hot_ice_coffee/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 * REM * delta_time), 0) + M.adjust_drowsyness(-3 * REM * delta_time) M.AdjustSleeping(-60 * REM * delta_time) M.adjust_bodytemperature(-7 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) M.Jitter(5 * REM * delta_time) @@ -405,7 +405,7 @@ /datum/reagent/consumable/icetea/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (2 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (1 * REM * delta_time), 0) + M.adjust_drowsyness(-1 * REM * delta_time) M.AdjustSleeping(-40 * REM * delta_time) if(M.getToxLoss() && DT_PROB(10, delta_time)) M.adjustToxLoss(-1, 0) @@ -424,7 +424,7 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/consumable/space_cola/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness = max(M.drowsyness - (5 * REM * delta_time), 0) + M.adjust_drowsyness(-5 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -451,7 +451,7 @@ M.Jitter(20 * REM * delta_time) M.set_drugginess(30 * REM * delta_time) M.dizziness += 1.5 * REM * delta_time - M.drowsyness = 0 + M.set_drowsyness(0) M.AdjustSleeping(-40 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -479,7 +479,7 @@ /datum/reagent/consumable/grey_bull/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.Jitter(20 * REM * delta_time) M.dizziness += 1 * REM * delta_time - M.drowsyness = 0 + M.set_drowsyness(0) M.AdjustSleeping(-40 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -495,7 +495,7 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/consumable/spacemountainwind/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness = max(M.drowsyness - (7 * REM * delta_time), 0) + M.adjust_drowsyness(-7 * REM * delta_time) M.AdjustSleeping(-20 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) M.Jitter(5 * REM * delta_time) @@ -513,7 +513,7 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/consumable/dr_gibb/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness = max(M.drowsyness - (6 * REM * delta_time), 0) + M.adjust_drowsyness(-6 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -606,7 +606,7 @@ /datum/reagent/consumable/sodawater/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 * REM * delta_time), 0) + M.adjust_drowsyness(-3 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -622,7 +622,7 @@ /datum/reagent/consumable/tonic/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 * REM * delta_time), 0) + M.adjust_drowsyness(-3 * REM * delta_time) M.AdjustSleeping(-40 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -642,7 +642,7 @@ /datum/reagent/consumable/monkey_energy/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.Jitter(40 * REM * delta_time) M.dizziness += 1 * REM * delta_time - M.drowsyness = 0 + M.set_drowsyness(0) M.AdjustSleeping(-40 * REM * delta_time) M.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, M.get_body_temp_normal()) ..() @@ -690,7 +690,7 @@ /datum/reagent/consumable/soy_latte/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (3 *REM * delta_time), 0) + M.adjust_drowsyness(-3 *REM * delta_time) M.SetSleeping(0) M.adjust_bodytemperature(5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, 0, M.get_body_temp_normal()) M.Jitter(5 * REM * delta_time) @@ -713,7 +713,7 @@ /datum/reagent/consumable/cafe_latte/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = max(M.dizziness - (5 * REM * delta_time), 0) - M.drowsyness = max(M.drowsyness - (6 * REM * delta_time), 0) + M.adjust_drowsyness(-6 * REM * delta_time) M.SetSleeping(0) M.adjust_bodytemperature(5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * delta_time, 0, M.get_body_temp_normal()) M.Jitter(5 * REM * delta_time) @@ -1024,7 +1024,7 @@ if(M.druggy < 3) M.adjust_drugginess(1 * REM * delta_time) if(M.drowsyness < 3) - M.drowsyness += 1 * REM * delta_time + M.adjust_drowsyness(1 * REM * delta_time) return ..() /datum/reagent/consumable/mushroom_tea diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index d59d0be24da..11e30658203 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -758,7 +758,7 @@ kronkaine_fiend.adjustOrganLoss(ORGAN_SLOT_HEART, 0.4 * REM * delta_time) kronkaine_fiend.Jitter(10 * REM * delta_time) kronkaine_fiend.AdjustSleeping(-20 * REM * delta_time) - kronkaine_fiend.drowsyness = max(kronkaine_fiend.drowsyness - (5 * REM * delta_time), 0) + kronkaine_fiend.adjust_drowsyness(-5 * REM * delta_time) if(volume < 10) return for(var/possible_purger in kronkaine_fiend.reagents.reagent_list) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 513252b1775..997636d50fe 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -83,7 +83,7 @@ M.silent = FALSE M.dizziness = 0 M.disgust = 0 - M.drowsyness = 0 + M.set_drowsyness(0) M.stuttering = 0 M.slurring = 0 M.jitteriness = 0 @@ -119,7 +119,7 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/medicine/synaptizine/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness = max(M.drowsyness - (5 * REM * delta_time), 0) + M.adjust_drowsyness(-5 * REM * delta_time) M.AdjustStun(-20 * REM * delta_time) M.AdjustKnockdown(-20 * REM * delta_time) M.AdjustUnconscious(-20 * REM * delta_time) @@ -141,7 +141,7 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/medicine/synaphydramine/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness = max(M.drowsyness - (5 * REM * delta_time), 0) + M.adjust_drowsyness(-5 * REM * delta_time) if(holder.has_reagent(/datum/reagent/toxin/mindbreaker)) holder.remove_reagent(/datum/reagent/toxin/mindbreaker, 5 * REM * delta_time) if(holder.has_reagent(/datum/reagent/toxin/histamine)) @@ -575,7 +575,7 @@ /datum/reagent/medicine/diphenhydramine/on_mob_life(mob/living/carbon/M, delta_time, times_fired) if(DT_PROB(5, delta_time)) - M.drowsyness++ + M.adjust_drowsyness(1) M.jitteriness -= 1 * REM * delta_time holder.remove_reagent(/datum/reagent/toxin/histamine, 3 * REM * delta_time) ..() @@ -610,7 +610,7 @@ if(11) to_chat(M, span_warning("You start to feel tired...") ) if(12 to 24) - M.drowsyness += 1 * REM * delta_time + M.adjust_drowsyness(1 * REM * delta_time) if(24 to INFINITY) M.Sleeping(40 * REM * delta_time) . = TRUE @@ -981,7 +981,7 @@ /datum/reagent/medicine/antihol/on_mob_life(mob/living/carbon/M, delta_time, times_fired) M.dizziness = 0 - M.drowsyness = 0 + M.set_drowsyness(0) M.slurring = 0 M.set_confusion(0) M.reagents.remove_all_type(/datum/reagent/consumable/ethanol, 3 * REM * delta_time * normalise_creation_purity(), FALSE, TRUE) @@ -1182,7 +1182,7 @@ /datum/reagent/medicine/haloperidol/on_mob_life(mob/living/carbon/M, delta_time, times_fired) for(var/datum/reagent/drug/R in M.reagents.reagent_list) M.reagents.remove_reagent(R.type, 5 * REM * delta_time) - M.drowsyness += 2 * REM * delta_time + M.adjust_drowsyness(2 * REM * delta_time) if(M.jitteriness >= 3) M.jitteriness -= 3 * REM * delta_time if (M.hallucination >= 5) diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index 28de3dd7c13..fc7fca07559 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -352,7 +352,7 @@ /datum/reagent/fuel/unholywater/on_mob_life(mob/living/carbon/M, delta_time, times_fired) if(IS_CULTIST(M)) - M.drowsyness = max(M.drowsyness - (5* REM * delta_time), 0) + M.adjust_drowsyness(-5* REM * delta_time) M.AdjustAllImmobility(-40 *REM* REM * delta_time) M.adjustStaminaLoss(-10 * REM * delta_time, 0) M.adjustToxLoss(-2 * REM * delta_time, 0) @@ -1224,7 +1224,7 @@ if(DT_PROB(55, delta_time)) M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2) if(DT_PROB(30, delta_time)) - M.drowsyness = max(M.drowsyness, 3) + M.adjust_drowsyness(3) if(DT_PROB(5, delta_time)) M.emote("drool") ..() @@ -1375,10 +1375,10 @@ /datum/reagent/nitrous_oxide/expose_mob(mob/living/exposed_mob, methods=TOUCH, reac_volume) . = ..() if(methods & VAPOR) - exposed_mob.drowsyness += max(round(reac_volume, 1), 2) + exposed_mob.adjust_drowsyness(max(round(reac_volume, 1), 2)) /datum/reagent/nitrous_oxide/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - M.drowsyness += 2 * REM * delta_time + M.adjust_drowsyness(2 * REM * delta_time) if(ishuman(M)) var/mob/living/carbon/human/H = M H.blood_volume = max(H.blood_volume - (10 * REM * delta_time), 0) @@ -2697,7 +2697,7 @@ /datum/reagent/eldritch/on_mob_life(mob/living/carbon/M, delta_time, times_fired) if(IS_HERETIC(M)) - M.drowsyness = max(M.drowsyness - (5 * REM * delta_time), 0) + M.adjust_drowsyness(-5 * REM * delta_time) M.AdjustAllImmobility(-40 * REM * delta_time) M.adjustStaminaLoss(-10 * REM * delta_time, FALSE) M.adjustToxLoss(-2 * REM * delta_time, FALSE, forced = TRUE) diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index f954c075410..c5e54ea9202 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -254,7 +254,7 @@ switch(current_cycle) if(1 to 5) M.add_confusion(1 * REM * delta_time) - M.drowsyness += 1 * REM * delta_time + M.adjust_drowsyness(1 * REM * delta_time) M.slurring += 3 * REM * delta_time if(5 to 8) M.adjustStaminaLoss(40 * REM * delta_time, 0) @@ -447,7 +447,7 @@ switch(current_cycle) if(1 to 10) M.add_confusion(2 * REM * normalise_creation_purity() * delta_time) - M.drowsyness += 2 * REM * normalise_creation_purity() * delta_time + M.adjust_drowsyness(2 * REM * normalise_creation_purity() * delta_time) if(10 to 50) M.Sleeping(40 * REM * normalise_creation_purity() * delta_time) . = TRUE diff --git a/code/modules/research/nanites/nanite_programs/suppression.dm b/code/modules/research/nanites/nanite_programs/suppression.dm index 060e9c35795..493a20f0cab 100644 --- a/code/modules/research/nanites/nanite_programs/suppression.dm +++ b/code/modules/research/nanites/nanite_programs/suppression.dm @@ -10,7 +10,7 @@ /datum/nanite_program/sleepy/on_trigger(comm_message) to_chat(host_mob, span_warning("You start to feel very sleepy...")) - host_mob.drowsyness += 20 + host_mob.adjust_drowsyness(20) addtimer(CALLBACK(host_mob, /mob/living.proc/Sleeping, 200), rand(60,200)) /datum/nanite_program/paralyzing diff --git a/code/modules/surgery/organs/liver.dm b/code/modules/surgery/organs/liver.dm index cfbcd0fc353..7c5b867ddf5 100755 --- a/code/modules/surgery/organs/liver.dm +++ b/code/modules/surgery/organs/liver.dm @@ -140,13 +140,13 @@ if(2 * LIVER_FAILURE_STAGE_SECONDS to 3 * LIVER_FAILURE_STAGE_SECONDS - 1) owner.adjustToxLoss(0.4 * delta_time,forced = TRUE) - owner.drowsyness += 0.25 * delta_time + owner.adjust_drowsyness(0.25 * delta_time) owner.adjust_disgust(0.3 * delta_time) if(3 * LIVER_FAILURE_STAGE_SECONDS to 4 * LIVER_FAILURE_STAGE_SECONDS - 1) owner.adjustToxLoss(0.6 * delta_time,forced = TRUE) owner.adjustOrganLoss(pick(ORGAN_SLOT_HEART,ORGAN_SLOT_LUNGS,ORGAN_SLOT_STOMACH,ORGAN_SLOT_EYES,ORGAN_SLOT_EARS),0.2 * delta_time) - owner.drowsyness += 0.5 * delta_time + owner.adjust_drowsyness(0.5 * delta_time) owner.adjust_disgust(0.6 * delta_time) if(DT_PROB(1.5, delta_time)) @@ -155,7 +155,7 @@ if(4 * LIVER_FAILURE_STAGE_SECONDS to INFINITY) owner.adjustToxLoss(0.8 * delta_time,forced = TRUE) owner.adjustOrganLoss(pick(ORGAN_SLOT_HEART,ORGAN_SLOT_LUNGS,ORGAN_SLOT_STOMACH,ORGAN_SLOT_EYES,ORGAN_SLOT_EARS),0.5 * delta_time) - owner.drowsyness += 0.8 * delta_time + owner.adjust_drowsyness(0.8 * delta_time) owner.adjust_disgust(1.2 * delta_time) if(DT_PROB(3, delta_time)) diff --git a/modular_skyrat/modules/morenarcotics/chemistry/reagents/opium.dm b/modular_skyrat/modules/morenarcotics/chemistry/reagents/opium.dm index 08d19943895..23a8edeba54 100644 --- a/modular_skyrat/modules/morenarcotics/chemistry/reagents/opium.dm +++ b/modular_skyrat/modules/morenarcotics/chemistry/reagents/opium.dm @@ -25,7 +25,7 @@ /datum/reagent/drug/opium/overdose_process(mob/living/M, delta_time, times_fired) M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 0.5 * REM * delta_time) M.adjustToxLoss(1 * REM * delta_time, 0) - M.drowsyness += 0.5 * REM * normalise_creation_purity() * delta_time + M.adjust_drowsyness(0.5 * REM * normalise_creation_purity() * delta_time) ..() . = TRUE diff --git a/modular_skyrat/modules/morenarcotics/chemistry/reagents/quaalude.dm b/modular_skyrat/modules/morenarcotics/chemistry/reagents/quaalude.dm index 95656865bb9..8b51dea8be5 100644 --- a/modular_skyrat/modules/morenarcotics/chemistry/reagents/quaalude.dm +++ b/modular_skyrat/modules/morenarcotics/chemistry/reagents/quaalude.dm @@ -40,7 +40,7 @@ M.say("[kidfrombrooklyn_message]") M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 0.25 * REM * delta_time) M.adjustToxLoss(0.25 * REM * delta_time, 0) - M.drowsyness += 0.25 * REM * normalise_creation_purity() * delta_time + M.adjust_drowsyness(0.25 * REM * normalise_creation_purity() * delta_time) if(DT_PROB(3.5, delta_time)) M.emote("twitch") ..() diff --git a/modular_skyrat/modules/morenarcotics/chemistry/reagents/thc.dm b/modular_skyrat/modules/morenarcotics/chemistry/reagents/thc.dm index 885c206ef47..d5a488b45cd 100644 --- a/modular_skyrat/modules/morenarcotics/chemistry/reagents/thc.dm +++ b/modular_skyrat/modules/morenarcotics/chemistry/reagents/thc.dm @@ -46,7 +46,7 @@ var/cg420_message = pick("It's major...", "Oh my goodness...",) if(DT_PROB(1.5, delta_time)) M.say("[cg420_message]") - M.drowsyness += 0.1 * REM * normalise_creation_purity() * delta_time + M.adjust_drowsyness(0.1 * REM * normalise_creation_purity() * delta_time) if(DT_PROB(3.5, delta_time)) playsound(M, pick('modular_skyrat/master_files/sound/effects/lungbust_cough1.ogg','modular_skyrat/master_files/sound/effects/lungbust_cough2.ogg'), 50, TRUE) M.emote("cough")