From facaf588c6dd8f5d9979cd5295e82ce739957542 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 09:57:24 -0500 Subject: [PATCH 01/23] fino nerf --- code/modules/reagents/chemistry/reagents/drug_reagents.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 800228dabd73..7af6c67301ba 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -465,7 +465,7 @@ mood.mood_modifier += 1 if(ishuman(L)) var/mob/living/carbon/human/drugged = L - drugged.physiology.do_after_speed -= 0.5 + drugged.physiology.do_after_speed -= 0.4 /datum/reagent/drug/finobranc/on_mob_end_metabolize(mob/living/L) ..() @@ -474,7 +474,7 @@ mood.mood_modifier -= 1 if(ishuman(L)) var/mob/living/carbon/human/drugged = L - drugged.physiology.do_after_speed += 0.5 + drugged.physiology.do_after_speed += 0.4 /datum/reagent/drug/finobranc/overdose_process(mob/living/M) M.adjustOrganLoss(ORGAN_SLOT_HEART, 2) @@ -527,7 +527,7 @@ L.adjustOrganLoss(ORGAN_SLOT_HEART, 6) if(ishuman(L)) var/mob/living/carbon/human/drugged = L - drugged.physiology.do_after_speed -= 0.5 + drugged.physiology.do_after_speed -= 0.4 drugged.physiology.damage_resistance += 10 drugged.physiology.hunger_mod += 1 @@ -536,7 +536,7 @@ L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/shoalmix) if(ishuman(L)) var/mob/living/carbon/human/drugged = L - drugged.physiology.do_after_speed += 0.5 + drugged.physiology.do_after_speed += 0.4 drugged.physiology.damage_resistance -= 10 drugged.physiology.hunger_mod -= 1 From 1533e07b6ac17dbc06d37c6ec1617a88b73ffaf8 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 10:07:02 -0500 Subject: [PATCH 02/23] stasis drug --- code/__DEFINES/status_effects.dm | 1 + .../chemistry/reagents/medicine_reagents.dm | 23 ++++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/status_effects.dm b/code/__DEFINES/status_effects.dm index 9a7c477b8b14..e0b4e2aed38e 100644 --- a/code/__DEFINES/status_effects.dm +++ b/code/__DEFINES/status_effects.dm @@ -138,6 +138,7 @@ // Grouped effect sources, see also code/__DEFINES/traits.dm #define STASIS_MACHINE_EFFECT "stasis_machine" +#define STASIS_DRUG_EFFECT "stasis_drug" // Stasis helpers diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index d300851a1742..6c08f06da7b0 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -1167,7 +1167,7 @@ . = 1 /datum/reagent/medicine/stimulants - name = "Stimulants" + name = "Indoril" description = "Increases stun resistance and movement speed in addition to restoring minor damage and weakness. Overdose causes weakness and toxin damage." color = "#78008C" metabolization_rate = 0.5 * REAGENTS_METABOLISM @@ -2334,3 +2334,24 @@ if(prob(5)) M.adjustToxLoss(1) ..() + +/datum/reagent/medicine/stasis + name = "Stasis" + description = "A liquid blue chemical that causes the body to enter a chemically induced stasis, irregardless of current state." + reagent_state = LIQUID + color = "#51b5cb" //a nice blue + overdose_threshold = 0 + +/datum/reagent/medicine/stasis/expose_mob(mob/living/M, method=INJECT, reac_volume, show_message = 1) + if(method != INJECT) + return + if(iscarbon(M)) + var/stasis_duration = 20 SECONDS * reac_volume + to_chat(M, span_warning("Your body starts to slow down, sensation retreating from your limbs!")) + M.apply_status_effect(STATUS_EFFECT_STASIS, STASIS_DRUG_EFFECT) + addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/living, remove_status_effect), STATUS_EFFECT_STASIS, STASIS_DRUG_EFFECT), stasis_duration, TIMER_UNIQUE) + +/datum/reagent/medicine/stasis/on_mob_life(mob/living/carbon/M) + M.adjustToxLoss(1) + ..() + . = 1 From 4cf64338692b0e58d6c6672ffd309dab65844461 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 11:03:31 -0500 Subject: [PATCH 03/23] starlight/stardrop --- code/__DEFINES/traits.dm | 1 + code/_globalvars/traits.dm | 3 +- code/modules/mob/living/carbon/carbon.dm | 3 + .../mob/living/carbon/human/examine.dm | 2 + .../chemistry/reagents/drug_reagents.dm | 76 +++++++++++++++++++ 5 files changed, 84 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 37b66fc428c5..d0e248a719d1 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -342,6 +342,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_BADTOUCH "bad_touch" #define TRAIT_ANXIOUS "anxious" #define TRAIT_ANALGESIA "congenital_analgesia" +#define TRAIT_CLOUDED "clouded_eyes" /// Trait granted by lipstick #define LIPSTICK_TRAIT "lipstick_trait" diff --git a/code/_globalvars/traits.dm b/code/_globalvars/traits.dm index 9b007b60352c..43dccbbfccbb 100644 --- a/code/_globalvars/traits.dm +++ b/code/_globalvars/traits.dm @@ -150,7 +150,8 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_ANXIOUS" = TRAIT_ANXIOUS, "TRAIT_KISS_OF_DEATH" = TRAIT_KISS_OF_DEATH, "TRAIT_PLANT_SAFE" = TRAIT_PLANT_SAFE, - "TRAIT_AIMING" = TRAIT_AIMING + "TRAIT_AIMING" = TRAIT_AIMING, + "TRAIT_CLOUDED" = TRAIT_CLOUDED ), /obj/item/bodypart = list( "TRAIT_PARALYSIS" = TRAIT_PARALYSIS diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index bcf78e60c8d1..e5edb038fbce 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -582,6 +582,9 @@ if(!isnull(G.lighting_alpha)) lighting_alpha = min(lighting_alpha, G.lighting_alpha) + if(HAS_TRAIT(src, TRAIT_NIGHT_VISION)) + lighting_alpha = min(lighting_alpha, LIGHTING_PLANE_ALPHA_NV_TRAIT) + if(HAS_TRAIT(src, TRAIT_THERMAL_VISION)) sight |= (SEE_MOBS) lighting_alpha = min(lighting_alpha, LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index c4a447b59d5b..26b60d0e6e4c 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -100,6 +100,8 @@ if(!(ITEM_SLOT_EYES in obscured)) if(glasses) . += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes." + else if(HAS_TRAIT(src, TRAIT_CLOUDED)) + . += "[t_His] eyes are clouded in silver." //ears if(ears && !(ITEM_SLOT_EARS in obscured)) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 7af6c67301ba..2635d3dd7633 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -621,3 +621,79 @@ if(prob(2)) var/eepy_message = pick("You feel so, so tired.", "You stifle a yawn.", "You really ought to rest for a bit...", "It'd be nice to lay down a bit...","Being in a bed sounds wonderful, right now...","You shake your head to stay awake, but the feeling doesn't let up.","You really want to sleep next to someone...","You keep thinking about how nice a pillow would be, right now.") to_chat(M, span_notice("[eepy_message]")) + +/datum/reagent/drug/stardrop + name = "Stardrop" + description = "A vision-enhancing chemical that originated as a performance aid for industrial miners." + reagent_state = LIQUID + color = "#df71c7" //yeah its kinda pinkruple + overdose_threshold = 30 + addiction_threshold = 20 + metabolization_rate = 0.1 + var/vision_trait = TRAIT_NIGHT_VISION + +/datum/reagent/drug/stardrop/on_mob_metabolize(mob/living/L) + ..() + if(iscarbon(L)) + var/mob/living/carbon/drugged = L + ADD_TRAIT(drugged, vision_trait, type) + ADD_TRAIT(drugged, TRAIT_CLOUDED, type) + drugged.update_sight() + + +/datum/reagent/drug/stardrop/on_mob_end_metabolize(mob/living/L) + if(iscarbon(L)) + var/mob/living/carbon/drugged = L + REMOVE_TRAIT(drugged, vision_trait, type) + REMOVE_TRAIT(drugged, TRAIT_CLOUDED, type) + drugged.update_sight() + +/datum/reagent/drug/stardrop/on_mob_life(mob/living/carbon/M) + ..() + if(prob(5)) + M.blur_eyes(rand(5,12)) + +/datum/reagent/drug/stardrop/overdose_process(mob/living/M) + M.adjustOrganLoss(ORGAN_SLOT_EYES, 1) + if(prob(40)) + M.blur_eyes(rand(3,12)) + +/datum/reagent/drug/stardrop/addiction_act_stage1(mob/living/M) + if(prob(10)) + M.blur_eyes(rand(5,12)) + ..() + +/datum/reagent/drug/stardrop/addiction_act_stage2(mob/living/M) + if(prob(10)) + M.blur_eyes(rand(5,12)) + if(prob(4)) + M.confused += 10 + ..() + +/datum/reagent/drug/stardrop/addiction_act_stage3(mob/living/M) + if(prob(20)) + M.blur_eyes(rand(5,12)) + if(prob(4)) + M.confused += 10 + if(prob(1)) + M.adjustOrganLoss(ORGAN_SLOT_EYES, 5) + ..() + +/datum/reagent/drug/stardrop/addiction_act_stage4(mob/living/carbon/human/M) + if(prob(40)) + M.blur_eyes(rand(5,12)) + if(prob(8)) + M.confused += 10 + if(prob(5)) + M.adjustOrganLoss(ORGAN_SLOT_EYES, 3) + ..() + +/datum/reagent/drug/stardrop/starlight + name = "Starlight" + description = "A vision-enhancing chemical derived from stardrop. The original formula was a N+S recipe leaked by a GEC worker." + reagent_state = LIQUID + color = "#bc329e" + overdose_threshold = 17 + addiction_threshold = 11 + metabolization_rate = 0.2 + vision_trait = TRAIT_THERMAL_VISION From 553582d4c785a86eec8c6e4b1b54e5aa0c17f09f Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 11:15:03 -0500 Subject: [PATCH 04/23] remove krokodil --- code/__DEFINES/is_helpers.dm | 2 +- code/__DEFINES/mobs.dm | 1 - code/datums/traits/negative.dm | 2 +- .../objects/effects/spawners/random/exotic.dm | 1 - code/game/objects/items/cigs_lighters.dm | 2 +- code/game/objects/items/clown_items.dm | 2 +- code/modules/cargo/bounties/reagent.dm | 1 - .../food_and_drinks/food/snacks_pastry.dm | 2 +- code/modules/hydroponics/grown/cannabis.dm | 1 - code/modules/mob/living/carbon/human/human.dm | 3 -- .../carbon/human/species_types/zombies.dm | 17 ------- .../chemistry/reagents/drug_reagents.dm | 51 ------------------- .../reagents/chemistry/recipes/drugs.dm | 7 --- .../reagents/chemistry/recipes/others.dm | 2 +- .../reagents/reagent_containers/syringes.dm | 3 -- 15 files changed, 6 insertions(+), 91 deletions(-) diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index c5e0505487d2..d68f37c36252 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -74,7 +74,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list( #define iszombie(A) (is_species(A, /datum/species/zombie)) #define isskeleton(A) (is_species(A, /datum/species/skeleton)) #define ismoth(A) (is_species(A, /datum/species/moth)) -#define ishumanbasic(A) (is_species(A, /datum/species/human) && !is_species(A, /datum/species/human/krokodil_addict)) +#define ishumanbasic(A) (is_species(A, /datum/species/human)) #define iselzuose(A) (is_species(A, /datum/species/elzuose)) #define isvampire(A) (is_species(A,/datum/species/vampire)) #define isdullahan(A) (is_species(A, /datum/species/dullahan)) diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index 9b8514d8bea8..a1d8874fedc2 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -105,7 +105,6 @@ #define SPECIES_VAMPIRE "vampire" #define SPECIES_VOX "vox" #define SPECIES_ZOMBIE "zombie" -#define SPECIES_GOOFZOMBIE "krokodil_zombie" #define SPECIES_XENOMORPH "xenomorph" #define DIGITIGRADE_NEVER 0 diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 8673e7aa135f..90ff2592b65f 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -515,7 +515,7 @@ gain_text = "You suddenly feel the craving for drugs." lose_text = "You feel like you should kick your drug habit." medical_record_text = "Patient has a history of hard drugs." - var/drug_list = list(/datum/reagent/drug/crank, /datum/reagent/drug/krokodil, /datum/reagent/medicine/morphine, /datum/reagent/drug/happiness, /datum/reagent/drug/methamphetamine) //List of possible IDs + var/drug_list = list(/datum/reagent/drug/crank, /datum/reagent/medicine/morphine, /datum/reagent/drug/happiness, /datum/reagent/drug/methamphetamine) //List of possible IDs var/datum/reagent/reagent_type //!If this is defined, reagent_id will be unused and the defined reagent type will be instead. var/datum/reagent/reagent_instance //! actual instanced version of the reagent var/where_drug //! Where the drug spawned diff --git a/code/game/objects/effects/spawners/random/exotic.dm b/code/game/objects/effects/spawners/random/exotic.dm index 4e5e5ebfb021..5f0ef9f8ce1f 100644 --- a/code/game/objects/effects/spawners/random/exotic.dm +++ b/code/game/objects/effects/spawners/random/exotic.dm @@ -33,7 +33,6 @@ /obj/item/lighter = 3, /obj/item/storage/box/matches = 3, /obj/item/reagent_containers/syringe/contraband/space_drugs = 1, - /obj/item/reagent_containers/syringe/contraband/krokodil = 1, /obj/item/reagent_containers/syringe/contraband/crank = 1, /obj/item/reagent_containers/syringe/contraband/methamphetamine = 1, /obj/item/reagent_containers/syringe/contraband/bath_salts = 1, diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index a483cd46f166..35173d24899c 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -341,7 +341,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/cigarette/xeno desc = "A Xeno Filtered brand cigarette." - list_reagents = list (/datum/reagent/drug/nicotine = 20, /datum/reagent/medicine/regen_jelly = 15, /datum/reagent/drug/krokodil = 4) + list_reagents = list (/datum/reagent/drug/nicotine = 20, /datum/reagent/medicine/regen_jelly = 15) // Rollies. diff --git a/code/game/objects/items/clown_items.dm b/code/game/objects/items/clown_items.dm index 62c33aa9665a..0fac9962f803 100644 --- a/code/game/objects/items/clown_items.dm +++ b/code/game/objects/items/clown_items.dm @@ -84,7 +84,7 @@ /obj/item/paper/fluff/stations/soap name = "ancient janitorial poem" desc = "An old paper that has passed many hands." - default_raw_text = "The legend of the omega soap

