From decfb768e2e3130db0577e95002b3f836d0eb9aa Mon Sep 17 00:00:00 2001 From: Chemlight Date: Wed, 23 Sep 2020 00:11:54 -0700 Subject: [PATCH] Lightweight trait A lightweight trait that was ported from skyrats, gives you twice the drunk power from drinks, watch what you down with each swig! --- code/__DEFINES/traits.dm | 1 + code/datums/traits/neutral.dm | 10 ++++++++++ .../reagents/chemistry/reagents/alcohol_reagents.dm | 2 ++ 3 files changed, 13 insertions(+) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index e7e63959..3c1ee35d 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -121,6 +121,7 @@ #define TRAIT_LAW_ENFORCEMENT_METABOLISM "law-enforcement-metabolism" #define TRAIT_STRONG_GRABBER "strong_grabber" #define TRAIT_CALCIUM_HEALER "calcium_healer" +#define TRAIT_ALCOHOL_LIGHTWEIGHT "alcohol_lightweight" //Skyrat port //non-mob traits #define TRAIT_PARALYSIS "paralysis" //Used for limb-based paralysis, where replacing the limb will fix it diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index 61b54ca7..527f00c4 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -109,3 +109,13 @@ mob_trait = TRAIT_HEADPAT_SLUT value = 0 medical_record_text = "Patient seems overly affectionate" + +//Skyrat port start +/datum/quirk/alcohol_lightweight + name = "Alcoholic Lightweight" + desc = "Alcohol really goes straight to your head, gotta be careful with what you drink." + value = 0 + mob_trait = TRAIT_ALCOHOL_LIGHTWEIGHT + gain_text = "You feel woozy thinking of alcohol." + lose_text = "You regain your stomach for drinks." +//Skyrat port stop \ No newline at end of file diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 744cd6e0..65230bd4 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -40,6 +40,8 @@ All effects don't start immediately, but rather get worse over time; the rate is var/booze_power = boozepwr if(HAS_TRAIT(C, TRAIT_ALCOHOL_TOLERANCE)) //we're an accomplished drinker booze_power *= 0.7 + else if(HAS_TRAIT(C, TRAIT_ALCOHOL_LIGHTWEIGHT)) //Skyrat port + booze_power *= 2 //Skyrat port C.drunkenness = max((C.drunkenness + (sqrt(volume) * booze_power * ALCOHOL_RATE)), 0) //Volume, power, and server alcohol rate effect how quickly one gets drunk var/obj/item/organ/liver/L = C.getorganslot(ORGAN_SLOT_LIVER) if (istype(L))