From 84058799618ff2720e55ac3bb91ec987857ba9f4 Mon Sep 17 00:00:00 2001 From: FlamingLily <80451102+FlamingLily@users.noreply.github.com> Date: Mon, 20 Jan 2025 00:03:46 +1100 Subject: [PATCH] More maint drugs (#20376) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds more drugs (in more varieties) to the maintenance tunnels, including: "Smart Pills" All the cocaine variants, as opposed to just two (available in individual pills and pill bottles) Joy (available as a pill and a bottle) Heroin pill bottle and syringe (not autoinjector, normal syringe) Krok Juice as an autoinjector Snowflake as an autoinjector Raskara dust as a normal syringe and as an inhaler Pills and pill bottles were also moved into a further random contraband subtype to make it a little less common to find them and keep the loot spawns more diverse i wanted to add red nightshade but the last PR that tried got told to remove it 😔 --- code/game/objects/random/loot.dm | 38 ++++++++++-- .../reagents/reagent_containers/hypospray.dm | 14 +++++ .../reagents/reagent_containers/syringes.dm | 44 ++++++++++---- .../changelogs/flaminglily-moremaintdrugs.yml | 58 +++++++++++++++++++ 4 files changed, 140 insertions(+), 14 deletions(-) create mode 100644 html/changelogs/flaminglily-moremaintdrugs.yml diff --git a/code/game/objects/random/loot.dm b/code/game/objects/random/loot.dm index 296d07478a7..f3633ab7ced 100644 --- a/code/game/objects/random/loot.dm +++ b/code/game/objects/random/loot.dm @@ -328,13 +328,18 @@ /obj/item/storage/pill_bottle/mortaphenyl = 3, /obj/item/storage/pill_bottle/happy = 2, /obj/item/storage/pill_bottle/zoom = 2, - /obj/item/reagent_containers/pill/cocaine = 3, - /obj/item/reagent_containers/pill/heroin = 2, + /obj/item/storage/pill_bottle/smart = 2, + /obj/random/contraband/pill = 3, /obj/item/reagent_containers/hypospray/autoinjector/stimpack = 2, + /obj/item/reagent_containers/hypospray/autoinjector/krokjuice = 2, /obj/item/reagent_containers/hypospray/autoinjector/impedrezene = 0.4, - /obj/item/reagent_containers/hypospray/autoinjector/night_juice = 0.3, + /obj/item/reagent_containers/hypospray/autoinjector/night_juice = 1, + /obj/item/reagent_containers/hypospray/autoinjector/snowflake = 1, /obj/item/storage/box/syndie_kit/syringe_gun = 0.5, /obj/item/reagent_containers/syringe/drugs = 1, + /obj/item/reagent_containers/syringe/raskara_dust = 1, + /obj/item/reagent_containers/syringe/heroin = 1, + /obj/item/reagent_containers/inhaler/raskara_dust = 2, /obj/item/reagent_containers/inhaler/space_drugs = 2, /obj/item/storage/box/smokes = 0.7, /obj/item/grenade/napalm = 0.4, @@ -351,7 +356,7 @@ /obj/item/gun/projectile/pistol = 0.2, /obj/item/gun/projectile/revolver/derringer = 0.4, /obj/item/gun/projectile/shotgun/improvised/sawn = 0.3, - /obj/item/storage/pill_bottle/spotlight = 1, + /obj/random/contraband/pillbottle = 1, /obj/item/material/knife/butterfly/switchblade = 1, /obj/item/clothing/mask/gas/voice = 1, /obj/item/clothing/gloves/brassknuckles = 2, @@ -359,6 +364,31 @@ /obj/item/toy/balloon/syndicate = 4 ) +/obj/random/contraband/pill + name = "random contraband pill" + desc = "This is a random pill of illegal drugs." + icon_state = "knife" + problist = list( + /obj/item/reagent_containers/pill/cocaine = 3, + /obj/item/reagent_containers/pill/contemplus = 3, + /obj/item/reagent_containers/pill/sparkle = 3, + /obj/item/reagent_containers/pill/spotlight = 3, + /obj/item/reagent_containers/pill/heroin = 2, + /obj/item/reagent_containers/pill/joy = 2 + ) + +/obj/random/contraband/pillbottle + name = "random contraband pill bottle" + desc = "This is a random bottle of illegal pills." + icon_state = "knife" + problist = list( + /obj/item/storage/pill_bottle/cocaine = 1, + /obj/item/storage/pill_bottle/contemplus = 1, + /obj/item/storage/pill_bottle/sparkle = 1, + /obj/item/storage/pill_bottle/spotlight = 1, + /obj/item/storage/pill_bottle/heroin = 1, + /obj/item/storage/pill_bottle/joy = 1 + ) /obj/random/coin name = "random coin" desc = "This is a random coin." diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 3904dbfb125..a9a7c064fa6 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -361,3 +361,17 @@ volume = 10 amount_per_transfer_from_this = 10 reagents_to_add = list(/singleton/reagent/drugs/night_juice = 10) + +/obj/item/reagent_containers/hypospray/autoinjector/krokjuice + name = "krok juice autoinjector" + desc = "An autoinjector loaded with krok juice, an Eridanian narcotic known for causing intense, and pleasurable, prosthetic malfunctions." + volume = 10 + amount_per_transfer_from_this = 10 + reagents_to_add = list(/singleton/reagent/toxin/krok = 10) + +/obj/item/reagent_containers/hypospray/autoinjector/snowflake + name = "snowflake autoinjector" + desc = "An autoinjector loaded with snowflake, a recreational stimulant known for causing euphoria while dramatically lowering a user's body temperature." + volume = 10 + amount_per_transfer_from_this = 10 + reagents_to_add = list(/singleton/reagent/drugs/snowflake = 10) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 8c226fed0f8..a3a55428ca8 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -398,6 +398,8 @@ desc = "A syringe for our synthetic friends." gets_dirty = FALSE + +// Pre-Loaded Medications /obj/item/reagent_containers/syringe/inaprovaline name = "Syringe (inaprovaline)" desc = "Contains inaprovaline - used to stabilize patients." @@ -428,16 +430,6 @@ mode = SYRINGE_INJECT update_icon() -/obj/item/reagent_containers/syringe/drugs - name = "Syringe (drugs)" - desc = "Contains aggressive drugs meant for torture. Markered lines denote points at which to stop injecting." - reagents_to_add = list(/singleton/reagent/toxin/panotoxin = 1, /singleton/reagent/drugs/cryptobiolin = 4, /singleton/reagent/drugs/mindbreaker = 10) - -/obj/item/reagent_containers/syringe/drugs/Initialize() - . = ..() - mode = SYRINGE_INJECT - update_icon() - /obj/item/reagent_containers/syringe/fluvectionem name = "Syringe (fluvectionem)" desc = "Contains purging medicine." @@ -465,3 +457,35 @@ . = ..() mode = SYRINGE_INJECT update_icon() + +// Contraband + +/obj/item/reagent_containers/syringe/drugs + name = "Syringe (drugs)" + desc = "Contains aggressive drugs meant for torture. Markered lines denote points at which to stop injecting." + reagents_to_add = list(/singleton/reagent/toxin/panotoxin = 1, /singleton/reagent/drugs/cryptobiolin = 4, /singleton/reagent/drugs/mindbreaker = 10) + +/obj/item/reagent_containers/syringe/drugs/Initialize() + . = ..() + mode = SYRINGE_INJECT + update_icon() + +/obj/item/reagent_containers/syringe/heroin + name = "Syringe (heroin)" + desc = "For those unbearable pains. Markered lines indicate that this syringe contains three doses." + reagents_to_add = list(/singleton/reagent/drugs/heroin = 15) + +/obj/item/reagent_containers/syringe/heroin/Initialize() + . = ..() + mode = SYRINGE_INJECT + update_icon() + +/obj/item/reagent_containers/syringe/raskara_dust + name = "Syringe (raskara dust)" + desc = "A syringe of raskara dust, a narcotic that provokes a trance-like state in the user. More potent when injected." + reagents_to_add = list(/singleton/reagent/drugs/raskara_dust = 15) + +/obj/item/reagent_containers/syringe/raskara_dust/Initialize() + . = ..() + mode = SYRINGE_INJECT + update_icon() diff --git a/html/changelogs/flaminglily-moremaintdrugs.yml b/html/changelogs/flaminglily-moremaintdrugs.yml new file mode 100644 index 00000000000..7bdc240d4fd --- /dev/null +++ b/html/changelogs/flaminglily-moremaintdrugs.yml @@ -0,0 +1,58 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# - (fixes bugs) +# wip +# - (work in progress) +# qol +# - (quality of life) +# soundadd +# - (adds a sound) +# sounddel +# - (removes a sound) +# rscadd +# - (adds a feature) +# rscdel +# - (removes a feature) +# imageadd +# - (adds an image or sprite) +# imagedel +# - (removes an image or sprite) +# spellcheck +# - (fixes spelling or grammar) +# experiment +# - (experimental change) +# balance +# - (balance changes) +# code_imp +# - (misc internal code change) +# refactor +# - (refactors code) +# config +# - (makes a change to the config files) +# admin +# - (makes changes to administrator tools) +# server +# - (miscellaneous changes to server) +################################# + +# Your name. +author: Flaminglily + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Added a significantly more diverse amount of contraband drugs to be found in the maintenance tunnels."