diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm
index 19afab2e6e..216ecd9654 100644
--- a/code/modules/reagents/reagent_dispenser.dm
+++ b/code/modules/reagents/reagent_dispenser.dm
@@ -39,6 +39,10 @@
else
qdel(src)
+///////////////
+//Water Tanks//
+///////////////
+
/obj/structure/reagent_dispensers/watertank
name = "water tank"
desc = "A water tank."
@@ -57,12 +61,52 @@
reagent_id = "firefighting_foam"
tank_volume = 500
+/obj/structure/reagent_dispensers/water_cooler
+ name = "liquid cooler"
+ desc = "A machine that dispenses liquid to drink."
+ icon = 'icons/obj/vending.dmi'
+ icon_state = "water_cooler"
+ anchored = TRUE
+ tank_volume = 500
+ var/paper_cups = 25 //Paper cups left from the cooler
+
+/obj/structure/reagent_dispensers/water_cooler/examine(mob/user)
+ ..()
+ if (paper_cups > 1)
+ to_chat(user, "There are [paper_cups] paper cups left.")
+ else if (paper_cups == 1)
+ to_chat(user, "There is one paper cup left.")
+ else
+ to_chat(user, "There are no paper cups left.")
+
+/obj/structure/reagent_dispensers/water_cooler/attack_hand(mob/living/user)
+ . = ..()
+ if(.)
+ return
+ if(!paper_cups)
+ to_chat(user, "There aren't any cups left!")
+ return
+ user.visible_message("[user] takes a cup from [src].", "You take a paper cup from [src].")
+ var/obj/item/reagent_containers/food/drinks/sillycup/S = new(get_turf(src))
+ user.put_in_hands(S)
+ paper_cups--
+
+//////////////
+//Fuel Tanks//
+//////////////
+
/obj/structure/reagent_dispensers/fueltank
name = "fuel tank"
desc = "A tank full of industrial welding fuel. Do not consume."
icon_state = "fuel"
reagent_id = "welding_fuel"
+/obj/structure/reagent_dispensers/fueltank/high //Unused - Good for ghost roles
+ name = "high-capacity fuel tank"
+ desc = "A now illegal tank, full of highly pressurized industrial welding fuel. Do not consume or have a open flame close to this tank."
+ icon_state = "fuel_high"
+ tank_volume = 3000
+
/obj/structure/reagent_dispensers/fueltank/boom()
explosion(get_turf(src), 0, 1, 5, flame_range = 5)
qdel(src)
@@ -117,6 +161,9 @@
return
return ..()
+///////////////////
+//Misc Dispenders//
+///////////////////
/obj/structure/reagent_dispensers/peppertank
name = "pepper spray refiller"
@@ -131,36 +178,24 @@
if(prob(1))
desc = "IT'S PEPPER TIME, BITCH!"
-
-/obj/structure/reagent_dispensers/water_cooler
- name = "liquid cooler"
- desc = "A machine that dispenses liquid to drink."
- icon = 'icons/obj/vending.dmi'
- icon_state = "water_cooler"
+/obj/structure/reagent_dispensers/virusfood
+ name = "virus food dispenser"
+ desc = "A dispenser of low-potency virus mutagenic."
+ icon_state = "virus_food"
anchored = TRUE
- tank_volume = 500
- var/paper_cups = 25 //Paper cups left from the cooler
+ density = FALSE
+ reagent_id = "virusfood"
-/obj/structure/reagent_dispensers/water_cooler/examine(mob/user)
- ..()
- if (paper_cups > 1)
- to_chat(user, "There are [paper_cups] paper cups left.")
- else if (paper_cups == 1)
- to_chat(user, "There is one paper cup left.")
- else
- to_chat(user, "There are no paper cups left.")
+/obj/structure/reagent_dispensers/cooking_oil
+ name = "vat of cooking oil"
+ desc = "A huge metal vat with a tap on the front. Filled with cooking oil for use in frying food."
+ icon_state = "vat"
+ anchored = TRUE
+ reagent_id = "cooking_oil"
-/obj/structure/reagent_dispensers/water_cooler/attack_hand(mob/living/user)
- . = ..()
- if(.)
- return
- if(!paper_cups)
- to_chat(user, "There aren't any cups left!")
- return
- user.visible_message("[user] takes a cup from [src].", "You take a paper cup from [src].")
- var/obj/item/reagent_containers/food/drinks/sillycup/S = new(get_turf(src))
- user.put_in_hands(S)
- paper_cups--
+////////
+//Kegs//
+////////
/obj/structure/reagent_dispensers/beerkeg
name = "beer keg"
@@ -173,19 +208,44 @@
if(!QDELETED(src))
qdel(src)
+/obj/structure/reagent_dispensers/keg
+ name = "keg"
+ desc = "A keg."
+ icon = 'modular_citadel/icons/obj/objects.dmi'
+ icon_state = "keg"
+ reagent_id = "water"
-/obj/structure/reagent_dispensers/virusfood
- name = "virus food dispenser"
- desc = "A dispenser of low-potency virus mutagenic."
- icon_state = "virus_food"
- anchored = TRUE
- density = FALSE
- reagent_id = "virusfood"
+/obj/structure/reagent_dispensers/keg/mead
+ name = "keg of mead"
+ desc = "A keg of mead."
+ icon_state = "orangekeg"
+ reagent_id = "mead"
+/obj/structure/reagent_dispensers/keg/aphro
+ name = "keg of aphrodisiac"
+ desc = "A keg of aphrodisiac."
+ icon_state = "pinkkeg"
+ reagent_id = "aphro"
-/obj/structure/reagent_dispensers/cooking_oil
- name = "vat of cooking oil"
- desc = "A huge metal vat with a tap on the front. Filled with cooking oil for use in frying food."
- icon_state = "vat"
- anchored = TRUE
- reagent_id = "cooking_oil"
+/obj/structure/reagent_dispensers/keg/aphro/strong
+ name = "keg of strong aphrodisiac"
+ desc = "A keg of strong and addictive aphrodisiac."
+ reagent_id = "aphro+"
+
+/obj/structure/reagent_dispensers/keg/milk
+ name = "keg of milk"
+ desc = "It's not quite what you were hoping for."
+ icon_state = "whitekeg"
+ reagent_id = "milk"
+
+/obj/structure/reagent_dispensers/keg/semen
+ name = "keg of semen"
+ desc = "Dear lord, where did this even come from?"
+ icon_state = "whitekeg"
+ reagent_id = "semen"
+
+/obj/structure/reagent_dispensers/keg/gargle
+ name = "keg of pan galactic gargleblaster"
+ desc = "A keg of... wow that's a long name."
+ icon_state = "bluekeg"
+ reagent_id = "gargleblaster"
\ No newline at end of file
diff --git a/code/modules/research/designs/weapon_designs.dm b/code/modules/research/designs/weapon_designs.dm
index 214ef36afe..11bc31bedc 100644
--- a/code/modules/research/designs/weapon_designs.dm
+++ b/code/modules/research/designs/weapon_designs.dm
@@ -47,6 +47,22 @@
build_path = /obj/item/ammo_box/magazine/wt550m9/wtic
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
+/datum/design/mag_oldsmg/tx_mag
+ name = "WT-550 Semi-Auto SMG Uranium Magazine (4.6x30mm TX)"
+ desc = "A 20 round uranium tipped magazine for the out of date security WT-550 Semi-Auto SMG."
+ id = "mag_oldsmg_tx"
+ materials = list(MAT_METAL = 6000, MAT_SILVER = 600, MAT_URANIUM = 2000)
+ build_path = /obj/item/ammo_box/magazine/wt550m9/wttx
+ departmental_flags = DEPARTMENTAL_FLAG_SECURITY
+
+/datum/design/mag_oldsmg/rubber_mag
+ name = "WT-550 Semi-Auto SMG rubberbullets Magazine (4.6x30mm rubber)"
+ desc = "A 20 round rubber shots magazine for the out of date security WT-550 Semi-Auto SMG"
+ id = "mag_oldsmg_rubber"
+ materials = list(MAT_METAL = 6000)
+ build_path = /obj/item/ammo_box/magazine/wt550m9/wtrubber
+ departmental_flags = DEPARTMENTAL_FLAG_SECURITY
+
//////////////
//Ammo Shells/
//////////////
diff --git a/icons/obj/objects.dmi b/icons/obj/objects.dmi
index 647722b1de..87db0caa67 100644
Binary files a/icons/obj/objects.dmi and b/icons/obj/objects.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 0af5cc0675..5b0d6151b4 100755
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -3051,16 +3051,13 @@
#include "modular_citadel\code\modules\reagents\chemistry\recipes\fermi.dm"
#include "modular_citadel\code\modules\reagents\objects\clothes.dm"
#include "modular_citadel\code\modules\reagents\objects\items.dm"
-#include "modular_citadel\code\modules\reagents\reagent container\cit_kegs.dm"
#include "modular_citadel\code\modules\reagents\reagent container\hypospraymkii.dm"
#include "modular_citadel\code\modules\reagents\reagent container\hypovial.dm"
#include "modular_citadel\code\modules\reagents\reagents\cit_reagents.dm"
#include "modular_citadel\code\modules\recycling\disposal\bin.dm"
#include "modular_citadel\code\modules\research\designs\autoylathe_designs.dm"
#include "modular_citadel\code\modules\research\designs\machine_designs.dm"
-#include "modular_citadel\code\modules\research\designs\weapon_designs.dm"
#include "modular_citadel\code\modules\research\designs\xenobio_designs.dm"
-#include "modular_citadel\code\modules\research\designs\weapon_designs\weapon_designs.dm"
#include "modular_citadel\code\modules\research\techweb\_techweb.dm"
#include "modular_citadel\code\modules\research\xenobiology\xenobio_camera.dm"
#include "modular_citadel\code\modules\vehicles\secway.dm"