Essence of potato. Juice, not grind.

A cactus brew, fermented into wine.

powder of monkey, to help the workload.

Some Krokodil, because meth would explode.

Nitric acid and Baldium, for organic dissolving.

A cup filled with Hooch, for sinful absolving

Some Bluespace Dust, for removal of stains.

A syringe full of Pump-up, it's security's bane.

Add a can of Space Cola, because we've been paid.

Heat as hot as you can, let the soap be your blade.

Ten units of each regent create a soap that could topple all others." + default_raw_text = "The legend of the omega soap

Essence of potato. Juice, not grind.

A cactus brew, fermented into wine.

powder of monkey, to help the workload.

Nitric acid and Baldium, for organic dissolving.

A cup filled with Hooch, for sinful absolving

Some Bluespace Dust, for removal of stains.

A syringe full of Pump-up, it's security's bane.

Add a can of Space Cola, because we've been paid.

Heat as hot as you can, let the soap be your blade.

Ten units of each regent create a soap that could topple all others." /obj/item/soap/proc/decreaseUses(mob/user) var/skillcheck = user.mind.get_skill_modifier(/datum/skill/cleaning, SKILL_SPEED_MODIFIER) diff --git a/code/modules/cargo/bounties/reagent.dm b/code/modules/cargo/bounties/reagent.dm index 0fcbbf4f1794..aa74618b5dc2 100644 --- a/code/modules/cargo/bounties/reagent.dm +++ b/code/modules/cargo/bounties/reagent.dm @@ -143,7 +143,6 @@ /datum/reagent/medicine/pen_acid,\ /datum/reagent/medicine/atropine,\ /datum/reagent/drug/aranesp,\ - /datum/reagent/drug/krokodil,\ /datum/reagent/drug/methamphetamine,\ /datum/reagent/teslium,\ /datum/reagent/toxin/anacea,\ diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index cd07ce9eb45d..1d85afb62c65 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -68,7 +68,7 @@ /obj/item/reagent_containers/food/snacks/donut/chaos/Initialize() . = ..() - extra_reagent = pick(/datum/reagent/consumable/nutriment, /datum/reagent/consumable/capsaicin, /datum/reagent/consumable/frostoil, /datum/reagent/drug/krokodil, /datum/reagent/toxin/plasma, /datum/reagent/consumable/coco, /datum/reagent/toxin/slimejelly, /datum/reagent/consumable/banana, /datum/reagent/consumable/berryjuice, /datum/reagent/medicine/omnizine) + extra_reagent = pick(/datum/reagent/consumable/nutriment, /datum/reagent/consumable/capsaicin, /datum/reagent/consumable/frostoil, /datum/reagent/toxin/plasma, /datum/reagent/consumable/coco, /datum/reagent/toxin/slimejelly, /datum/reagent/consumable/banana, /datum/reagent/consumable/berryjuice, /datum/reagent/medicine/omnizine) reagents.add_reagent(extra_reagent, 3) /obj/item/reagent_containers/food/snacks/donut/meat diff --git a/code/modules/hydroponics/grown/cannabis.dm b/code/modules/hydroponics/grown/cannabis.dm index a2ea84f03777..fabbe339e790 100644 --- a/code/modules/hydroponics/grown/cannabis.dm +++ b/code/modules/hydroponics/grown/cannabis.dm @@ -72,7 +72,6 @@ /datum/reagent/drug/methamphetamine = 0.15, /datum/reagent/drug/bath_salts = 0.15, /datum/reagent/drug/crank = 0.15, - /datum/reagent/drug/krokodil = 0.15, /datum/reagent/toxin/lipolicide = 0.15, /datum/reagent/drug/nicotine = 0.1) rarity = 69 diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index b33a751df628..bf7b9526f639 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1368,9 +1368,6 @@ /mob/living/carbon/human/species/zombie/infectious race = /datum/species/zombie/infectious -/mob/living/carbon/human/species/zombie/krokodil_addict - race = /datum/species/human/krokodil_addict - /mob/living/carbon/human/species/ipc race = /datum/species/ipc diff --git a/code/modules/mob/living/carbon/human/species_types/zombies.dm b/code/modules/mob/living/carbon/human/species_types/zombies.dm index c90cbd0dbc8f..58f735e6fa43 100644 --- a/code/modules/mob/living/carbon/human/species_types/zombies.dm +++ b/code/modules/mob/living/carbon/human/species_types/zombies.dm @@ -86,21 +86,4 @@ infection = new() infection.Insert(C) -// Your skin falls off -/datum/species/human/krokodil_addict - name = "\improper Human" - id = SPECIES_GOOFZOMBIE - examine_limb_id = SPECIES_HUMAN - sexes = 0 - meat = /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/zombie - mutanttongue = /obj/item/organ/tongue/zombie - changesource_flags = MIRROR_BADMIN | WABBAJACK | ERT_SPAWN - - species_chest = /obj/item/bodypart/chest/zombie - species_head = /obj/item/bodypart/head/zombie - species_l_arm = /obj/item/bodypart/l_arm/zombie - species_r_arm = /obj/item/bodypart/r_arm/zombie - species_l_leg = /obj/item/bodypart/leg/left/zombie - species_r_leg = /obj/item/bodypart/leg/right/zombie - #undef REGENERATION_DELAY diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 2635d3dd7633..eab908e9e4fe 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -111,57 +111,6 @@ ..() . = 1 -/datum/reagent/drug/krokodil - name = "Krokodil" - description = "Cools and calms you down. If overdosed it will deal significant Brain and Toxin damage. If addicted it will begin to deal fatal amounts of Brute damage as the subject's skin falls off." - reagent_state = LIQUID - color = "#0064B4" - overdose_threshold = 20 - addiction_threshold = 15 - - -/datum/reagent/drug/krokodil/on_mob_life(mob/living/carbon/M) - var/high_message = pick("You feel calm.", "You feel collected.", "You feel like you need to relax.") - if(prob(5)) - to_chat(M, "[high_message]") - SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "smacked out", /datum/mood_event/narcotic_heavy, name) - ..() - -/datum/reagent/drug/krokodil/overdose_process(mob/living/M) - M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 0.25*REM) - M.adjustToxLoss(0.25*REM, 0) - ..() - . = 1 - -/datum/reagent/drug/krokodil/addiction_act_stage1(mob/living/M) - M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2*REM) - M.adjustToxLoss(2*REM, 0) - ..() - . = 1 - -/datum/reagent/drug/krokodil/addiction_act_stage2(mob/living/M) - if(prob(25)) - to_chat(M, "Your skin feels loose...") - ..() - -/datum/reagent/drug/krokodil/addiction_act_stage3(mob/living/M) - if(prob(25)) - to_chat(M, "Your skin starts to peel away...") - M.adjustBruteLoss(3*REM, 0) - ..() - . = 1 - -/datum/reagent/drug/krokodil/addiction_act_stage4(mob/living/carbon/human/M) - CHECK_DNA_AND_SPECIES(M) - if(!istype(M.dna.species, /datum/species/human/krokodil_addict)) - to_chat(M, "Your skin falls off easily!") - M.adjustBruteLoss(50*REM, 0) // holy shit your skin just FELL THE FUCK OFF - M.set_species(/datum/species/human/krokodil_addict) - else - M.adjustBruteLoss(5*REM, 0) - ..() - . = 1 - /datum/reagent/drug/methamphetamine name = "Methamphetamine" description = "Reduces stun times by about 300%, speeds the user up, and allows the user to quickly recover stamina while dealing a small amount of Brain damage. If overdosed the subject will move randomly, drop items and suffer from Toxin and Brain damage. If addicted the subject will become dizzy, lose motor control and eventually suffer heavy toxin damage." diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index 104d099905b7..c53892dc1630 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -8,13 +8,6 @@ mix_message = "The mixture violently reacts, leaving behind a few crystalline shards." required_temp = 390 - -/datum/chemical_reaction/krokodil - results = list(/datum/reagent/drug/krokodil = 6) - required_reagents = list(/datum/reagent/medicine/diphenhydramine = 1, /datum/reagent/medicine/morphine = 1, /datum/reagent/space_cleaner = 1, /datum/reagent/potassium = 1, /datum/reagent/phosphorus = 1, /datum/reagent/fuel = 1) - mix_message = "The mixture dries into a pale blue powder." - required_temp = 380 - /datum/chemical_reaction/methamphetamine results = list(/datum/reagent/drug/methamphetamine = 4) required_reagents = list(/datum/reagent/medicine/ephedrine = 1, /datum/reagent/iodine = 1, /datum/reagent/phosphorus = 1, /datum/reagent/hydrogen = 1) diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index f996f8ddb539..10db6b100eb5 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -110,7 +110,7 @@ new /obj/item/soap(location) /datum/chemical_reaction/omegasoapification - required_reagents = list(/datum/reagent/consumable/potato_juice = 10, /datum/reagent/consumable/ethanol/lizardwine = 10, /datum/reagent/monkey_powder = 10, /datum/reagent/drug/krokodil = 10, /datum/reagent/toxin/acid/nitracid = 10, /datum/reagent/baldium = 10, /datum/reagent/consumable/ethanol/hooch = 10, /datum/reagent/bluespace = 10, /datum/reagent/drug/pumpup = 10, /datum/reagent/consumable/space_cola = 10) + required_reagents = list(/datum/reagent/consumable/potato_juice = 10, /datum/reagent/consumable/ethanol/lizardwine = 10, /datum/reagent/monkey_powder = 10, /datum/reagent/toxin/acid/nitracid = 10, /datum/reagent/baldium = 10, /datum/reagent/consumable/ethanol/hooch = 10, /datum/reagent/bluespace = 10, /datum/reagent/drug/pumpup = 10, /datum/reagent/consumable/space_cola = 10) required_temp = 999 mob_react = FALSE diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 3241695c7e78..9584628d03b1 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -282,9 +282,6 @@ /obj/item/reagent_containers/syringe/contraband/space_drugs list_reagents = list(/datum/reagent/drug/space_drugs = 15) -/obj/item/reagent_containers/syringe/contraband/krokodil - list_reagents = list(/datum/reagent/drug/krokodil = 15) - /obj/item/reagent_containers/syringe/contraband/crank list_reagents = list(/datum/reagent/drug/crank = 15) From d0381c1ad4324f10d95a6c2fdde1253f205a6084 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 11:45:10 -0500 Subject: [PATCH 05/23] reflavor bathsalts --- code/datums/brain_damage/special.dm | 4 +- code/datums/martial/psychotic_brawl.dm | 13 ++---- .../objects/effects/spawners/random/exotic.dm | 2 +- code/game/objects/items/melee/sword.dm | 2 +- code/modules/cargo/bounties/reagent.dm | 2 +- code/modules/hydroponics/grown/cannabis.dm | 2 +- .../chemistry/reagents/drug_reagents.dm | 42 +++++++++---------- .../reagents/chemistry/recipes/drugs.dm | 4 +- 8 files changed, 32 insertions(+), 39 deletions(-) diff --git a/code/datums/brain_damage/special.dm b/code/datums/brain_damage/special.dm index 9c447f4ab10a..d60d38653204 100644 --- a/code/datums/brain_damage/special.dm +++ b/code/datums/brain_damage/special.dm @@ -203,7 +203,7 @@ /datum/brain_trauma/special/psychotic_brawling name = "Violent Psychosis" - desc = "Patient fights in unpredictable ways, ranging from helping his target to hitting them with brutal strength." + desc = "Patient fights in unpredictable ways due to re-arranged neural pathways." scan_desc = "violent psychosis" gain_text = "You feel unhinged..." lose_text = "You feel more balanced." @@ -221,7 +221,7 @@ psychotic_brawling.remove(owner) QDEL_NULL(psychotic_brawling) -/datum/brain_trauma/special/psychotic_brawling/bath_salts +/datum/brain_trauma/special/psychotic_brawling/mammoth name = "Chemical Violent Psychosis" /datum/brain_trauma/special/tenacity diff --git a/code/datums/martial/psychotic_brawl.dm b/code/datums/martial/psychotic_brawl.dm index d6cedfee04f3..b6b59bb2f8a4 100644 --- a/code/datums/martial/psychotic_brawl.dm +++ b/code/datums/martial/psychotic_brawl.dm @@ -15,13 +15,6 @@ var/atk_verb switch(rand(1,8)) if(1) - D.help_shake_act(A) - atk_verb = "helped" - if(2) - A.emote("cry") - A.Stun(20) - atk_verb = "cried looking at" - if(3) if(A.grab_state >= GRAB_AGGRESSIVE) D.grabbedby(A, 1) else @@ -38,7 +31,7 @@ else log_combat(A, D, "grabbed", addition="passively") A.setGrabState(GRAB_PASSIVE) - if(4) + if(2) A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) atk_verb = "headbutt" D.visible_message("[A] [atk_verb]s [D]!", \ @@ -51,7 +44,7 @@ D.adjustOrganLoss(ORGAN_SLOT_BRAIN, 5) A.Stun(rand(10,45)) D.Stun(rand(5,30)) - if(5,6) + if(3,4) A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) atk_verb = pick("kick", "hit", "slam") D.visible_message("[A] [atk_verb]s [D] with such inhuman strength that it sends [D.p_them()] flying backwards!", \ @@ -62,7 +55,7 @@ var/throwtarget = get_edge_target_turf(A, get_dir(A, get_step_away(D, A))) D.throw_at(throwtarget, 4, 2, A)//So stuff gets tossed around at the same time. D.Paralyze(60) - if(7,8) + else return FALSE //Resume default behaviour if(atk_verb) diff --git a/code/game/objects/effects/spawners/random/exotic.dm b/code/game/objects/effects/spawners/random/exotic.dm index 5f0ef9f8ce1f..4cc66f19e235 100644 --- a/code/game/objects/effects/spawners/random/exotic.dm +++ b/code/game/objects/effects/spawners/random/exotic.dm @@ -35,7 +35,7 @@ /obj/item/reagent_containers/syringe/contraband/space_drugs = 1, /obj/item/reagent_containers/syringe/contraband/crank = 1, /obj/item/reagent_containers/syringe/contraband/methamphetamine = 1, - /obj/item/reagent_containers/syringe/contraband/bath_salts = 1, + /obj/item/reagent_containers/syringe/contraband/mammoth = 1, /obj/item/reagent_containers/syringe/contraband/fentanyl = 1, /obj/item/reagent_containers/syringe/contraband/morphine = 1, /obj/item/storage/pill_bottle/happy = 1, diff --git a/code/game/objects/items/melee/sword.dm b/code/game/objects/items/melee/sword.dm index 223a6c17f328..a3576bd63120 100644 --- a/code/game/objects/items/melee/sword.dm +++ b/code/game/objects/items/melee/sword.dm @@ -289,7 +289,7 @@ /datum/reagent/drug/space_drugs = 10, /datum/reagent/drug/crank = 5, /datum/reagent/drug/methamphetamine = 5, - /datum/reagent/drug/bath_salts = 5, + /datum/reagent/drug/mammoth = 5, /datum/reagent/drug/aranesp = 5, /datum/reagent/drug/pumpup = 10, /datum/reagent/medicine/omnizine = 10, diff --git a/code/modules/cargo/bounties/reagent.dm b/code/modules/cargo/bounties/reagent.dm index aa74618b5dc2..814b7dac938d 100644 --- a/code/modules/cargo/bounties/reagent.dm +++ b/code/modules/cargo/bounties/reagent.dm @@ -165,7 +165,7 @@ /datum/reagent/medicine/pyroxadone,\ /datum/reagent/medicine/rezadone,\ /datum/reagent/medicine/regen_jelly,\ - /datum/reagent/drug/bath_salts,\ + /datum/reagent/drug/mammoth,\ /datum/reagent/hair_dye,\ /datum/reagent/consumable/honey,\ /datum/reagent/consumable/frostoil,\ diff --git a/code/modules/hydroponics/grown/cannabis.dm b/code/modules/hydroponics/grown/cannabis.dm index fabbe339e790..0acd048a983a 100644 --- a/code/modules/hydroponics/grown/cannabis.dm +++ b/code/modules/hydroponics/grown/cannabis.dm @@ -70,7 +70,7 @@ /datum/reagent/lithium = 0.15, /datum/reagent/medicine/atropine = 0.15, /datum/reagent/drug/methamphetamine = 0.15, - /datum/reagent/drug/bath_salts = 0.15, + /datum/reagent/drug/mammoth = 0.15, /datum/reagent/drug/crank = 0.15, /datum/reagent/toxin/lipolicide = 0.15, /datum/reagent/drug/nicotine = 0.1) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index eab908e9e4fe..a0e44528c5a8 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -183,47 +183,47 @@ ..() . = 1 -/datum/reagent/drug/bath_salts - name = "Bath Salts" - description = "Makes you impervious to stuns and grants a stamina regeneration buff, but you will be a nearly uncontrollable tramp-bearded raving lunatic." +/datum/reagent/drug/mammoth + name = "Mammoth" + description = "A muscle stimulant said to turn the user into an unarmed fighting machine. Greatly increases stamina regeneration and allows the user to tackle."" reagent_state = LIQUID color = "#FAFAFA" overdose_threshold = 20 addiction_threshold = 10 - taste_description = "salt" // because they're bathsalts? - var/datum/brain_trauma/special/psychotic_brawling/bath_salts/rage + taste_description = "chemical salts" + var/datum/brain_trauma/special/psychotic_brawling/mammoth/rage -/datum/reagent/drug/bath_salts/on_mob_metabolize(mob/living/L) +/datum/reagent/drug/mammoth/on_mob_metabolize(mob/living/L) ..() ADD_TRAIT(L, TRAIT_STUNIMMUNE, type) ADD_TRAIT(L, TRAIT_SLEEPIMMUNE, type) + L.AddComponent(/datum/component/tackler, stamina_cost= 25, base_knockdown= 2 SECONDS, range=6, speed=1, skill_mod=2) if(iscarbon(L)) var/mob/living/carbon/C = L rage = new() C.gain_trauma(rage, TRAUMA_RESILIENCE_ABSOLUTE) -/datum/reagent/drug/bath_salts/on_mob_end_metabolize(mob/living/L) +/datum/reagent/drug/mammoth/on_mob_end_metabolize(mob/living/L) REMOVE_TRAIT(L, TRAIT_STUNIMMUNE, type) REMOVE_TRAIT(L, TRAIT_SLEEPIMMUNE, type) + if(L.GetComponent(/datum/component/tackler)) + qdel(L.GetComponent(/datum/component/tackler)) if(rage) QDEL_NULL(rage) ..() -/datum/reagent/drug/bath_salts/on_mob_life(mob/living/carbon/M) - var/high_message = pick("You feel amped up.", "You feel ready.", "You feel like you can push it to the limit.") +/datum/reagent/drug/mammoth/on_mob_life(mob/living/carbon/M) if(prob(5)) - to_chat(M, "[high_message]") + var/high_message = pick("Flatten them", "Crush them", "Smash them", "Kill them") //flat it. crush it. smash it. bop it. + to_chat(M, span_boldwarning("[high_message]")) SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "salted", /datum/mood_event/stimulant_heavy, name) - M.adjustStaminaLoss(-5, 0) - M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 4) + M.adjustStaminaLoss(-10, 0) + if(prob(40)) + M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2) M.hallucination += 5 - if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc)) - step(M, pick(GLOB.cardinals)) - step(M, pick(GLOB.cardinals)) - ..() . = 1 -/datum/reagent/drug/bath_salts/overdose_process(mob/living/M) +/datum/reagent/drug/mammoth/overdose_process(mob/living/M) M.hallucination += 5 if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc)) for(var/i in 1 to 8) @@ -232,7 +232,7 @@ M.drop_all_held_items() ..() -/datum/reagent/drug/bath_salts/addiction_act_stage1(mob/living/M) +/datum/reagent/drug/mammoth/addiction_act_stage1(mob/living/M) M.hallucination += 10 if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc)) for(var/i = 0, i < 8, i++) @@ -241,7 +241,7 @@ M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 10) ..() -/datum/reagent/drug/bath_salts/addiction_act_stage2(mob/living/M) +/datum/reagent/drug/mammoth/addiction_act_stage2(mob/living/M) M.hallucination += 20 if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc)) for(var/i = 0, i < 8, i++) @@ -251,7 +251,7 @@ M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 10) ..() -/datum/reagent/drug/bath_salts/addiction_act_stage3(mob/living/M) +/datum/reagent/drug/mammoth/addiction_act_stage3(mob/living/M) M.hallucination += 30 if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc)) for(var/i = 0, i < 12, i++) @@ -261,7 +261,7 @@ M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 10) ..() -/datum/reagent/drug/bath_salts/addiction_act_stage4(mob/living/carbon/human/M) +/datum/reagent/drug/mammoth/addiction_act_stage4(mob/living/carbon/human/M) M.hallucination += 30 if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc)) for(var/i = 0, i < 16, i++) diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index c53892dc1630..f94a44295d61 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -13,8 +13,8 @@ required_reagents = list(/datum/reagent/medicine/ephedrine = 1, /datum/reagent/iodine = 1, /datum/reagent/phosphorus = 1, /datum/reagent/hydrogen = 1) required_temp = 374 -/datum/chemical_reaction/bath_salts - results = list(/datum/reagent/drug/bath_salts = 7) +/datum/chemical_reaction/mammoth + results = list(/datum/reagent/drug/mammoth = 7) required_reagents = list(/datum/reagent/toxin/bad_food = 1, /datum/reagent/saltpetre = 1, /datum/reagent/consumable/nutriment = 1, /datum/reagent/space_cleaner = 1, /datum/reagent/consumable/enzyme = 1, /datum/reagent/consumable/tea = 1, /datum/reagent/mercury = 1) required_temp = 374 From ab4a81dfe5ce6a97bb175b83a2968210b3f22bc0 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 12:05:26 -0500 Subject: [PATCH 06/23] carfencadrizine --- .../chemistry/reagents/medicine_reagents.dm | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 6c08f06da7b0..6dd8d92da5ec 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -2355,3 +2355,83 @@ M.adjustToxLoss(1) ..() . = 1 + +/datum/reagent/medicine/carfencadrizine + name = "Carfencadrizine" + description = "A highly potent synthetic painkiller held in a suspension of stimulating agents. Allows people to keep moving long beyond when they should." + color = "#859480" + overdose_threshold = 7 + addiction_threshold = 7 + metabolization_rate = 0.1 + +/datum/reagent/medicine/carfencadrizine/on_mob_metabolize(mob/living/L) + . = ..() + ADD_TRAIT(L, TRAIT_NOSOFTCRIT, type) + ADD_TRAIT(L, TRAIT_NOHARDCRIT, type) + +/datum/reagent/medicine/carfencadrizine/on_mob_end_metabolize(mob/living/L) + . = ..() + REMOVE_TRAIT(L, TRAIT_NOSOFTCRIT, type) + REMOVE_TRAIT(L, TRAIT_NOHARDCRIT, type) + +/datum/reagent/medicine/carfencadrizine/on_mob_life(mob/living/carbon/M) + if(current_cycle >= 3) + SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "numb", /datum/mood_event/narcotic_heavy, name) + + if(M.health <= crit_threshold && prob(20)) + M.AdjustOrganLoss(ORGAN_SLOT_HEART, 4) + ..() + +/datum/reagent/medicine/carfencadrizine/overdose_process(mob/living/M) + if(prob(66)) + M.losebreath++ + M.adjustOxyLoss(4, 0) + if(prob(40)) + M.AdjustUnconscious(20) + if(prob(10)) + M.adjustOrganLoss(ORGAN_SLOT_EYES, 3) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 7) + ..() + +/datum/reagent/medicine/carfencadrizine/addiction_act_stage1(mob/living/M) + if(prob(33)) + M.drop_all_held_items() + M.adjust_jitter(4) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 1) + ..() + +/datum/reagent/medicine/dimorlin/addiction_act_stage2(mob/living/M) + if(prob(33)) + M.drop_all_held_items() + M.adjustToxLoss(1*REM, 0) + . = 1 + M.Dizzy(3) + M.adjust_jitter(3) + if(prob(15)) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 1) + M.adjustOrganLoss(ORGAN_SLOT_HEART, 1) + ..() + +/datum/reagent/medicine/dimorlin/addiction_act_stage3(mob/living/M) + if(prob(50)) + M.drop_all_held_items() + M.adjustToxLoss(1*REM, 0) + . = 1 + M.Dizzy(4) + M.adjust_jitter(4) + if(prob(30)) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 1) + M.adjustOrganLoss(ORGAN_SLOT_HEART, 2) + ..() + +/datum/reagent/medicine/dimorlin/addiction_act_stage4(mob/living/M) + if(prob(60)) + M.drop_all_held_items() + M.adjustToxLoss(1*REM, 0) + . = 1 + M.Dizzy(4) + M.adjust_jitter(4) + if(prob(40)) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 2) + M.adjustOrganLoss(ORGAN_SLOT_HEART, 2) + ..() From ea53c35af6491d12a5cf92a78d2a7ec7672d04bd Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 12:06:45 -0500 Subject: [PATCH 07/23] whoops doops --- code/modules/reagents/reagent_containers/syringes.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 9584628d03b1..b3e2a0b92d94 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -288,8 +288,8 @@ /obj/item/reagent_containers/syringe/contraband/methamphetamine list_reagents = list(/datum/reagent/drug/methamphetamine = 15) -/obj/item/reagent_containers/syringe/contraband/bath_salts - list_reagents = list(/datum/reagent/drug/bath_salts = 15) +/obj/item/reagent_containers/syringe/contraband/mammoth + list_reagents = list(/datum/reagent/drug/mammoth = 15) /obj/item/reagent_containers/syringe/contraband/fentanyl list_reagents = list(/datum/reagent/toxin/fentanyl = 15) From 0a79e94555a6f86a477f74e0e3d30d3516f103ac Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 12:08:43 -0500 Subject: [PATCH 08/23] carfen fix --- .../reagents/chemistry/reagents/medicine_reagents.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 6dd8d92da5ec..9da3632d680b 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -2400,7 +2400,7 @@ M.adjustOrganLoss(ORGAN_SLOT_LUNGS, 1) ..() -/datum/reagent/medicine/dimorlin/addiction_act_stage2(mob/living/M) +/datum/reagent/medicine/carfencadrizine/addiction_act_stage2(mob/living/M) if(prob(33)) M.drop_all_held_items() M.adjustToxLoss(1*REM, 0) @@ -2412,7 +2412,7 @@ M.adjustOrganLoss(ORGAN_SLOT_HEART, 1) ..() -/datum/reagent/medicine/dimorlin/addiction_act_stage3(mob/living/M) +/datum/reagent/medicine/carfencadrizine/addiction_act_stage3(mob/living/M) if(prob(50)) M.drop_all_held_items() M.adjustToxLoss(1*REM, 0) @@ -2424,7 +2424,7 @@ M.adjustOrganLoss(ORGAN_SLOT_HEART, 2) ..() -/datum/reagent/medicine/dimorlin/addiction_act_stage4(mob/living/M) +/datum/reagent/medicine/carfencadrizine/addiction_act_stage4(mob/living/M) if(prob(60)) M.drop_all_held_items() M.adjustToxLoss(1*REM, 0) From 151edea339f95406b4f58579d975740b0c8c437c Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 12:14:56 -0500 Subject: [PATCH 09/23] painkiller pinprick eyes --- code/__DEFINES/traits.dm | 1 + code/_globalvars/traits.dm | 1 + .../mob/living/carbon/human/examine.dm | 2 ++ .../chemistry/reagents/medicine_reagents.dm | 21 +++++++++++++++++-- 4 files changed, 23 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index d0e248a719d1..5f0192c08c97 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -343,6 +343,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_ANXIOUS "anxious" #define TRAIT_ANALGESIA "congenital_analgesia" #define TRAIT_CLOUDED "clouded_eyes" +#define TRAIT_PINPOINT_EYES "pinpoint_eyes" /// Trait granted by lipstick #define LIPSTICK_TRAIT "lipstick_trait" diff --git a/code/_globalvars/traits.dm b/code/_globalvars/traits.dm index 43dccbbfccbb..bcc7bcea89ae 100644 --- a/code/_globalvars/traits.dm +++ b/code/_globalvars/traits.dm @@ -152,6 +152,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_PLANT_SAFE" = TRAIT_PLANT_SAFE, "TRAIT_AIMING" = TRAIT_AIMING, "TRAIT_CLOUDED" = TRAIT_CLOUDED + "TRAIT_PINPOINT_EYES" = TRAIT_PINPOINT_EYES ), /obj/item/bodypart = list( "TRAIT_PARALYSIS" = TRAIT_PARALYSIS diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 26b60d0e6e4c..d87eadb4cfc1 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -102,6 +102,8 @@ . += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes." else if(HAS_TRAIT(src, TRAIT_CLOUDED)) . += "[t_His] eyes are clouded in silver." + else if(HAS_TRAIT(src, TRAIT_PINPOINT_EYES)) + . += "[t_His] pupils have diliated to pinpricks." //ears if(ears && !(ITEM_SLOT_EARS in obscured)) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 9da3632d680b..0a040ab8aa74 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -791,6 +791,10 @@ . = 1 ..() +/datum/reagent/medicine/morphine/overdose_start(mob/living/M) + . = ..() + ADD_TRAIT(M, TRAIT_PINPOINT_EYES, type) + /datum/reagent/medicine/morphine/overdose_process(mob/living/M) if(prob(33)) M.drop_all_held_items() @@ -858,6 +862,10 @@ M.drowsyness += 1 ..() +/datum/reagent/medicine/tramal/overdose_start(mob/living/M) + . = ..() + ADD_TRAIT(M, TRAIT_PINPOINT_EYES, type) + /datum/reagent/medicine/tramal/overdose_process(mob/living/M) if(prob(33)) M.Dizzy(2) @@ -921,6 +929,10 @@ SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "numb", /datum/mood_event/narcotic_heavy, name) ..() +/datum/reagent/medicine/dimorlin/overdose_start(mob/living/M) + . = ..() + ADD_TRAIT(M, TRAIT_PINPOINT_EYES, type) + /datum/reagent/medicine/dimorlin/overdose_process(mob/living/M) if(prob(33)) M.losebreath++ @@ -2366,11 +2378,13 @@ /datum/reagent/medicine/carfencadrizine/on_mob_metabolize(mob/living/L) . = ..() + ADD_TRAIT(L, TRAIT_PINPOINT_EYES, type) ADD_TRAIT(L, TRAIT_NOSOFTCRIT, type) ADD_TRAIT(L, TRAIT_NOHARDCRIT, type) /datum/reagent/medicine/carfencadrizine/on_mob_end_metabolize(mob/living/L) . = ..() + REMOVE_TRAIT(L, TRAIT_PINPOINT_EYES, type) REMOVE_TRAIT(L, TRAIT_NOSOFTCRIT, type) REMOVE_TRAIT(L, TRAIT_NOHARDCRIT, type) @@ -2378,8 +2392,11 @@ if(current_cycle >= 3) SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "numb", /datum/mood_event/narcotic_heavy, name) - if(M.health <= crit_threshold && prob(20)) - M.AdjustOrganLoss(ORGAN_SLOT_HEART, 4) + if(M.health <= crit_threshold) + if(prob(20)) + M.AdjustOrganLoss(ORGAN_SLOT_HEART, 4) + if(prob(40)) + M.playsound_local(get_turf(M), 'sound/health/slowbeat2.ogg', 40,0, channel = CHANNEL_HEARTBEAT, use_reverb = FALSE) ..() /datum/reagent/medicine/carfencadrizine/overdose_process(mob/living/M) From b187e18c78fba69012c06413dab0ac626ba13400 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 12:24:52 -0500 Subject: [PATCH 10/23] drug recipes --- code/modules/reagents/chemistry/recipes/drugs.dm | 11 +++++++++++ code/modules/reagents/chemistry/recipes/medicine.dm | 12 ++++++++++++ 2 files changed, 23 insertions(+) diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index f94a44295d61..e27ccce47718 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -47,3 +47,14 @@ required_reagents = list(/datum/reagent/consumable/vitfro = 4, /datum/reagent/medicine/dimorlin = 1, /datum/reagent/medicine/atropine = 1) required_catalysts = list(/datum/reagent/toxin/plasma = 5) required_temp = 400 + +/datum/chemical_reaction/stardrop + results = list(/datum/reagent/drug/stardrop = 5) + required_reagents = list(/datum/reagent/mercury = 1, /datum/reagent/acetone = 1, /datum/reagent/consumable/carrotjuice = 2) + required_catalysts = list(/datum/reagent/stable_plasma = 5) + +/datum/chemical_reaction/starlight + results = list(/datum/reagent/drug/starlight = 1) + required_reagents = list(/datum/reagent/drug/stardrop = 1, /datum/reagent/phenol = 1) + required_catalysts = list(/datum/reagent/toxin/plasma = 5) + mix_message = "The mixture concentrates into itself, taking on a deep coloration!" diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index 1b5abd931292..649460934245 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -338,3 +338,15 @@ WS End */ results = list(/datum/reagent/carbon = 1) required_reagents = list(/datum/reagent/medicine/chitosan = 1) required_temp = 405 + +/datum/chemical_reaction/stasis + results = list(/datum/reagent/medicine/stasis = 5) + required_reagents = list(/datum/reagent/phenol = 1, /datum/reagent/copper = 1, /datum/reagent/medicine/salglu_solution = 3) + required_catalysts = list(/datum/reagent/toxin/plasma = 5) + required_temp = 207 + +/datum/chemical_reaction/carfen + results = list(/datum/reagent/medicine/carfencadrizine = 4) + required_reagents = list(/datum/reagent/medicine/dimorlin = 1, /datum/reagent/medicine/synaptizine = 1, /datum/reagent/sugar = 2) + required_catalysts = list(/datum/reagent/toxin/plasma = 2) + required_temp = 127 From 9010a31283bf896aca6ae0bce831922dcecb6bde Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 13:16:30 -0500 Subject: [PATCH 11/23] implement drugs --- code/game/objects/items/storage/firstaid.dm | 10 +++++++++- .../blackmarket_items/consumables.dm | 20 +++++++++++++++++++ code/modules/cargo/packs/medical.dm | 9 +++++++++ .../reagents/reagent_containers/hypospray.dm | 19 ++++++++++++++++++ .../reagents/reagent_containers/hypovial.dm | 6 ++++++ .../reagents/reagent_containers/pill.dm | 6 ++++++ .../reagents/reagent_containers/syringes.dm | 6 ++++++ code/modules/vending/medical_wall.dm | 2 ++ 8 files changed, 77 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/storage/firstaid.dm b/code/game/objects/items/storage/firstaid.dm index f0bdcff21ec3..63a836e368e3 100644 --- a/code/game/objects/items/storage/firstaid.dm +++ b/code/game/objects/items/storage/firstaid.dm @@ -485,8 +485,16 @@ /obj/item/storage/pill_bottle/finobranc name = "bottle of finobranc tablets" desc = "Party in the Solar Cantons, tonight." - custom_price = 50 /obj/item/storage/pill_bottle/finobranc/PopulateContents() for(var/i in 1 to 7) new /obj/item/reagent_containers/pill/finobranc(src) + +/obj/item/storage/pill_bottle/stardrop + name = "bottle of stardrop capsules" + desc = "Contains vision-enhancing pills." + custom_price = 300 + +/obj/item/storage/pill_bottle/stardrop/PopulateContents() + for(var/i in 1 to 7) + new /obj/item/reagent_containers/pill/stardrop(src) diff --git a/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm b/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm index 33b6a411ac78..0687acb37ef5 100644 --- a/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm +++ b/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm @@ -293,6 +293,26 @@ availability_prob = 25 spawn_weighting = FALSE +/datum/blackmarket_item/consumable/mammoth + name = "Mammoth Injector" + desc = "Found a bunch of kickass injectors hiding the corpse of a Cliquer. Don't ask bout how they became a corpse Iunno. Doesn't matter. These things boost your strength and keep you going way too damn long..." + item = /obj/item/reagent_containers/hypospray/medipen/mammoth + price_min = 500 + price_max = 1000 + stock_max = 6 + availability_prob = 40 + spawn_weighting = FALSE + +/datum/blackmarket_item/consumable/rabbit + name = "Rabbit Injector" + desc = "We were bummin around towards CLIP space the other day, and saw this. Ahem. Business opportunity with a bun. Words came to words and after some serious business planning, I'm the distributer for this line for this line of designer injectors. Supposed to make you like a rabbit or somethin." + item = /obj/item/reagent_containers/hypospray/medipen/rabbit + price_min = 600 + price_max = 800 + stock_max = 6 + availability_prob = 30 + spawn_weighting = FALSE + /datum/blackmarket_item/consumable/finobranc name = "Finobranc Tablets" desc = "So get this, I know a Solarian Tgirl over the intranet, and we're chatting, and she sends me these things to try. I figure, hell yeah, try them, and got 5 days work done in one day. Now I'm sellin them. Miracle product I tell ya" diff --git a/code/modules/cargo/packs/medical.dm b/code/modules/cargo/packs/medical.dm index c8b9919746e1..27062e20c16e 100644 --- a/code/modules/cargo/packs/medical.dm +++ b/code/modules/cargo/packs/medical.dm @@ -277,6 +277,15 @@ ) crate_name = "atropine vial crate" +/datum/supply_pack/medical/vials/atro_vial + name = "Stasis Vial Crate" + desc = "Contains a spare stasis vial, for usage in a Hypospray." + cost = 800 + contains = list( + /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/stasis, + ) + crate_name = "stasis vial crate" + /datum/supply_pack/medical/vials/erp_vial name = "Radiation Purgant Vial Crate" desc = "Contains 2 spare radiation purgant vials, for usage in a Hypospray." diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 5fbdc92ddc29..c7820b23c991 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -335,6 +335,25 @@ base_icon_state = "syndipen" item_state = "syndipen" +/obj/item/reagent_containers/hypospray/medipen/rabbit + name = "rabbit injector" + desc = "An injector decorated with a chibi-stylized armored rabbitgirl, wielding what appears to be a Hydra DMR." + list_reagents = list(/datum/reagent/drug/starlight = 10, /datum/reagent/medicine/carfencadrizine = 6, /datum/reagent/medicine/stimulants = 8) + volume = 24 + amount_per_transfer_from_this = 24 + icon_state = "stimpen" + base_icon_state = "stimpen" + +/obj/item/reagent_containers/hypospray/medipen/mammoth + name = "mammoth injector" + desc = "An injector filled with an ICW-era mixture of aggression-enhancing stimulants." + list_reagents = list(/datum/reagent/drug/mammoth = 9, /datum/reagent/medicine/dimorlin = 4, /datum/reagent/medicine/carfencadrizine = 6) + volume = 19 + amount_per_transfer_from_this = 19 + icon_state = "syndipen" + base_icon_state = "syndipen" + item_state = "syndipen" + //A vial-loaded hypospray. Cartridge-based! /obj/item/hypospray/mkii name = "hypospray mk.II" diff --git a/code/modules/reagents/reagent_containers/hypovial.dm b/code/modules/reagents/reagent_containers/hypovial.dm index 3f4182ae9e89..483fdd72a85e 100644 --- a/code/modules/reagents/reagent_containers/hypovial.dm +++ b/code/modules/reagents/reagent_containers/hypovial.dm @@ -174,6 +174,12 @@ amount_per_transfer_from_this = 10 comes_with = list(/datum/reagent/drug/combat_drug = 20, /datum/reagent/medicine/bicaridinep = 10, /datum/reagent/medicine/dermaline = 10, /datum/reagent/medicine/synaptizine = 20) +/obj/item/reagent_containers/glass/bottle/vial/small/preloaded/stasis + name = "hypovial (stasis)" + icon_state = "hypovial-b" + amount_per_transfer_from_this = 5 + comes_with = list(/datum/reagent/medicine/stasis = 60) + /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/CMO name = "deluxe hypovial" icon_state = "hypoviallarge-cmos" diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 1a4822c254b5..d75f04d5685a 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -311,6 +311,12 @@ WS End */ list_reagents = list(/datum/reagent/medicine/trophazole = 15) rename_with_volume = TRUE +/obj/item/reagent_containers/pill/stardrop + name = "Stardrop Capsule" + desc = "A capsule of a vision enhancing compound known as Stardrop." + icon_state = "pill11" + list_reagents = list(/datum/reagent/drug/stardrop = 15) + /obj/item/reagent_containers/spray/rhigoxane name = "medical spray (rhigoxane)" desc = "A medical spray bottle.This one contains rhigoxane, it is used to treat burns and cool down temperature if applied with spray." diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index b3e2a0b92d94..8d193cbe0c4f 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -306,3 +306,9 @@ name = "syringe (charcoal)" desc = "Contains charcoal." list_reagents = list(/datum/reagent/medicine/charcoal = 15) + +/obj/item/reagent_containers/syringe/stasis + name = "syringe (stasis)" + desc = "Contains 3 shots of Stasis, for usage in medical emergencies." + list_reagents = list(/datum/reagent/medicine/stasis = 15) + custom_price = 100 diff --git a/code/modules/vending/medical_wall.dm b/code/modules/vending/medical_wall.dm index 67801ddfbe1e..7ef7cac715b5 100644 --- a/code/modules/vending/medical_wall.dm +++ b/code/modules/vending/medical_wall.dm @@ -18,10 +18,12 @@ /obj/item/reagent_containers/hypospray/medipen/antihol = 10, /obj/item/reagent_containers/hypospray/medipen/anti_rad = 10, /obj/item/storage/pill_bottle/licarb = 4, + /obj/item/reagent_containers/syringe/stasis = 4 ) premium = list( /obj/item/reagent_containers/medigel/styptic = 3, /obj/item/reagent_containers/medigel/silver_sulf = 3, + /obj/item/storage/pill_bottle/stardrop = 5 ) armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) resistance_flags = FIRE_PROOF From 32efb5133bac94be0d9c5e7cc77fc8f75bd1ac06 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 13:17:37 -0500 Subject: [PATCH 12/23] no stasis cuckblock --- code/modules/reagents/chemistry/reagents/medicine_reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 0a040ab8aa74..70e3a1293249 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -2358,7 +2358,7 @@ if(method != INJECT) return if(iscarbon(M)) - var/stasis_duration = 20 SECONDS * reac_volume + var/stasis_duration = min(20 SECONDS * reac_volume, 300) to_chat(M, span_warning("Your body starts to slow down, sensation retreating from your limbs!")) M.apply_status_effect(STATUS_EFFECT_STASIS, STASIS_DRUG_EFFECT) addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/living, remove_status_effect), STATUS_EFFECT_STASIS, STASIS_DRUG_EFFECT), stasis_duration, TIMER_UNIQUE) From 9de7afc14d2848a8a330c756950131d38821262c Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 13:17:58 -0500 Subject: [PATCH 13/23] Update medicine_reagents.dm --- code/modules/reagents/chemistry/reagents/medicine_reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 70e3a1293249..8dd596f049f8 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -2358,7 +2358,7 @@ if(method != INJECT) return if(iscarbon(M)) - var/stasis_duration = min(20 SECONDS * reac_volume, 300) + var/stasis_duration = min(20 SECONDS * reac_volume, 300 SECONDS) to_chat(M, span_warning("Your body starts to slow down, sensation retreating from your limbs!")) M.apply_status_effect(STATUS_EFFECT_STASIS, STASIS_DRUG_EFFECT) addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/living, remove_status_effect), STATUS_EFFECT_STASIS, STASIS_DRUG_EFFECT), stasis_duration, TIMER_UNIQUE) From 9da73e9a9a12d094aaf80b28d91c002723c5976f Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 13:26:22 -0500 Subject: [PATCH 14/23] compile fixes --- code/_globalvars/traits.dm | 2 +- code/modules/reagents/chemistry/reagents/drug_reagents.dm | 2 +- code/modules/reagents/chemistry/reagents/medicine_reagents.dm | 4 ++-- code/modules/reagents/chemistry/recipes/drugs.dm | 2 +- code/modules/reagents/chemistry/recipes/medicine.dm | 2 +- code/modules/reagents/reagent_containers/hypospray.dm | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/code/_globalvars/traits.dm b/code/_globalvars/traits.dm index bcc7bcea89ae..a60f44f386fd 100644 --- a/code/_globalvars/traits.dm +++ b/code/_globalvars/traits.dm @@ -151,7 +151,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_KISS_OF_DEATH" = TRAIT_KISS_OF_DEATH, "TRAIT_PLANT_SAFE" = TRAIT_PLANT_SAFE, "TRAIT_AIMING" = TRAIT_AIMING, - "TRAIT_CLOUDED" = TRAIT_CLOUDED + "TRAIT_CLOUDED" = TRAIT_CLOUDED, "TRAIT_PINPOINT_EYES" = TRAIT_PINPOINT_EYES ), /obj/item/bodypart = list( diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index a0e44528c5a8..e8821670a905 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -185,7 +185,7 @@ /datum/reagent/drug/mammoth name = "Mammoth" - description = "A muscle stimulant said to turn the user into an unarmed fighting machine. Greatly increases stamina regeneration and allows the user to tackle."" + description = "A muscle stimulant said to turn the user into an unarmed fighting machine. Greatly increases stamina regeneration and allows the user to tackle." reagent_state = LIQUID color = "#FAFAFA" overdose_threshold = 20 diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 8dd596f049f8..44f2d5e594d1 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -2392,9 +2392,9 @@ if(current_cycle >= 3) SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "numb", /datum/mood_event/narcotic_heavy, name) - if(M.health <= crit_threshold) + if(M.health <= M.crit_threshold) if(prob(20)) - M.AdjustOrganLoss(ORGAN_SLOT_HEART, 4) + M.adjustOrganLoss(ORGAN_SLOT_HEART, 4) if(prob(40)) M.playsound_local(get_turf(M), 'sound/health/slowbeat2.ogg', 40,0, channel = CHANNEL_HEARTBEAT, use_reverb = FALSE) ..() diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index e27ccce47718..3ebd8ee75605 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -54,7 +54,7 @@ required_catalysts = list(/datum/reagent/stable_plasma = 5) /datum/chemical_reaction/starlight - results = list(/datum/reagent/drug/starlight = 1) + results = list(/datum/reagent/drug/stardrop/starlight = 1) required_reagents = list(/datum/reagent/drug/stardrop = 1, /datum/reagent/phenol = 1) required_catalysts = list(/datum/reagent/toxin/plasma = 5) mix_message = "The mixture concentrates into itself, taking on a deep coloration!" diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index 649460934245..a8a8c3115a26 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -347,6 +347,6 @@ WS End */ /datum/chemical_reaction/carfen results = list(/datum/reagent/medicine/carfencadrizine = 4) - required_reagents = list(/datum/reagent/medicine/dimorlin = 1, /datum/reagent/medicine/synaptizine = 1, /datum/reagent/sugar = 2) + required_reagents = list(/datum/reagent/medicine/dimorlin = 1, /datum/reagent/medicine/synaptizine = 1, /datum/reagent/consumable/sugar = 2) required_catalysts = list(/datum/reagent/toxin/plasma = 2) required_temp = 127 diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index c7820b23c991..820ca71e1954 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -338,7 +338,7 @@ /obj/item/reagent_containers/hypospray/medipen/rabbit name = "rabbit injector" desc = "An injector decorated with a chibi-stylized armored rabbitgirl, wielding what appears to be a Hydra DMR." - list_reagents = list(/datum/reagent/drug/starlight = 10, /datum/reagent/medicine/carfencadrizine = 6, /datum/reagent/medicine/stimulants = 8) + list_reagents = list(/datum/reagent/drug/stardrop/starlight = 10, /datum/reagent/medicine/carfencadrizine = 6, /datum/reagent/medicine/stimulants = 8) volume = 24 amount_per_transfer_from_this = 24 icon_state = "stimpen" From b034c9d831f87594687cbfbdba688669fbf59307 Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 13:35:14 -0500 Subject: [PATCH 15/23] Update medical.dm --- code/modules/cargo/packs/medical.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/cargo/packs/medical.dm b/code/modules/cargo/packs/medical.dm index 27062e20c16e..9c048c87dc4b 100644 --- a/code/modules/cargo/packs/medical.dm +++ b/code/modules/cargo/packs/medical.dm @@ -277,7 +277,7 @@ ) crate_name = "atropine vial crate" -/datum/supply_pack/medical/vials/atro_vial +/datum/supply_pack/medical/vials/stas_vial name = "Stasis Vial Crate" desc = "Contains a spare stasis vial, for usage in a Hypospray." cost = 800 From 9aa1ce5f870d1ae0510b3800eabf30add24b5f3a Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 14:53:05 -0500 Subject: [PATCH 16/23] Update icemoon_tesla_lab.dmm --- _maps/RandomRuins/IceRuins/icemoon_tesla_lab.dmm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/_maps/RandomRuins/IceRuins/icemoon_tesla_lab.dmm b/_maps/RandomRuins/IceRuins/icemoon_tesla_lab.dmm index 4f6e4849f99b..7a654eaab592 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_tesla_lab.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_tesla_lab.dmm @@ -5263,10 +5263,6 @@ pixel_x = 11; pixel_y = -10 }, -/obj/item/reagent_containers/syringe/contraband/bath_salts{ - pixel_y = 13; - pixel_x = 6 - }, /obj/item/reagent_containers/hypospray/medipen/survival{ pixel_y = -12; pixel_x = -4 @@ -5275,6 +5271,10 @@ pixel_x = -7; pixel_y = 9 }, +/obj/item/reagent_containers/syringe/contraband/mammoth{ + pixel_y = 11; + pixel_x = 5 + }, /turf/open/floor/plasteel/white, /area/ruin/icemoon/tesla_lab/medbay) "vj" = ( From c76fa2a99ca0e8b369239396b08cf3caa32d08ff Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Wed, 12 Feb 2025 14:58:42 -0500 Subject: [PATCH 17/23] Update jungle_cavecrew.dmm --- _maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm b/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm index e4199f6282b6..013acaafde4c 100644 --- a/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm +++ b/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm @@ -2844,16 +2844,16 @@ dir = 8 }, /obj/structure/closet/wall/directional/west, -/obj/item/reagent_containers/syringe/contraband/bath_salts{ - pixel_y = 6; - pixel_x = -4 - }, /obj/item/restraints/handcuffs/cable/white, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/chem_pile, /obj/effect/decal/cleanable/blood/drip, /obj/effect/decal/cleanable/plastic, /obj/effect/decal/cleanable/glass, +/obj/item/reagent_containers/syringe/contraband/mammoth{ + pixel_y = 11; + pixel_x = 5 + }, /turf/open/floor/wood{ icon_state = "wood-broken2" }, From 3da97fbcd0425849b08a5adecbce73f84d75425d Mon Sep 17 00:00:00 2001 From: Erikafox <94164348+Erikafox@users.noreply.github.com> Date: Thu, 13 Feb 2025 14:06:18 -0500 Subject: [PATCH 18/23] adjustments --- .../modules/cargo/blackmarket/blackmarket_items/consumables.dm | 2 +- code/modules/reagents/chemistry/reagents/drug_reagents.dm | 2 ++ code/modules/reagents/chemistry/recipes/drugs.dm | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm b/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm index 0687acb37ef5..876424939458 100644 --- a/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm +++ b/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm @@ -295,7 +295,7 @@ /datum/blackmarket_item/consumable/mammoth name = "Mammoth Injector" - desc = "Found a bunch of kickass injectors hiding the corpse of a Cliquer. Don't ask bout how they became a corpse Iunno. Doesn't matter. These things boost your strength and keep you going way too damn long..." + desc = "Found a bunch of kickass injectors hiding under the corpse of a Cliquer. Don't ask bout how they became a corpse Iunno. Doesn't matter. These things boost your strength and keep you going way too damn long..." item = /obj/item/reagent_containers/hypospray/medipen/mammoth price_min = 500 price_max = 1000 diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index e8821670a905..2fabb7b65de7 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -579,6 +579,7 @@ overdose_threshold = 30 addiction_threshold = 20 metabolization_rate = 0.1 + taste_description = "a distant earthiness" var/vision_trait = TRAIT_NIGHT_VISION /datum/reagent/drug/stardrop/on_mob_metabolize(mob/living/L) @@ -646,3 +647,4 @@ addiction_threshold = 11 metabolization_rate = 0.2 vision_trait = TRAIT_THERMAL_VISION + taste_description = "sulpheric sweetness" diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index 3ebd8ee75605..ecfc31e5e762 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -55,6 +55,7 @@ /datum/chemical_reaction/starlight results = list(/datum/reagent/drug/stardrop/starlight = 1) - required_reagents = list(/datum/reagent/drug/stardrop = 1, /datum/reagent/phenol = 1) + required_reagents = list(/datum/reagent/drug/stardrop = 1, /datum/reagent/phenol = 1, /datum/reagent/sulfur = 1) required_catalysts = list(/datum/reagent/toxin/plasma = 5) mix_message = "The mixture concentrates into itself, taking on a deep coloration!" + required_temp = 150 From 727b56e0c6bac874a176b362934b6c9983623c6a Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Sat, 15 Feb 2025 23:25:11 -0500 Subject: [PATCH 19/23] wawa --- code/modules/reagents/chemistry/reagents/medicine_reagents.dm | 2 +- code/modules/reagents/reagent_containers/hypospray.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 44f2d5e594d1..9e6863fef7fe 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -2372,7 +2372,7 @@ name = "Carfencadrizine" description = "A highly potent synthetic painkiller held in a suspension of stimulating agents. Allows people to keep moving long beyond when they should." color = "#859480" - overdose_threshold = 7 + overdose_threshold = 8 addiction_threshold = 7 metabolization_rate = 0.1 diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 820ca71e1954..ef9bc4ca32c8 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -347,7 +347,7 @@ /obj/item/reagent_containers/hypospray/medipen/mammoth name = "mammoth injector" desc = "An injector filled with an ICW-era mixture of aggression-enhancing stimulants." - list_reagents = list(/datum/reagent/drug/mammoth = 9, /datum/reagent/medicine/dimorlin = 4, /datum/reagent/medicine/carfencadrizine = 6) + list_reagents = list(/datum/reagent/drug/mammoth = 7, /datum/reagent/medicine/dimorlin = 6, /datum/reagent/medicine/carfencadrizine = 6) volume = 19 amount_per_transfer_from_this = 19 icon_state = "syndipen" From a1b3d79a24e34b2521ea73f2e838130e7c3f53ad Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Sun, 16 Feb 2025 17:54:16 -0500 Subject: [PATCH 20/23] makes stardrop cooler / better --- code/__DEFINES/lighting.dm | 1 + code/__DEFINES/traits.dm | 2 ++ code/_globalvars/traits.dm | 4 +++- code/modules/mob/living/carbon/carbon.dm | 8 ++++++++ code/modules/reagents/chemistry/reagents/drug_reagents.dm | 8 ++++---- 5 files changed, 18 insertions(+), 5 deletions(-) diff --git a/code/__DEFINES/lighting.dm b/code/__DEFINES/lighting.dm index 019ba0beaa1c..a9078e83d777 100644 --- a/code/__DEFINES/lighting.dm +++ b/code/__DEFINES/lighting.dm @@ -48,6 +48,7 @@ #define LIGHTING_PLANE_ALPHA_VISIBLE 255 #define LIGHTING_PLANE_ALPHA_NV_TRAIT 245 +#define LIGHTING_PLANE_ALPHA_NV_DRUG 225 #define LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE 192 /// For lighting alpha, small amounts lead to big changes. even at 128 its hard to figure out what is dark and what is light, at 64 you almost can't even tell. #define LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE 128 diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 5f0192c08c97..5b987b75df37 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -344,6 +344,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_ANALGESIA "congenital_analgesia" #define TRAIT_CLOUDED "clouded_eyes" #define TRAIT_PINPOINT_EYES "pinpoint_eyes" +#define TRAIT_CHEMICAL_NIGHTVISION "chemical_nightvision" +#define TRAIT_GOOD_CHEMICAL_NIGHTVISION "good_chemical_nightvision" /// Trait granted by lipstick #define LIPSTICK_TRAIT "lipstick_trait" diff --git a/code/_globalvars/traits.dm b/code/_globalvars/traits.dm index a60f44f386fd..1a8eccb4b445 100644 --- a/code/_globalvars/traits.dm +++ b/code/_globalvars/traits.dm @@ -152,7 +152,9 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_PLANT_SAFE" = TRAIT_PLANT_SAFE, "TRAIT_AIMING" = TRAIT_AIMING, "TRAIT_CLOUDED" = TRAIT_CLOUDED, - "TRAIT_PINPOINT_EYES" = TRAIT_PINPOINT_EYES + "TRAIT_PINPOINT_EYES" = TRAIT_PINPOINT_EYES, + "TRAIT_CHEMICAL_NIGHT_VISION" = TRAIT_CHEMICAL_NIGHTVISION, + "TRAIT_GOOD_CHEMICAL_NIGHT_VISION" = TRAIT_GOOD_CHEMICAL_NIGHTVISION, ), /obj/item/bodypart = list( "TRAIT_PARALYSIS" = TRAIT_PARALYSIS diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index e5edb038fbce..3058a77ad1ba 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -585,10 +585,18 @@ if(HAS_TRAIT(src, TRAIT_NIGHT_VISION)) lighting_alpha = min(lighting_alpha, LIGHTING_PLANE_ALPHA_NV_TRAIT) + if(HAS_TRAIT(src, TRAIT_CHEMICAL_NIGHTVISION)) + lighting_alpha = min(lighting_alpha, LIGHTING_PLANE_ALPHA_NV_DRUG) + see_in_dark = max(see_in_dark, 4) + if(HAS_TRAIT(src, TRAIT_THERMAL_VISION)) sight |= (SEE_MOBS) lighting_alpha = min(lighting_alpha, LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE) + if(HAS_TRAIT(src, TRAIT_GOOD_CHEMICAL_NIGHTVISION)) + lighting_alpha = min(lighting_alpha, LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE) + see_in_dark = max(see_in_dark, 6) + if(HAS_TRAIT(src, TRAIT_XRAY_VISION)) sight |= (SEE_TURFS|SEE_MOBS|SEE_OBJS) see_in_dark = max(see_in_dark, 8) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 2fabb7b65de7..cca80c569919 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -580,21 +580,21 @@ addiction_threshold = 20 metabolization_rate = 0.1 taste_description = "a distant earthiness" - var/vision_trait = TRAIT_NIGHT_VISION + var/vision_trait = TRAIT_CHEMICAL_NIGHTVISION /datum/reagent/drug/stardrop/on_mob_metabolize(mob/living/L) ..() if(iscarbon(L)) var/mob/living/carbon/drugged = L - ADD_TRAIT(drugged, vision_trait, type) ADD_TRAIT(drugged, TRAIT_CLOUDED, type) + ADD_TRAIT(drugged, TRAIT_CHEMICAL_NIGHTVISION, type) drugged.update_sight() /datum/reagent/drug/stardrop/on_mob_end_metabolize(mob/living/L) if(iscarbon(L)) var/mob/living/carbon/drugged = L - REMOVE_TRAIT(drugged, vision_trait, type) + REMOVE_TRAIT(drugged, TRAIT_CHEMICAL_NIGHTVISION, type) REMOVE_TRAIT(drugged, TRAIT_CLOUDED, type) drugged.update_sight() @@ -646,5 +646,5 @@ overdose_threshold = 17 addiction_threshold = 11 metabolization_rate = 0.2 - vision_trait = TRAIT_THERMAL_VISION + vision_trait = TRAIT_GOOD_CHEMICAL_NIGHTVISION taste_description = "sulpheric sweetness" From 9c650617c7400ea89a136a31075c921bef844ecc Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Sun, 16 Feb 2025 17:56:01 -0500 Subject: [PATCH 21/23] random name for space drugs. that isnt space drugs. --- code/modules/reagents/chemistry/reagents/drug_reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index cca80c569919..46112852407b 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -10,7 +10,7 @@ SEND_SIGNAL(M, COMSIG_CLEAR_MOOD_EVENT, "[type]_high") /datum/reagent/drug/space_drugs - name = "Space drugs" + name = "Dropsight" description = "An illegal chemical compound used as drug." color = "#60A584" // rgb: 96, 165, 132 overdose_threshold = 30 From 1ff84f1660d5b8963105b710943f2de6bd55e4f8 Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Sun, 16 Feb 2025 17:56:20 -0500 Subject: [PATCH 22/23] Update pill.dm --- code/modules/reagents/reagent_containers/pill.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index d75f04d5685a..190be7d7a15b 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -312,7 +312,7 @@ WS End */ rename_with_volume = TRUE /obj/item/reagent_containers/pill/stardrop - name = "Stardrop Capsule" + name = "stardrop capsule" desc = "A capsule of a vision enhancing compound known as Stardrop." icon_state = "pill11" list_reagents = list(/datum/reagent/drug/stardrop = 15) From a8a4a560a7902f4a2708f6da61107bd3baef875b Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Erikafox@users.noreply.github.com> Date: Fri, 21 Feb 2025 23:23:53 -0500 Subject: [PATCH 23/23] Update examine.dm --- code/modules/mob/living/carbon/human/examine.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index d87eadb4cfc1..28e3a52f656e 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -101,9 +101,9 @@ if(glasses) . += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes." else if(HAS_TRAIT(src, TRAIT_CLOUDED)) - . += "[t_His] eyes are clouded in silver." + . += span_notice("[t_His] eyes are clouded in silver.") else if(HAS_TRAIT(src, TRAIT_PINPOINT_EYES)) - . += "[t_His] pupils have diliated to pinpricks." + . += span_warning("[t_His] pupils have diliated to pinpricks.") //ears if(ears && !(ITEM_SLOT_EARS in obscured))