diff --git a/code/modules/reagents/withdrawal/generic_addictions.dm b/code/modules/reagents/withdrawal/generic_addictions.dm index 83cb16c7fc1..e809f9e5134 100644 --- a/code/modules/reagents/withdrawal/generic_addictions.dm +++ b/code/modules/reagents/withdrawal/generic_addictions.dm @@ -235,6 +235,7 @@ hallucination.cleanup() QDEL_NULL(hallucination2) +/* SKYRAT CHANGE, MOVED TO MODULAR. ///Nicotine /datum/addiction/nicotine name = "nicotine" @@ -259,3 +260,4 @@ affected_carbon.Jitter(15 * delta_time) if(DT_PROB(15, delta_time)) affected_carbon.emote("cough") +*/ diff --git a/modular_skyrat/master_files/code/modules/reagents/withdrawal/generic_addictions.dm b/modular_skyrat/master_files/code/modules/reagents/withdrawal/generic_addictions.dm new file mode 100644 index 00000000000..73df07de92b --- /dev/null +++ b/modular_skyrat/master_files/code/modules/reagents/withdrawal/generic_addictions.dm @@ -0,0 +1,47 @@ +/datum/addiction/nicotine + name = "nicotine" + addiction_relief_treshold = 0.03 //This used to be 0.01. + withdrawal_stage_messages = list("Feel like having a smoke...", "I really need a smoke now...", "I can't take it, I really need a smoke now!") + + medium_withdrawal_moodlet = /datum/mood_event/nicotine_withdrawal_moderate + severe_withdrawal_moodlet = /datum/mood_event/nicotine_withdrawal_severe + +/datum/addiction/nicotine/proc/trigger_random_side_effect(mob/living/carbon/affected_carbon, delta_time, strength) + switch(rand(1,10)) + if(1 to 3) + if(!HAS_TRAIT(affected_carbon, TRAIT_NOHUNGER)) + affected_carbon.adjust_nutrition(-delta_time*10*strength) + if(3 to 5) + affected_carbon.emote("cough") + if(5 to 7) + to_chat(affected_carbon, "Your head hurts.") + affected_carbon.adjustStaminaLoss(4*strength) + if(8) + if(strength>=2) + to_chat(affected_carbon, "You feel a little dizzy.") + affected_carbon.Dizzy(3*strength) + if(8 to 10) + to_chat(affected_carbon, "You feel tired.") + affected_carbon.adjustStaminaLoss(6*strength) + +/datum/addiction/nicotine/withdrawal_enters_stage_1(mob/living/carbon/affected_carbon, delta_time) + . = ..() + affected_carbon.Jitter(5 * delta_time) + +/datum/addiction/nicotine/withdrawal_enters_stage_2(mob/living/carbon/affected_carbon, delta_time) + . = ..() + affected_carbon.Jitter(10 * delta_time) + +/datum/addiction/nicotine/withdrawal_enters_stage_3(mob/living/carbon/affected_carbon, delta_time) + . = ..() + affected_carbon.Jitter(15 * delta_time) + +/datum/addiction/nicotine/withdrawal_stage_2_process(mob/living/carbon/affected_carbon, delta_time) + . = ..() + if(DT_PROB(3, delta_time)) + trigger_random_side_effect(affected_carbon,delta_time,1) + +/datum/addiction/nicotine/withdrawal_stage_3_process(mob/living/carbon/affected_carbon, delta_time) + . = ..() + if(DT_PROB(5, delta_time)) + trigger_random_side_effect(affected_carbon,delta_time,2) diff --git a/tgstation.dme b/tgstation.dme index 124976b3b4c..b1220832240 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3873,6 +3873,7 @@ #include "modular_skyrat\master_files\code\modules\projectiles\guns\ballistic\automatic.dm" #include "modular_skyrat\master_files\code\modules\projectiles\guns\ballistic\revolver.dm" #include "modular_skyrat\master_files\code\modules\reagents\chemistry\colors.dm" +#include "modular_skyrat\master_files\code\modules\reagents\withdrawal\generic_addictions.dm" #include "modular_skyrat\master_files\code\modules\research\designs\misc_designs.dm" #include "modular_skyrat\master_files\code\modules\shuttle\shuttle.dm" #include "modular_skyrat\master_files\code\modules\spells\wizard.dm" @@ -4672,12 +4673,12 @@ #include "modular_skyrat\modules\verbs\code\modules\mob\say.dm" #include "modular_skyrat\modules\verbs\code\modules\mob\subtle.dm" #include "modular_skyrat\modules\veteran_players\code\veteran_players.dm" +#include "modular_skyrat\modules\wrestlingring\code\game\objects\structures\wrestlingring.dm" #include "modular_skyrat\modules\xenoarch\code\modules\research\xenoarch\designs_and_tech.dm" #include "modular_skyrat\modules\xenoarch\code\modules\research\xenoarch\strange_rock.dm" #include "modular_skyrat\modules\xenoarch\code\modules\research\xenoarch\xenoarch_item.dm" #include "modular_skyrat\modules\xenoarch\code\modules\research\xenoarch\xenoarch_machine.dm" #include "modular_skyrat\modules\xenoarch\code\modules\research\xenoarch\xenoarch_reward.dm" #include "modular_skyrat\modules\xenoarch\code\modules\research\xenoarch\xenoarch_tool.dm" -#include "modular_skyrat\modules\wrestlingring\code\game\objects\structures\wrestlingring.dm" #include "modular_skyrat\modules\xenomorph\code\xenomorph_balance.dm" // END_INCLUDE