diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm
index 8c81c98db63..d6843d95ad0 100644
--- a/code/datums/supplypacks.dm
+++ b/code/datums/supplypacks.dm
@@ -109,7 +109,9 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
/datum/supply_packs/party
name = "Party equipment"
contains = list(
- /obj/item/weapon/storage/box/drinkingglasses,
+ /obj/item/weapon/storage/box/mixedglasses,
+ /obj/item/weapon/storage/box/mixedglasses,
+ /obj/item/weapon/storage/box/glasses/square,
/obj/item/weapon/reagent_containers/food/drinks/shaker,
/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,
/obj/item/weapon/reagent_containers/food/drinks/bottle/patron,
@@ -119,13 +121,32 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
/obj/item/weapon/lipstick/random,
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 2,
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 4,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 4
)
cost = 20
containertype = /obj/structure/closet/crate
containername = "Party equipment"
group = "Hospitality"
+/datum/supply_packs/barsupplies
+ name = "Bar supplies"
+ contains = list(
+ /obj/item/weapon/storage/box/glasses/cocktail,
+ /obj/item/weapon/storage/box/glasses/rocks,
+ /obj/item/weapon/storage/box/glasses/square,
+ /obj/item/weapon/storage/box/glasses/pint,
+ /obj/item/weapon/storage/box/glasses/wine,
+ /obj/item/weapon/storage/box/glasses/shake,
+ /obj/item/weapon/storage/box/glasses/shot,
+ /obj/item/weapon/storage/box/glasses/mug,
+ /obj/item/weapon/reagent_containers/food/drinks/shaker,
+ /obj/item/weapon/storage/box/glass_extras/straws,
+ /obj/item/weapon/storage/box/glass_extras/sticks
+ )
+ cost = 10
+ containertype = /obj/structure/closet/crate
+ containername = "crate of bar supplies"
+ group = "Hospitality"
+
/datum/supply_packs/lasertag
name = "Lasertag equipment"
contains = list(
diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm
index eda9262351f..82decf4836e 100644
--- a/code/game/machinery/autolathe_datums.dm
+++ b/code/game/machinery/autolathe_datums.dm
@@ -38,13 +38,33 @@
/datum/autolathe/recipe/drinkingglass
name = "drinking glass"
- path = /obj/item/weapon/reagent_containers/food/drinks/drinkingglass
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/square
category = "General"
+ New()
+ ..()
+ var/obj/O = path
+ name = initial(O.name) // generic recipes yay
-/datum/autolathe/recipe/shotglass/
- name = "shot glass"
- path = /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass
- category = "General"
+/datum/autolathe/recipe/drinkingglass/rocks
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks
+
+/datum/autolathe/recipe/drinkingglass/shake
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake
+
+/datum/autolathe/recipe/drinkingglass/cocktail
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail
+
+/datum/autolathe/recipe/drinkingglass/shot
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot
+
+/datum/autolathe/recipe/drinkingglass/pint
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint
+
+/datum/autolathe/recipe/drinkingglass/mug
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug
+
+/datum/autolathe/recipe/drinkingglass/wine
+ path = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine
/datum/autolathe/recipe/flashlight
name = "flashlight"
diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm
index f086a3e1dd6..f3cfc9bcff0 100644
--- a/code/game/machinery/vending.dm
+++ b/code/game/machinery/vending.dm
@@ -719,8 +719,14 @@
/obj/item/weapon/reagent_containers/food/drinks/cans/sodawater = 15,
/obj/item/weapon/reagent_containers/food/drinks/flask/barflask = 5,
/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask = 5,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 30,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 30,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/shake = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/shot = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/pint = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/mug = 10,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/wine = 10,
/obj/item/weapon/reagent_containers/food/drinks/ice = 10,
/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5,
/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5,
@@ -959,7 +965,8 @@
/obj/item/weapon/material/kitchen/utensil/knife = 6,
/obj/item/weapon/material/kitchen/utensil/spoon = 6,
/obj/item/weapon/material/knife = 3,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8,
+ /obj/item/weapon/material/kitchen/rollingpin = 2,
+ /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 8,
/obj/item/clothing/suit/chef/classic = 2,
/obj/item/weapon/storage/toolbox/lunchbox = 3,
/obj/item/weapon/storage/toolbox/lunchbox/heart = 3,
@@ -971,16 +978,15 @@
/obj/item/weapon/storage/toolbox/lunchbox/syndicate = 3)
- contraband = list(/obj/item/weapon/material/kitchen/rollingpin = 2,
- /obj/item/weapon/material/knife/butch = 2)
+ contraband = list(/obj/item/weapon/material/knife/butch = 2)
/obj/machinery/vending/sovietsoda
name = "BODA"
desc = "An old sweet water vending machine,how did this end up here?"
icon_state = "sovietsoda"
product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem."
- products = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/soda = 30)
- contraband = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/cola = 20)
+ products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 30) // TODO Russian soda can
+ contraband = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 20) // TODO Russian cola can
idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan.
/obj/machinery/vending/tool
@@ -1053,16 +1059,16 @@
icon_state = "fitness"
products = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 8,
/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 8,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 8,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 8,
+ //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 8,
+ //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 8,
/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 8,
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 8,
/obj/item/weapon/reagent_containers/pill/diet = 8)
prices = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 3,
/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 3,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 20,
- /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 5,
+ //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 20,
+ //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 5,
/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 5,
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 5,
/obj/item/weapon/reagent_containers/pill/diet = 25)
diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm
index b96d53c2a87..6384508c044 100644
--- a/code/game/objects/items/weapons/RSF.dm
+++ b/code/game/objects/items/weapons/RSF.dm
@@ -82,7 +82,7 @@ RSF
product = new /obj/item/clothing/mask/smokable/cigarette()
used_energy = 10
if(2)
- product = new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass()
+ product = new /obj/item/weapon/reagent_containers/food/drinks/glass2()
used_energy = 50
if(3)
product = new /obj/item/weapon/paper()
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index 9f6992d4046..a1b6e17b5a8 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -312,15 +312,6 @@
for(var/i = 1 to 7)
new /obj/item/clothing/glasses/regular(src)
-/obj/item/weapon/storage/box/drinkingglasses
- name = "box of drinking glasses"
- desc = "It has a picture of drinking glasses on it."
-
-/obj/item/weapon/storage/box/drinkingglasses/New()
- ..()
- for(var/i = 1 to 7)
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
-
/obj/item/weapon/storage/box/cdeathalarm_kit
name = "death alarm kit"
desc = "Box of stuff used to implant death alarms."
@@ -570,4 +561,4 @@
/obj/item/weapon/storage/box/ambrosiadeus/New()
..()
for(var/i = 1 to 7)
- new /obj/item/seeds/ambrosiadeusseed(src)
\ No newline at end of file
+ new /obj/item/seeds/ambrosiadeusseed(src)
diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm
index b58f1384da7..5c4dc8c169f 100644
--- a/code/modules/reagents/Chemistry-Machinery.dm
+++ b/code/modules/reagents/Chemistry-Machinery.dm
@@ -349,7 +349,7 @@
return
if (istype(O,/obj/item/weapon/reagent_containers/glass) || \
- istype(O,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass) || \
+ istype(O,/obj/item/weapon/reagent_containers/food/drinks/glass2) || \
istype(O,/obj/item/weapon/reagent_containers/food/drinks/shaker))
if (beaker)
diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm
index e7317b32e88..64cbd4a32c0 100644
--- a/code/modules/reagents/Chemistry-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents.dm
@@ -26,17 +26,19 @@
var/overdose = 0
var/scannable = 0 // Shows up on health analyzers.
var/affects_dead = 0
- var/glass_icon_state = null
- var/glass_name = null
- var/glass_desc = null
- var/glass_center_of_mass = null
var/cup_icon_state = null
var/cup_name = null
var/cup_desc = null
var/cup_center_of_mass = null
+
var/color = "#000000"
var/color_weight = 1
+ var/glass_icon = DRINK_ICON_DEFAULT
+ var/glass_name = "something"
+ var/glass_desc = "It's a glass of... what, exactly?"
+ var/list/glass_special = null // null equivalent to list()
+
/datum/reagent/proc/remove_self(var/amount) // Shortcut
holder.remove_reagent(id, amount)
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm
index 20225508c65..842814bca26 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm
@@ -6,8 +6,7 @@
metabolism = REM * 5
color = "#C80000"
- glass_icon_state = "glass_red"
- glass_name = "glass of tomato juice"
+ glass_name = "tomato juice"
glass_desc = "Are you sure this is tomato juice?"
/datum/reagent/blood/initialize_data(var/newdata)
@@ -91,8 +90,7 @@
color = "#0064C877"
metabolism = REM * 10
- glass_icon_state = "glass_clear"
- glass_name = "glass of water"
+ glass_name = "water"
glass_desc = "The father of all refreshments."
/datum/reagent/water/touch_turf(var/turf/simulated/T)
@@ -154,8 +152,7 @@
reagent_state = LIQUID
color = "#660000"
- glass_icon_state = "dr_gibb_glass"
- glass_name = "glass of welder fuel"
+ glass_name = "welder fuel"
glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption."
/datum/reagent/fuel/touch_turf(var/turf/T)
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm
index 4c3e461a270..89837746c38 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm
@@ -66,8 +66,7 @@
var/targ_temp = 310
var/halluci = 0
- glass_icon_state = "glass_clear"
- glass_name = "glass of ethanol"
+ glass_name = "ethanol"
glass_desc = "A well-known alcohol with a variety of applications."
/datum/reagent/ethanol/touch_mob(var/mob/living/L, var/amount)
@@ -368,9 +367,10 @@
description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste."
reagent_state = SOLID
color = "#FFFFFF"
- glass_icon_state = "iceglass"
- glass_name = "glass of sugar"
+
+ glass_name = "sugar"
glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste."
+ glass_icon = DRINK_ICON_NOISY
/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
M.nutrition += removed * 3
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm
index 469c34a1c19..e0bca7f3f9c 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm
@@ -383,8 +383,7 @@
description = "The raw essence of a banana."
color = "#C3AF00"
- glass_icon_state = "banana"
- glass_name = "glass of banana juice"
+ glass_name = "banana juice"
glass_desc = "The raw essence of a banana. HONK!"
/datum/reagent/drink/juice/berry
@@ -393,8 +392,7 @@
description = "A delicious blend of several different kinds of berries."
color = "#990066"
- glass_icon_state = "berryjuice"
- glass_name = "glass of berry juice"
+ glass_name = "berry juice"
glass_desc = "Berry juice. Or maybe it's jam. Who cares?"
/datum/reagent/drink/juice/carrot
@@ -403,8 +401,7 @@
description = "It is just like a carrot but without crunching."
color = "#FF8C00" // rgb: 255, 140, 0
- glass_icon_state = "carrotjuice"
- glass_name = "glass of carrot juice"
+ glass_name = "carrot juice"
glass_desc = "It is just like a carrot but without crunching."
/datum/reagent/drink/juice/carrot/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
@@ -417,8 +414,7 @@
description = "It's grrrrrape!"
color = "#863333"
- glass_icon_state = "grapejuice"
- glass_name = "glass of grape juice"
+ glass_name = "grape juice"
glass_desc = "It's grrrrrape!"
/datum/reagent/juice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
@@ -448,8 +444,7 @@
description = "This juice is VERY sour."
color = "#AFAF00"
- glass_icon_state = "lemonjuice"
- glass_name = "glass of lemon juice"
+ glass_name = "lemon juice"
glass_desc = "Sour..."
/datum/reagent/drink/juice/lime
@@ -458,8 +453,7 @@
description = "The sweet-sour juice of limes."
color = "#365E30"
- glass_icon_state = "glass_green"
- glass_name = "glass of lime juice"
+ glass_name = "lime juice"
glass_desc = "A glass of sweet-sour lime juice"
/datum/reagent/drink/juice/lime/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
@@ -474,8 +468,7 @@
description = "Both delicious AND rich in Vitamin C, what more do you need?"
color = "#E78108"
- glass_icon_state = "glass_orange"
- glass_name = "glass of orange juice"
+ glass_name = "orange juice"
glass_desc = "Vitamins! Yay!"
/datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
@@ -491,8 +484,7 @@
color = "#863353"
strength = 5
- glass_icon_state = "poisonberryjuice"
- glass_name = "glass of poison berry juice"
+ glass_name = "poison berry juice"
glass_desc = "A glass of deadly juice."
/datum/reagent/drink/juice/potato
@@ -502,8 +494,7 @@
nutrition = 2
color = "#302000"
- glass_icon_state = "glass_brown"
- glass_name = "glass of potato juice"
+ glass_name = "potato juice"
glass_desc = "Juice from a potato. Bleh."
/datum/reagent/drink/juice/tomato
@@ -512,8 +503,7 @@
description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?"
color = "#731008"
- glass_icon_state = "glass_red"
- glass_name = "glass of tomato juice"
+ glass_name = "tomato juice"
glass_desc = "Are you sure this is tomato juice?"
/datum/reagent/drink/juice/tomato/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
@@ -528,8 +518,7 @@
description = "Delicious juice made from watermelon."
color = "#B83333"
- glass_icon_state = "glass_red"
- glass_name = "glass of watermelon juice"
+ glass_name = "watermelon juice"
glass_desc = "Delicious juice made from watermelon."
// Everything else
@@ -540,8 +529,7 @@
description = "An opaque white liquid produced by the mammary glands of mammals."
color = "#DFDFDF"
- glass_icon_state = "glass_white"
- glass_name = "glass of milk"
+ glass_name = "milk"
glass_desc = "White and nutritious goodness!"
cup_icon_state = "cup_cream"
@@ -554,7 +542,6 @@
description = "A delicious mixture of perfectly healthy mix and terrible chocolate."
color = "#74533b"
- glass_icon_state = "glass_brown"
glass_name = "glass of chocolate milk"
glass_desc = "Delciously fattening!"
@@ -575,8 +562,7 @@
description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?"
color = "#DFD7AF"
- glass_icon_state = "glass_white"
- glass_name = "glass of cream"
+ glass_name = "cream"
glass_desc = "Ewwww..."
cup_icon_state = "cup_cream"
@@ -589,8 +575,7 @@
description = "An opaque white liquid made from soybeans."
color = "#DFDFC7"
- glass_icon_state = "glass_white"
- glass_name = "glass of soy milk"
+ glass_name = "soy milk"
glass_desc = "White and nutritious soy goodness!"
cup_icon_state = "cup_cream"
@@ -607,7 +592,6 @@
adj_sleepy = -3
adj_temp = 20
- glass_icon_state = "bigteacup"
glass_name = "cup of tea"
glass_desc = "Tasty black tea, it has antioxidants, it's good for you!"
@@ -624,10 +608,9 @@
color = "#104038" // rgb: 16, 64, 56
adj_temp = -5
- glass_icon_state = "icedteaglass"
- glass_name = "glass of iced tea"
+ glass_name = "iced tea"
glass_desc = "No relation to a certain rap artist/ actor."
- glass_center_of_mass = list("x"=15, "y"=10)
+ glass_special = list(DRINK_ICE)
/datum/reagent/drink/coffee
name = "Coffee"
@@ -640,14 +623,14 @@
adj_temp = 25
overdose = 45
- glass_icon_state = "hot_coffee"
- glass_name = "mug of coffee"
- glass_desc = "Don't drop it, or you'll send scalding liquid and porcelain shards everywhere."
-
cup_icon_state = "cup_coffee"
cup_name = "cup of coffee"
cup_desc = "Don't drop it, or you'll send scalding liquid and porcelain shards everywhere."
+ glass_name = "cup of coffee"
+ glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere."
+
+
/datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
if(alien == IS_DIONA)
return
@@ -680,21 +663,20 @@
color = "#102838"
adj_temp = -5
- glass_icon_state = "icedcoffeeglass"
- glass_name = "glass of iced coffee"
+ glass_name = "iced coffee"
glass_desc = "A drink to perk you up and refresh you!"
+ glass_special = list(DRINK_ICE)
/datum/reagent/drink/coffee/soy_latte
name = "Soy Latte"
id = "soy_latte"
description = "A nice and tasty beverage while you are reading your hippie books."
- color = "#664300"
+ color = "#C65905"
adj_temp = 5
- glass_icon_state = "soy_latte"
- glass_name = "glass of soy latte"
glass_desc = "A nice and refreshing beverage while you are reading."
- glass_center_of_mass = list("x"=15, "y"=9)
+ glass_name = "soy latte"
+ glass_desc = "A nice and refrshing beverage while you are reading."
cup_icon_state = "cup_latte"
cup_name = "cup of soy latte"
@@ -708,13 +690,11 @@
name = "Cafe Latte"
id = "cafe_latte"
description = "A nice, strong and tasty beverage while you are reading."
- color = "#664300" // rgb: 102, 67, 0
+ color = "#C65905"
adj_temp = 5
- glass_icon_state = "cafe_latte"
- glass_name = "glass of cafe latte"
+ glass_name = "cafe latte"
glass_desc = "A nice, strong and refreshing beverage while you are reading."
- glass_center_of_mass = list("x"=15, "y"=9)
cup_icon_state = "cup_latte"
cup_name = "cup of cafe latte"
@@ -733,8 +713,7 @@
nutrition = 2
adj_temp = 5
- glass_icon_state = "chocolateglass"
- glass_name = "glass of hot chocolate"
+ glass_name = "hot chocolate"
glass_desc = "Made with love! And cocoa beans."
cup_icon_state = "cup_coco"
@@ -750,9 +729,9 @@
adj_drowsy = -3
adj_temp = -5
- glass_icon_state = "glass_clear"
- glass_name = "glass of soda water"
+ glass_name = "soda water"
glass_desc = "Soda water. Why not make a scotch and soda?"
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/grapesoda
name = "Grape Soda"
@@ -761,22 +740,22 @@
color = "#421C52"
adj_drowsy = -3
- glass_icon_state = "gsodaglass"
- glass_name = "glass of grape soda"
+ glass_name = "grape soda"
glass_desc = "Looks like a delicious drink!"
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/tonic
name = "Tonic Water"
id = "tonic"
description = "It tastes strange but at least the quinine keeps the Space Malaria at bay."
- color = "#664300"
+ color = "#619494"
+
adj_dizzy = -5
adj_drowsy = -3
adj_sleepy = -2
adj_temp = -5
- glass_icon_state = "glass_clear"
- glass_name = "glass of tonic water"
+ glass_name = "tonic water"
glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away."
/datum/reagent/drink/soda/lemonade
@@ -786,9 +765,9 @@
color = "#FFFF00"
adj_temp = -5
- glass_icon_state = "lemonadeglass"
- glass_name = "glass of lemonade"
+ glass_name = "lemonade"
glass_desc = "Oh the nostalgia..."
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/kiraspecial
name = "Kira Special"
@@ -797,10 +776,9 @@
color = "#CCCC99"
adj_temp = -5
- glass_icon_state = "kiraspecial"
- glass_name = "glass of Kira Special"
+ glass_name = "Kira Special"
glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!"
- glass_center_of_mass = list("x"=16, "y"=12)
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/brownstar
name = "Brown Star"
@@ -809,8 +787,7 @@
color = "#9F3400"
adj_temp = -2
- glass_icon_state = "brownstar"
- glass_name = "glass of Brown Star"
+ glass_name = "Brown Star"
glass_desc = "It's not what it sounds like..."
/datum/reagent/drink/milkshake
@@ -820,10 +797,8 @@
color = "#AEE5E4"
adj_temp = -9
- glass_icon_state = "milkshake"
- glass_name = "glass of milkshake"
+ glass_name = "milkshake"
glass_desc = "Glorious brainfreezing mixture."
- glass_center_of_mass = list("x"=16, "y"=7)
/datum/reagent/milkshake/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -853,10 +828,8 @@
color = "#485000"
adj_temp = -5
- glass_icon_state = "rewriter"
- glass_name = "glass of Rewriter"
+ glass_name = "Rewriter"
glass_desc = "The secret of the sanctuary of the Libarian..."
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -870,10 +843,9 @@
adj_temp = -5
adj_sleepy = -2
- glass_icon_state = "nuka_colaglass"
- glass_name = "glass of Nuka-Cola"
+ glass_name = "Nuka-Cola"
glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland"
- glass_center_of_mass = list("x"=16, "y"=6)
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -889,10 +861,8 @@
description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?"
color = "#FF004F"
- glass_icon_state = "grenadineglass"
- glass_name = "glass of grenadine syrup"
+ glass_name = "grenadine syrup"
glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks."
- glass_center_of_mass = list("x"=17, "y"=6)
/datum/reagent/drink/soda/space_cola
name = "Space Cola"
@@ -903,9 +873,9 @@
adj_drowsy = -3
adj_temp = -5
- glass_icon_state = "glass_brown"
- glass_name = "glass of Space Cola"
+ glass_name = "Space Cola"
glass_desc = "A glass of refreshing Space Cola"
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/spacemountainwind
name = "Mountain Wind"
@@ -916,9 +886,9 @@
adj_sleepy = -1
adj_temp = -5
- glass_icon_state = "Space_mountain_wind_glass"
- glass_name = "glass of Space Mountain Wind"
+ glass_name = "Space Mountain Wind"
glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind."
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/dr_gibb
name = "Dr. Gibb"
@@ -928,8 +898,7 @@
adj_drowsy = -6
adj_temp = -5
- glass_icon_state = "dr_gibb_glass"
- glass_name = "glass of Dr. Gibb"
+ glass_name = "Dr. Gibb"
glass_desc = "Dr. Gibb. Not as dangerous as the name might imply."
/datum/reagent/drink/soda/space_up
@@ -939,9 +908,9 @@
color = "#202800"
adj_temp = -8
- glass_icon_state = "space-up_glass"
- glass_name = "glass of Space-up"
+ glass_name = "Space-up"
glass_desc = "Space-up. It helps keep your cool."
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/soda/lemon_lime
name = "Lemon Lime"
@@ -950,9 +919,9 @@
color = "#878F00"
adj_temp = -8
- glass_icon_state = "lemonlime"
- glass_name = "glass of lemon lime soda"
+ glass_name = "lemon lime soda"
glass_desc = "A tangy substance made of 0.5% natural citrus!"
+ glass_special = list(DRINK_FIZZ)
/datum/reagent/drink/doctor_delight
name = "The Doctor's Delight"
@@ -962,10 +931,8 @@
color = "#FF8CFF"
nutrition = 1
- glass_icon_state = "doctorsdelightglass"
- glass_name = "glass of The Doctor's Delight"
+ glass_name = "The Doctor's Delight"
glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1018,17 +985,16 @@
color = "#619494"
adj_temp = -5
- glass_icon_state = "iceglass"
- glass_name = "glass of ice"
+ glass_name = "ice"
glass_desc = "Generally, you're supposed to put something else in there too..."
+ glass_icon = DRINK_ICON_NOISY
/datum/reagent/drink/nothing
name = "Nothing"
id = "nothing"
description = "Absolutely nothing."
- glass_icon_state = "nothing"
- glass_name = "glass of nothing"
+ glass_name = "nothing"
glass_desc = "Absolutely nothing."
/* Alcohol */
@@ -1042,35 +1008,29 @@
color = "#33EE00"
strength = 12
- glass_icon_state = "absintheglass"
- glass_name = "glass of absinthe"
+ glass_name = "absinthe"
glass_desc = "Wormwood, anise, oh my."
- glass_center_of_mass = list("x"=16, "y"=5)
/datum/reagent/ethanol/ale
name = "Ale"
id = "ale"
description = "A dark alchoholic beverage made by malted barley and yeast."
- color = "#664300"
+ color = "#4C3100"
strength = 50
- glass_icon_state = "aleglass"
- glass_name = "glass of ale"
+ glass_name = "ale"
glass_desc = "A freezing pint of delicious ale"
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/beer
name = "Beer"
id = "beer"
description = "An alcoholic beverage made from malted grains, hops, yeast, and water."
- color = "#664300"
+ color = "#FFD300"
strength = 50
nutriment_factor = 1
- glass_icon_state = "beerglass"
- glass_name = "glass of beer"
+ glass_name = "beer"
glass_desc = "A freezing pint of beer"
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1085,10 +1045,8 @@
color = "#0000CD"
strength = 15
- glass_icon_state = "curacaoglass"
- glass_name = "glass of blue curacao"
+ glass_name = "blue curacao"
glass_desc = "Exotically blue, fruity drink, distilled from oranges."
- glass_center_of_mass = list("x"=16, "y"=5)
/datum/reagent/ethanol/cognac
name = "Cognac"
@@ -1097,22 +1055,18 @@
color = "#AB3C05"
strength = 15
- glass_icon_state = "cognacglass"
- glass_name = "glass of cognac"
+ glass_name = "cognac"
glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this."
- glass_center_of_mass = list("x"=16, "y"=6)
/datum/reagent/ethanol/deadrum
name = "Deadrum"
id = "deadrum"
description = "Popular with the sailors. Not very popular with everyone else."
- color = "#664300"
+ color = "#ECB633"
strength = 50
- glass_icon_state = "rumglass"
- glass_name = "glass of rum"
+ glass_name = "rum"
glass_desc = "Now you want to Pray for a pirate suit, don't you?"
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1124,13 +1078,11 @@
name = "Gin"
id = "gin"
description = "It's gin. In space. I say, good sir."
- color = "#664300"
+ color = "#0064C6"
strength = 50
- glass_icon_state = "ginvodkaglass"
- glass_name = "glass of gin"
+ glass_name = "gin"
glass_desc = "A crystal clear glass of Griffeater gin."
- glass_center_of_mass = list("x"=16, "y"=12)
//Base type for alchoholic drinks containing coffee
/datum/reagent/ethanol/coffee
@@ -1168,13 +1120,11 @@
name = "Kahlua"
id = "kahlua"
description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!"
- color = "#664300"
+ color = "#4C3100"
strength = 15
- glass_icon_state = "kahluaglass"
- glass_name = "glass of RR coffee liquor"
+ glass_name = "RR coffee liquor"
glass_desc = "DAMN, THIS THING LOOKS ROBUST"
- glass_center_of_mass = list("x"=15, "y"=7)
/datum/reagent/ethanol/melonliquor
name = "Melon Liquor"
@@ -1183,34 +1133,28 @@
color = "#138808" // rgb: 19, 136, 8
strength = 50
- glass_icon_state = "emeraldglass"
- glass_name = "glass of melon liquor"
+ glass_name = "melon liquor"
glass_desc = "A relatively sweet and fruity 46 proof liquor."
- glass_center_of_mass = list("x"=16, "y"=5)
/datum/reagent/ethanol/rum
name = "Rum"
id = "rum"
description = "Yohoho and all that."
- color = "#664300"
+ color = "#ECB633"
strength = 15
- glass_icon_state = "rumglass"
- glass_name = "glass of rum"
+ glass_name = "rum"
glass_desc = "Now you want to Pray for a pirate suit, don't you?"
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/sake
name = "Sake"
id = "sake"
description = "Anime's favorite drink."
- color = "#664300"
+ color = "#DDDDDD"
strength = 25
- glass_icon_state = "ginvodkaglass"
- glass_name = "glass of sake"
+ glass_name = "sake"
glass_desc = "A glass of sake."
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/tequila
name = "Tequila"
@@ -1219,10 +1163,8 @@
color = "#FFFF91"
strength = 25
- glass_icon_state = "tequillaglass"
- glass_name = "glass of Tequila"
+ glass_name = "Tequilla"
glass_desc = "Now all that's missing is the weird colored shades!"
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/thirteenloko
name = "Thirteen Loko"
@@ -1232,8 +1174,7 @@
strength = 25
nutriment_factor = 1
- glass_icon_state = "thirteen_loko_glass"
- glass_name = "glass of Thirteen Loko"
+ glass_name = "Thirteen Loko"
glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass."
/datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
@@ -1252,10 +1193,8 @@
color = "#91FF91" // rgb: 145, 255, 145
strength = 15
- glass_icon_state = "vermouthglass"
- glass_name = "glass of vermouth"
+ glass_name = "vermouth"
glass_desc = "You wonder why you're even drinking this straight."
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/vodka
name = "Vodka"
@@ -1264,10 +1203,8 @@
color = "#0064C8" // rgb: 0, 100, 200
strength = 15
- glass_icon_state = "ginvodkaglass"
- glass_name = "glass of vodka"
+ glass_name = "vodka"
glass_desc = "The glass contain wodka. Xynta."
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1277,13 +1214,11 @@
name = "Whiskey"
id = "whiskey"
description = "A superb and well-aged single-malt whiskey. Damn."
- color = "#664300"
+ color = "#4C3100"
strength = 25
- glass_icon_state = "whiskeyglass"
- glass_name = "glass of whiskey"
+ glass_name = "whiskey"
glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy."
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/wine
name = "Wine"
@@ -1292,10 +1227,8 @@
color = "#7E4043" // rgb: 126, 64, 67
strength = 15
- glass_icon_state = "wineglass"
- glass_name = "glass of wine"
+ glass_name = "wine"
glass_desc = "A very classy looking drink."
- glass_center_of_mass = list("x"=15, "y"=7)
// Cocktails
@@ -1307,73 +1240,61 @@
color = "#365000"
strength = 30
- glass_icon_state = "acidspitglass"
- glass_name = "glass of Acid Spit"
+ glass_name = "Acid Spit"
glass_desc = "A drink from the company archives. Made from live aliens."
- glass_center_of_mass = list("x"=16, "y"=7)
/datum/reagent/ethanol/alliescocktail
name = "Allies Cocktail"
id = "alliescocktail"
description = "A drink made from your allies, not as sweet as when made from your enemies."
- color = "#664300"
+ color = "#D8AC45"
strength = 25
- glass_icon_state = "alliescocktail"
- glass_name = "glass of Allies cocktail"
+ glass_name = "Allies cocktail"
glass_desc = "A drink made from your allies."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/aloe
name = "Aloe"
id = "aloe"
description = "So very, very, very good."
- color = "#664300"
+ color = "#B7EA75"
strength = 15
- glass_icon_state = "aloe"
- glass_name = "glass of Aloe"
+ glass_name = "Aloe"
glass_desc = "Very, very, very good."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/amasec
name = "Amasec"
id = "amasec"
description = "Official drink of the Gun Club!"
reagent_state = LIQUID
- color = "#664300"
+ color = "#FF975D"
strength = 25
- glass_icon_state = "amasecglass"
- glass_name = "glass of Amasec"
+ glass_name = "Amasec"
glass_desc = "Always handy before COMBAT!!!"
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/andalusia
name = "Andalusia"
id = "andalusia"
description = "A nice, strangely named drink."
- color = "#664300"
+ color = "#F4EA4A"
strength = 15
- glass_icon_state = "andalusia"
- glass_name = "glass of Andalusia"
+ glass_name = "Andalusia"
glass_desc = "A nice, strange named drink."
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/antifreeze
name = "Anti-freeze"
id = "antifreeze"
description = "Ultimate refreshment."
- color = "#664300"
+ color = "#56DEEA"
strength = 12
adj_temp = 20
targ_temp = 330
- glass_icon_state = "antifreeze"
- glass_name = "glass of Anti-freeze"
+ glass_name = "Anti-freeze"
glass_desc = "The ultimate refreshment."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/atomicbomb
name = "Atomic Bomb"
@@ -1384,20 +1305,17 @@
strength = 10
druggy = 50
- glass_icon_state = "atomicbombglass"
- glass_name = "glass of Atomic Bomb"
+ glass_name = "Atomic Bomb"
glass_desc = "We cannot take legal responsibility for your actions after imbibing."
- glass_center_of_mass = list("x"=15, "y"=7)
/datum/reagent/ethanol/coffee/b52
name = "B-52"
id = "b52"
description = "Coffee, Irish Cream, and cognac. You will get bombed."
- color = "#664300"
+ color = "#997650"
strength = 12
- glass_icon_state = "b52glass"
- glass_name = "glass of B-52"
+ glass_name = "B-52"
glass_desc = "Kahlua, Irish cream, and congac. You will get bombed."
/datum/reagent/ethanol/bahama_mama
@@ -1407,10 +1325,8 @@
color = "#FF7F3B"
strength = 25
- glass_icon_state = "bahama_mama"
- glass_name = "glass of Bahama Mama"
+ glass_name = "Bahama Mama"
glass_desc = "Tropical cocktail"
- glass_center_of_mass = list("x"=16, "y"=5)
/datum/reagent/ethanol/bananahonk
name = "Banana Mama"
@@ -1420,35 +1336,29 @@
color = "#FFFF91"
strength = 12
- glass_icon_state = "bananahonkglass"
- glass_name = "glass of Banana Honk"
+ glass_name = "Banana Honk"
glass_desc = "A drink from Banana Heaven."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/barefoot
name = "Barefoot"
id = "barefoot"
description = "Barefoot and pregnant"
- color = "#664300"
+ color = "#FFCDEA"
strength = 30
- glass_icon_state = "b&p"
- glass_name = "glass of Barefoot"
+ glass_name = "Barefoot"
glass_desc = "Barefoot and pregnant"
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/beepsky_smash
name = "Beepsky Smash"
id = "beepskysmash"
description = "Deny drinking this and prepare for THE LAW."
reagent_state = LIQUID
- color = "#664300"
+ color = "#404040"
strength = 12
- glass_icon_state = "beepskysmashglass"
glass_name = "Beepsky Smash"
glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW."
- glass_center_of_mass = list("x"=18, "y"=10)
/datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1462,8 +1372,7 @@
strength = 50
nutriment_factor = 2
- glass_icon_state = "glass_brown"
- glass_name = "glass of bilk"
+ glass_name = "bilk"
glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis."
/datum/reagent/ethanol/black_russian
@@ -1473,20 +1382,17 @@
color = "#360000"
strength = 15
- glass_icon_state = "blackrussianglass"
- glass_name = "glass of Black Russian"
+ glass_name = "Black Russian"
glass_desc = "For the lactose-intolerant. Still as classy as a White Russian."
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/bloody_mary
name = "Bloody Mary"
id = "bloodymary"
description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice."
- color = "#664300"
+ color = "#B40000"
strength = 15
- glass_icon_state = "bloodymaryglass"
- glass_name = "glass of Bloody Mary"
+ glass_name = "Bloody Mary"
glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder."
/datum/reagent/ethanol/booger
@@ -1496,21 +1402,18 @@
color = "#8CFF8C"
strength = 30
- glass_icon_state = "booger"
- glass_name = "glass of Booger"
+ glass_name = "Booger"
glass_desc = "Ewww..."
/datum/reagent/ethanol/coffee/brave_bull
name = "Brave Bull"
id = "bravebull"
description = "It's just as effective as Dutch-Courage!"
- color = "#664300"
+ color = "#4C3100"
strength = 15
- glass_icon_state = "bravebullglass"
- glass_name = "glass of Brave Bull"
+ glass_name = "Brave Bull"
glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up."
- glass_center_of_mass = list("x"=15, "y"=8)
/datum/reagent/ethanol/changelingsting
name = "Changeling Sting"
@@ -1519,21 +1422,18 @@
color = "#2E6671"
strength = 10
- glass_icon_state = "changelingsting"
- glass_name = "glass of Changeling Sting"
+ glass_name = "Changeling Sting"
glass_desc = "A stingy drink."
/datum/reagent/ethanol/martini
name = "Classic Martini"
id = "martini"
description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious."
- color = "#664300"
+ color = "#0064C8"
strength = 25
- glass_icon_state = "martiniglass"
- glass_name = "glass of classic martini"
+ glass_name = "classic martini"
glass_desc = "Damn, the bartender even stirred it, not shook it."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/cuba_libre
name = "Cuba Libre"
@@ -1542,10 +1442,8 @@
color = "#3E1B00"
strength = 30
- glass_icon_state = "cubalibreglass"
- glass_name = "glass of Cuba Libre"
+ glass_name = "Cuba Libre"
glass_desc = "A classic mix of rum and cola."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/demonsblood
name = "Demons Blood"
@@ -1554,10 +1452,8 @@
color = "#820000"
strength = 15
- glass_icon_state = "demonsblood"
- glass_name = "glass of Demons' Blood"
+ glass_name = "Demons' Blood"
glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up."
- glass_center_of_mass = list("x"=16, "y"=2)
/datum/reagent/ethanol/devilskiss
name = "Devils Kiss"
@@ -1566,10 +1462,8 @@
color = "#A68310"
strength = 15
- glass_icon_state = "devilskiss"
- glass_name = "glass of Devil's Kiss"
+ glass_name = "Devil's Kiss"
glass_desc = "Creepy time!"
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/driestmartini
name = "Driest Martini"
@@ -1579,33 +1473,29 @@
color = "#2E6671"
strength = 12
- glass_icon_state = "driestmartiniglass"
- glass_name = "glass of Driest Martini"
+ glass_name = "Driest Martini"
glass_desc = "Only for the experienced. You think you see sand floating in the glass."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/ginfizz
name = "Gin Fizz"
id = "ginfizz"
description = "Refreshingly lemony, deliciously dry."
- color = "#664300"
+ color = "#FFFFAE"
strength = 30
- glass_icon_state = "ginfizzglass"
- glass_name = "glass of gin fizz"
+ glass_name = "gin fizz"
glass_desc = "Refreshingly lemony, deliciously dry."
- glass_center_of_mass = list("x"=16, "y"=7)
/datum/reagent/ethanol/grog
name = "Grog"
id = "grog"
description = "Watered-down rum, pirate approved!"
reagent_state = LIQUID
- color = "#664300"
+ color = "#FFBB00"
strength = 100
- glass_icon_state = "grogglass"
- glass_name = "glass of grog"
+
+ glass_name = "grog"
glass_desc = "A fine and cepa drink for Space."
/datum/reagent/ethanol/erikasurprise
@@ -1615,87 +1505,76 @@
color = "#2E6671"
strength = 15
- glass_icon_state = "erikasurprise"
- glass_name = "glass of Erika Surprise"
+ glass_name = "Erika Surprise"
glass_desc = "The surprise is, it's green!"
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/gargle_blaster
name = "Pan-Galactic Gargle Blaster"
id = "gargleblaster"
description = "Whoah, this stuff looks volatile!"
reagent_state = LIQUID
- color = "#664300"
+ color = "#7F00FF"
strength = 10
- glass_icon_state = "gargleblasterglass"
- glass_name = "glass of Pan-Galactic Gargle Blaster"
+ glass_name = "Pan-Galactic Gargle Blaster"
glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy."
- glass_center_of_mass = list("x"=17, "y"=6)
/datum/reagent/ethanol/gintonic
name = "Gin and Tonic"
id = "gintonic"
description = "An all time classic, mild cocktail."
- color = "#664300"
+ color = "#0064C8"
strength = 50
- glass_icon_state = "gintonicglass"
- glass_name = "glass of gin and tonic"
+ glass_name = "gin and tonic"
glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman."
- glass_center_of_mass = list("x"=16, "y"=7)
/datum/reagent/ethanol/goldschlager
name = "Goldschlager"
id = "goldschlager"
description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break."
- color = "#664300"
+ color = "#F4E46D"
strength = 15
- glass_icon_state = "ginvodkaglass"
- glass_name = "glass of Goldschlager"
+ glass_name = "Goldschlager"
glass_desc = "100 proof that teen girls will drink anything with gold in it."
- glass_center_of_mass = list("x"=16, "y"=12)
/datum/reagent/ethanol/hippies_delight
name = "Hippies' Delight"
id = "hippiesdelight"
description = "You just don't get it maaaan."
reagent_state = LIQUID
- color = "#664300"
+ color = "#FF88FF"
strength = 15
druggy = 50
- glass_icon_state = "hippiesdelightglass"
- glass_name = "glass of Hippie's Delight"
+ glass_name = "Hippie's Delight"
glass_desc = "A drink enjoyed by people during the 1960's."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/hooch
name = "Hooch"
id = "hooch"
description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?"
- color = "#664300"
+ color = "#4C3100"
strength = 25
toxicity = 2
- glass_icon_state = "glass_brown2"
- glass_name = "glass of Hooch"
+ glass_name = "Hooch"
glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
/datum/reagent/ethanol/iced_beer
name = "Iced Beer"
id = "iced_beer"
description = "A beer which is so cold the air around it freezes."
- color = "#664300"
+
+ color = "#FFD300"
strength = 50
adj_temp = -20
targ_temp = 270
- glass_icon_state = "iced_beerglass"
- glass_name = "glass of iced beer"
+ glass_name = "iced beer"
glass_desc = "A beer so frosty, the air around it freezes."
- glass_center_of_mass = list("x"=16, "y"=7)
+ glass_special = list(DRINK_ICE)
/datum/reagent/ethanol/irishcarbomb
name = "Irish Car Bomb"
@@ -1704,81 +1583,68 @@
color = "#2E6671"
strength = 15
- glass_icon_state = "irishcarbomb"
- glass_name = "glass of Irish Car Bomb"
+ glass_name = "Irish Car Bomb"
glass_desc = "An irish car bomb."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/coffee/irishcoffee
name = "Irish Coffee"
id = "irishcoffee"
description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning."
- color = "#664300"
+ color = "#4C3100"
strength = 15
- glass_icon_state = "irishcoffeeglass"
- glass_name = "glass of Irish coffee"
+ glass_name = "Irish coffee"
glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning."
- glass_center_of_mass = list("x"=15, "y"=10)
/datum/reagent/ethanol/irish_cream
name = "Irish Cream"
id = "irishcream"
description = "Whiskey-imbued cream, what else would you expect from the Irish."
- color = "#664300"
+ color = "#DDDD9A3"
strength = 25
- glass_icon_state = "irishcreamglass"
- glass_name = "glass of Irish cream"
+ glass_name = "Irish cream"
glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?"
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/longislandicedtea
name = "Long Island Iced Tea"
id = "longislandicedtea"
description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only."
- color = "#664300"
+ color = "#895B1F"
strength = 12
- glass_icon_state = "longislandicedteaglass"
- glass_name = "glass of Long Island iced tea"
+ glass_name = "Long Island iced tea"
glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/manhattan
name = "Manhattan"
id = "manhattan"
description = "The Detective's undercover drink of choice. He never could stomach gin..."
- color = "#664300"
+ color = "#C13600"
strength = 15
- glass_icon_state = "manhattanglass"
- glass_name = "glass of Manhattan"
+ glass_name = "Manhattan"
glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/manhattan_proj
name = "Manhattan Project"
id = "manhattan_proj"
description = "A scientist's drink of choice, for pondering ways to blow up the station."
- color = "#664300"
+ color = "#C15D00"
strength = 10
druggy = 30
- glass_icon_state = "proj_manhattanglass"
- glass_name = "glass of Manhattan Project"
+ glass_name = "Manhattan Project"
glass_desc = "A scienitst drink of choice, for thinking how to blow up the station."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/manly_dorf
name = "The Manly Dorf"
id = "manlydorf"
description = "Beer and Ale, brought together in a delicious mix. Intended for true men only."
- color = "#664300"
+ color = "#4C3100"
strength = 25
- glass_icon_state = "manlydorfglass"
- glass_name = "glass of The Manly Dorf"
+ glass_name = "The Manly Dorf"
glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only."
/datum/reagent/ethanol/margarita
@@ -1788,34 +1654,29 @@
color = "#8CFF8C"
strength = 15
- glass_icon_state = "margaritaglass"
- glass_name = "glass of margarita"
+ glass_name = "margarita"
glass_desc = "On the rocks with salt on the rim. Arriba~!"
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/mead
name = "Mead"
id = "mead"
description = "A Viking's drink, though a cheap one."
reagent_state = LIQUID
- color = "#664300"
+ color = "#FFBB00"
strength = 30
nutriment_factor = 1
- glass_icon_state = "meadglass"
- glass_name = "glass of mead"
+ glass_name = "mead"
glass_desc = "A Viking's beverage, though a cheap one."
- glass_center_of_mass = list("x"=17, "y"=10)
/datum/reagent/ethanol/moonshine
name = "Moonshine"
id = "moonshine"
description = "You've really hit rock bottom now... your liver packed its bags and left last night."
- color = "#664300"
+ color = "#0064C8"
strength = 12
- glass_icon_state = "glass_clear"
- glass_name = "glass of moonshine"
+ glass_name = "moonshine"
glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
/datum/reagent/ethanol/neurotoxin
@@ -1826,10 +1687,10 @@
color = "#2E2E61"
strength = 10
- glass_icon_state = "neurotoxinglass"
- glass_name = "glass of Neurotoxin"
+ glass_name = "Neurotoxin"
glass_desc = "A drink that is guaranteed to knock you silly."
- glass_center_of_mass = list("x"=16, "y"=8)
+ glass_icon = DRINK_ICON_NOISY
+ glass_special = list("neuroright")
/datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1842,10 +1703,8 @@
color = "#585840"
strength = 30
- glass_icon_state = "patronglass"
- glass_name = "glass of Patron"
+ glass_name = "Patron"
glass_desc = "Drinking patron in the bar, with all the subpar ladies."
- glass_center_of_mass = list("x"=7, "y"=8)
/datum/reagent/ethanol/pwine
name = "Poison Wine"
@@ -1856,10 +1715,8 @@
druggy = 50
halluci = 10
- glass_icon_state = "pwineglass"
- glass_name = "glass of ???"
+ glass_name = "???"
glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?"
- glass_center_of_mass = list("x"=16, "y"=5)
/datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -1881,24 +1738,20 @@
color = "#C73C00"
strength = 30
- glass_icon_state = "red_meadglass"
- glass_name = "glass of red mead"
+ glass_name = "red mead"
glass_desc = "A true Viking's beverage, though its color is strange."
- glass_center_of_mass = list("x"=17, "y"=10)
/datum/reagent/ethanol/sbiten
name = "Sbiten"
id = "sbiten"
description = "A spicy Vodka! Might be a little hot for the little guys!"
- color = "#664300"
+ color = "#FFA371"
strength = 15
adj_temp = 50
targ_temp = 360
- glass_icon_state = "sbitenglass"
- glass_name = "glass of Sbiten"
+ glass_name = "Sbiten"
glass_desc = "A spicy mix of Vodka and Spice. Very hot."
- glass_center_of_mass = list("x"=17, "y"=8)
/datum/reagent/ethanol/screwdrivercocktail
name = "Screwdriver"
@@ -1907,23 +1760,19 @@
color = "#A68310"
strength = 15
- glass_icon_state = "screwdriverglass"
- glass_name = "glass of Screwdriver"
+ glass_name = "Screwdriver"
glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer."
- glass_center_of_mass = list("x"=15, "y"=10)
/datum/reagent/ethanol/silencer
name = "Silencer"
id = "silencer"
description = "A drink from Mime Heaven."
nutriment_factor = 1
- color = "#664300"
+ color = "#FFFFFF"
strength = 12
- glass_icon_state = "silencerglass"
- glass_name = "glass of Silencer"
+ glass_name = "Silencer"
glass_desc = "A drink from mime Heaven."
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/singulo
name = "Singulo"
@@ -1932,10 +1781,8 @@
color = "#2E6671"
strength = 10
- glass_icon_state = "singulo"
- glass_name = "glass of Singulo"
+ glass_name = "Singulo"
glass_desc = "A blue-space beverage."
- glass_center_of_mass = list("x"=17, "y"=4)
/datum/reagent/ethanol/snowwhite
name = "Snow White"
@@ -1944,10 +1791,8 @@
color = "#FFFFFF"
strength = 30
- glass_icon_state = "snowwhite"
- glass_name = "glass of Snow White"
+ glass_name = "Snow White"
glass_desc = "A cold refreshment."
- glass_center_of_mass = list("x"=16, "y"=8)
/datum/reagent/ethanol/suidream
name = "Sui Dream"
@@ -1956,10 +1801,8 @@
color = "#00A86B"
strength = 100
- glass_icon_state = "sdreamglass"
- glass_name = "glass of Sui Dream"
+ glass_name = "Sui Dream"
glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame."
- glass_center_of_mass = list("x"=16, "y"=5)
/datum/reagent/ethanol/syndicatebomb
name = "Syndicate Bomb"
@@ -1968,10 +1811,8 @@
color = "#2E6671"
strength = 10
- glass_icon_state = "syndicatebomb"
- glass_name = "glass of Syndicate Bomb"
+ glass_name = "Syndicate Bomb"
glass_desc = "Tastes like terrorism!"
- glass_center_of_mass = list("x"=16, "y"=4)
/datum/reagent/ethanol/tequilla_sunrise
name = "Tequila Sunrise"
@@ -1980,8 +1821,7 @@
color = "#FFE48C"
strength = 25
- glass_icon_state = "tequillasunriseglass"
- glass_name = "glass of Tequila Sunrise"
+ glass_name = "Tequilla Sunrise"
glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..."
/datum/reagent/ethanol/threemileisland
@@ -1992,36 +1832,32 @@
strength = 10
druggy = 50
- glass_icon_state = "threemileislandglass"
- glass_name = "glass of Three Mile Island iced tea"
+ glass_name = "Three Mile Island iced tea"
glass_desc = "A glass of this is sure to prevent a meltdown."
- glass_center_of_mass = list("x"=16, "y"=2)
/datum/reagent/ethanol/toxins_special
name = "Toxins Special"
id = "phoronspecial"
description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!"
reagent_state = LIQUID
- color = "#664300"
+ color = "#7F00FF"
strength = 10
adj_temp = 15
targ_temp = 330
- glass_icon_state = "toxinsspecialglass"
- glass_name = "glass of Toxins Special"
+ glass_name = "Toxins Special"
glass_desc = "Whoah, this thing is on FIRE"
/datum/reagent/ethanol/vodkamartini
name = "Vodka Martini"
id = "vodkamartini"
description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious."
- color = "#664300"
+ color = "#0064C8"
strength = 12
- glass_icon_state = "martiniglass"
- glass_name = "glass of vodka martini"
+ glass_name = "vodka martini"
glass_desc ="A bastardisation of the classic martini. Still great."
- glass_center_of_mass = list("x"=17, "y"=8)
+
/datum/reagent/ethanol/vodkatonic
name = "Vodka and Tonic"
@@ -2030,10 +1866,9 @@
color = "#0064C8" // rgb: 0, 100, 200
strength = 15
- glass_icon_state = "vodkatonicglass"
- glass_name = "glass of vodka and tonic"
+ glass_name = "vodka and tonic"
glass_desc = "For when a gin and tonic isn't Russian enough."
- glass_center_of_mass = list("x"=16, "y"=7)
+
/datum/reagent/ethanol/white_russian
name = "White Russian"
@@ -2042,10 +1877,9 @@
color = "#A68340"
strength = 15
- glass_icon_state = "whiterussianglass"
- glass_name = "glass of White Russian"
+ glass_name = "White Russian"
glass_desc = "A very nice looking drink. But that's just, like, your opinion, man."
- glass_center_of_mass = list("x"=16, "y"=9)
+
/datum/reagent/ethanol/whiskey_cola
name = "Whiskey Cola"
@@ -2054,22 +1888,19 @@
color = "#3E1B00"
strength = 25
- glass_icon_state = "whiskeycolaglass"
- glass_name = "glass of whiskey cola"
+ glass_name = "whiskey cola"
glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious."
- glass_center_of_mass = list("x"=16, "y"=9)
+
/datum/reagent/ethanol/whiskeysoda
name = "Whiskey Soda"
id = "whiskeysoda"
description = "For the more refined griffon."
- color = "#664300"
+ color = "#EAB300"
strength = 15
- glass_icon_state = "whiskeysodaglass2"
- glass_name = "glass of whiskey soda"
+ glass_name = "whiskey soda"
glass_desc = "Ultimate refreshment."
- glass_center_of_mass = list("x"=16, "y"=9)
/datum/reagent/ethanol/specialwhiskey // I have no idea what this is and where it comes from
name = "Special Blend Whiskey"
@@ -2078,7 +1909,5 @@
color = "#523600"
strength = 7
- glass_icon_state = "whiskeyglass"
- glass_name = "glass of special blend whiskey"
- glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything. The smell of it singes your nostrils."
- glass_center_of_mass = list("x"=16, "y"=12)
+ glass_name = "special blend whiskey"
+ glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything."
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm
index c3cb7b4d2b4..92d09d1e183 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm
@@ -112,8 +112,7 @@
color = "#C8A5DC"
affects_dead = 1 //This can even heal dead people.
- glass_icon_state = "golden_cup"
- glass_name = "golden cup"
+ glass_name = "liquid gold"
glass_desc = "It's magic. We don't have to explain it."
/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed)
@@ -197,8 +196,7 @@
description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality."
color = "#E0E8EF"
- glass_icon_state = "glass_clear"
- glass_name = "glass of holy water"
+ glass_name = "holy water"
glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality."
/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm
index bc0072511a3..884ee830f0c 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm
@@ -331,13 +331,10 @@
id = "beer2"
description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong.
reagent_state = LIQUID
- color = "#664300"
+ color = "#FFD300"
- glass_icon_state = "beerglass"
- glass_name = "glass of beer"
+ glass_name = "beer"
glass_desc = "A freezing pint of beer"
- glass_center_of_mass = list("x"=16, "y"=8)
-
/* Drugs */
/datum/reagent/space_drugs
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm
new file mode 100644
index 00000000000..8e042c2086c
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm
@@ -0,0 +1,145 @@
+#define DRINK_ICON_FILE 'icons/pdrink.dmi'
+
+/var/const/DRINK_FIZZ = "fizz"
+/var/const/DRINK_ICE = "ice"
+/var/const/DRINK_ICON_DEFAULT = ""
+/var/const/DRINK_ICON_NOISY = "_noise"
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2
+ name = "glass" // Name when empty
+ var/base_name = "glass" // Name to put in front of drinks, i.e. "[base_name] of [contents]"
+ desc = "A generic drinking glass." // Description when empty
+ icon = DRINK_ICON_FILE
+ var/base_icon = "square" // Base icon name
+ volume = 30
+
+ var/list/filling_states // List of percentages full that have icons
+
+ var/list/extras = list() // List of extras. Two extras maximum
+
+ var/rim_pos
+
+ center_of_mass = list("x"=16, "y"=10)
+
+ amount_per_transfer_from_this = 5
+ possible_transfer_amounts = list(5,10,15,30)
+ flags = OPENCONTAINER
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/examine(mob/M as mob)
+ ..()
+
+ for(var/I in extras)
+ if(istype(I, /obj/item/weapon/glass_extra))
+ M << "There is \a [I] in \the [src]."
+ else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice))
+ M << "There is \a [I] on the rim."
+ else
+ M << "There is \a [I] somewhere on the glass. Somehow."
+
+ if(has_ice())
+ M << "There is some ice floating in the drink."
+
+ if(has_fizz())
+ M << "It is fizzing slightly."
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/has_ice()
+ if(reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+ if(!((R.id == "ice") || ("ice" in R.glass_special))) // if it's not a cup of ice, and it's not already supposed to have ice in, see if the bartender's put ice in it
+ if(reagents.has_reagent("ice", reagents.total_volume / 10)) // 10% ice by volume
+ return 1
+
+ return 0
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/has_fizz()
+ if(reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+ if(!("fizz" in R.glass_special))
+ var/totalfizzy = 0
+ for(var/datum/reagent/re in reagents.reagent_list)
+ if("fizz" in re.glass_special)
+ totalfizzy += re.volume
+ if(totalfizzy >= reagents.total_volume / 5) // 20% fizzy by volume
+ return 1
+ return 0
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/New()
+ ..()
+ icon_state = base_icon
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/on_reagent_change()
+ update_icon()
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/can_add_extra(obj/item/weapon/glass_extra/GE)
+ if(!("[base_icon]_[GE.glass_addition]left" in icon_states(DRINK_ICON_FILE)))
+ return 0
+ if(!("[base_icon]_[GE.glass_addition]right" in icon_states(DRINK_ICON_FILE)))
+ return 0
+
+ return 1
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/update_icon()
+ underlays.Cut()
+
+ if (reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+ name = "[base_name] of [R.glass_name ? R.glass_name : "something"]"
+ desc = R.glass_desc ? R.glass_desc : initial(desc)
+
+ var/list/under_liquid = list()
+ var/list/over_liquid = list()
+
+ var/amnt = 100
+ var/percent = round((reagents.total_volume / volume) * 100)
+ for(var/k in filling_states)
+ if(percent <= k)
+ amnt = k
+ break
+
+ if(has_ice())
+ over_liquid |= "[base_icon][amnt]_ice"
+
+ if(has_fizz())
+ over_liquid |= "[base_icon][amnt]_fizz"
+
+ for(var/S in R.glass_special)
+ if("[base_icon]_[S]" in icon_states(DRINK_ICON_FILE))
+ under_liquid |= "[base_icon]_[S]"
+ else if("[base_icon][amnt]_[S]" in icon_states(DRINK_ICON_FILE))
+ over_liquid |= "[base_icon][amnt]_[S]"
+
+ for(var/k in under_liquid)
+ underlays += image(DRINK_ICON_FILE, src, k, -3)
+
+ var/image/filling = image(DRINK_ICON_FILE, src, "[base_icon][amnt][R.glass_icon]", -2)
+ filling.color = reagents.get_color()
+ underlays += filling
+
+ for(var/k in over_liquid)
+ underlays += image(DRINK_ICON_FILE, src, k, -1)
+ else
+ name = initial(name)
+ desc = initial(desc)
+
+ var/side = "left"
+ for(var/item in extras)
+ if(istype(item, /obj/item/weapon/glass_extra))
+ var/obj/item/weapon/glass_extra/GE = item
+ var/image/I = image(DRINK_ICON_FILE, src, "[base_icon]_[GE.glass_addition][side]")
+ if(GE.glass_color)
+ I.color = GE.glass_color
+ underlays += I
+ else if(istype(item, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice))
+ var/obj/FS = item
+ var/image/I = image(FS)
+
+ var/fsy = rim_pos[1] - 20
+ var/fsx = rim_pos[side == "left" ? 2 : 3] - 16
+
+ var/matrix/M = matrix()
+ M.Scale(0.5)
+ M.Translate(fsx, fsy)
+ I.transform = M
+ underlays += I
+ else continue
+ side = "right"
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/extras.dm b/code/modules/reagents/reagent_containers/drinkingglass/extras.dm
new file mode 100644
index 00000000000..513c1b87caa
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/drinkingglass/extras.dm
@@ -0,0 +1,69 @@
+/obj/item/weapon/reagent_containers/food/drinks/glass2/attackby(obj/item/I as obj, mob/user as mob)
+ if(extras.len >= 2) return ..() // max 2 extras, one on each side of the drink
+
+ if(istype(I, /obj/item/weapon/glass_extra))
+ var/obj/item/weapon/glass_extra/GE = I
+ if(can_add_extra(GE))
+ extras += GE
+ user.remove_from_mob(GE)
+ GE.loc = src
+ user << "You add \the [GE] to \the [src]."
+ update_icon()
+ else
+ user << "There's no space to put \the [GE] on \the [src]!"
+ else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice))
+ var/obj/item/weapon/reagent_containers/food/snacks/fruit_slice/FS = I
+ extras += FS
+ user.remove_from_mob(FS)
+ FS.pixel_x = 0 // Reset its pixel offsets so the icons work!
+ FS.pixel_y = 0
+ FS.loc = src
+ user << "You add \the [FS] to \the [src]."
+ update_icon()
+ else
+ return ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/attack_hand(mob/user as mob)
+ if(src != user.get_inactive_hand())
+ return ..()
+
+ if(!extras.len)
+ user << "There's nothing on the glass to remove!"
+ return
+
+ var/choice = input(user, "What would you like to remove from the glass?") as null|anything in extras
+ if(!choice || !(choice in extras))
+ return
+
+ if(user.put_in_active_hand(choice))
+ user << "You remove \the [choice] from \the [src]."
+ extras -= choice
+ else
+ user << "Something went wrong, please try again."
+
+ update_icon()
+
+/obj/item/weapon/glass_extra
+ name = "generic glass addition"
+ desc = "This goes on a glass."
+ var/glass_addition
+ var/glass_desc
+ var/glass_color
+ w_class = 1
+ icon = DRINK_ICON_FILE
+
+/obj/item/weapon/glass_extra/stick
+ name = "stick"
+ desc = "This goes in a glass."
+ glass_addition = "stick"
+ glass_desc = "There is a stick in the glass."
+ icon_state = "stick"
+
+/obj/item/weapon/glass_extra/straw
+ name = "straw"
+ desc = "This goes in a glass."
+ glass_addition = "straw"
+ glass_desc = "There is a straw in the glass."
+ icon_state = "straw"
+
+#undef DRINK_ICON_FILE
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm b/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm
new file mode 100644
index 00000000000..d9c19321ca4
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm
@@ -0,0 +1,75 @@
+/obj/item/weapon/storage/box/mixedglasses
+ name = "glassware box"
+ desc = "A box of assorted glassware"
+ can_hold = list(/obj/item/weapon/reagent_containers/food/drinks/glass2)
+ New()
+ ..()
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/square(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/shake(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/shot(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/pint(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/mug(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/glass2/wine(src)
+
+/obj/item/weapon/storage/box/glasses
+ name = "box of glasses"
+ var/glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2
+ can_hold = list(/obj/item/weapon/reagent_containers/food/drinks/glass2)
+ New()
+ ..()
+
+ for(var/i = 1 to 7)
+ new glass_type(src)
+
+/obj/item/weapon/storage/box/glasses/square
+ name = "box of half-pint glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/square
+
+/obj/item/weapon/storage/box/glasses/rocks
+ name = "box of rocks glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks
+
+/obj/item/weapon/storage/box/glasses/shake
+ name = "box of milkshake glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake
+
+/obj/item/weapon/storage/box/glasses/cocktail
+ name = "box of cocktail glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail
+
+/obj/item/weapon/storage/box/glasses/shot
+ name = "box of shot glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot
+
+/obj/item/weapon/storage/box/glasses/pint
+ name = "box of pint glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint
+
+/obj/item/weapon/storage/box/glasses/mug
+ name = "box of glass mugs"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug
+
+/obj/item/weapon/storage/box/glasses/wine
+ name = "box of wine glasses"
+ glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine
+
+/obj/item/weapon/storage/box/glass_extras
+ name = "box of cocktail garnishings"
+ var/extra_type = /obj/item/weapon/glass_extra
+ can_hold = list(/obj/item/weapon/glass_extra)
+ storage_slots = 14
+ New()
+ ..()
+
+ for(var/i = 1 to 14)
+ new extra_type(src)
+
+/obj/item/weapon/storage/box/glass_extras/straws
+ name = "box of straws"
+ extra_type = /obj/item/weapon/glass_extra/straw
+
+/obj/item/weapon/storage/box/glass_extras/sticks
+ name = "box of drink sticks"
+ extra_type = /obj/item/weapon/glass_extra/stick
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm b/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm
new file mode 100644
index 00000000000..feec8bf16e7
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm
@@ -0,0 +1,72 @@
+/obj/item/weapon/reagent_containers/food/drinks/glass2/square
+ name = "half-pint glass"
+ base_name = "glass"
+ base_icon = "square"
+ desc = "Your standard drinking glass."
+ filling_states = list(20, 40, 60, 80, 100)
+ volume = 30
+ possible_transfer_amounts = list(5,10,15,30)
+ rim_pos = list(23,13,20) // y, x0, x1
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/rocks
+ name = "rocks glass"
+ base_name = "glass"
+ base_icon = "rocks"
+ filling_states = list(25, 50, 75, 100)
+ volume = 20
+ possible_transfer_amounts = list(5,10,20)
+ rim_pos = list(21, 10, 23)
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/shake
+ name = "milkshake glass"
+ base_name = "glass"
+ base_icon = "shake"
+ filling_states = list(25, 50, 75, 100)
+ volume = 30
+ possible_transfer_amounts = list(5,10,15,30)
+ rim_pos = list(25, 13, 21)
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail
+ name = "cocktail glass"
+ base_name = "glass"
+ base_icon = "cocktail"
+ filling_states = list(33, 66, 100)
+ volume = 15
+ possible_transfer_amounts = list(5,10,15)
+ rim_pos = list(22, 13, 21)
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/shot
+ name = "shot glass"
+ base_name = "shot"
+ base_icon = "shot"
+ filling_states = list(33, 66, 100)
+ volume = 5
+ possible_transfer_amounts = list(1,2,5)
+ rim_pos = list(17, 13, 21)
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/pint
+ name = "pint glass"
+ base_name = "pint"
+ base_icon = "pint"
+ filling_states = list(16, 33, 50, 66, 83, 100)
+ volume = 60
+ possible_transfer_amounts = list(5,10,15,30,60)
+ rim_pos = list(25, 12, 21)
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/mug
+ name = "glass mug"
+ base_name = "mug"
+ base_icon = "mug"
+ filling_states = list(25, 50, 75, 100)
+ volume = 40
+ possible_transfer_amounts = list(5,10,20,40)
+ rim_pos = list(22, 12, 20)
+
+/obj/item/weapon/reagent_containers/food/drinks/glass2/wine
+ name = "wine glass"
+ base_name = "glass"
+ base_icon = "wine"
+ filling_states = list(20, 40, 60, 80, 100)
+ volume = 25
+ possible_transfer_amounts = list(5, 10, 15, 25)
+ rim_pos = list(25, 12, 21)
diff --git a/code/modules/reagents/reagent_containers/food/drinks/cup.dm b/code/modules/reagents/reagent_containers/food/drinks/cup.dm
new file mode 100644
index 00000000000..36a88cf7a9f
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/food/drinks/cup.dm
@@ -0,0 +1,43 @@
+/obj/item/weapon/reagent_containers/food/drinks/cup
+ name = "coffee cup"
+ desc = "The container of oriental luxuries."
+ icon_state = "cup_empty"
+ amount_per_transfer_from_this = 5
+ volume = 30
+ center_of_mass = list("x"=16, "y"=16)
+
+ on_reagent_change()
+ if (reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+
+ if(R.cup_icon_state)
+ icon_state = R.cup_icon_state
+ else
+ icon_state = "cup_brown"
+
+ if(R.cup_name)
+ name = R.cup_name
+ else
+ name = "Cup of.. what?"
+
+ if(R.cup_desc)
+ desc = R.cup_desc
+ else
+ desc = "You can't really tell what this is."
+
+ if(R.cup_center_of_mass)
+ center_of_mass = R.cup_center_of_mass
+ else
+ center_of_mass = list("x"=16, "y"=16)
+
+ if(R.price_tag)
+ price_tag = R.price_tag
+ else
+ price_tag = null
+
+ else
+ icon_state = "cup_empty"
+ name = "coffee cup"
+ desc = "The container of oriental luxuries."
+ center_of_mass = list("x"=16, "y"=16)
+ return
diff --git a/html/changelogs/GinjaNinja32-newdrinks.yml b/html/changelogs/GinjaNinja32-newdrinks.yml
new file mode 100644
index 00000000000..3c685a553ab
--- /dev/null
+++ b/html/changelogs/GinjaNinja32-newdrinks.yml
@@ -0,0 +1,6 @@
+author: GinjaNinja32
+delete-after: True
+changes:
+ - rscadd: "Rewrote drinking glasses. There are now eight types of glass, and drink appearance is based on color and the type of glass you put it in."
+ - rscadd: "There are now 'glass extras' you can add to drinks. Straws, drink sticks, and fruit slices (yes, all of them) all work. You can add up to two extras per glass. Add extras by clicking the glass with the extra, remove by clicking the glass with an empty hand while it's in your other hand."
+ - rscadd: "Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make it be fizzy or have ice floating in it."
diff --git a/icons/pdrink.dmi b/icons/pdrink.dmi
new file mode 100644
index 00000000000..c1d49bc91cf
Binary files /dev/null and b/icons/pdrink.dmi differ
diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm
index 1bf8dc324ab..b0f43485dc1 100644
--- a/maps/polaris-1.dmm
+++ b/maps/polaris-1.dmm
@@ -807,7 +807,7 @@
"apA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/secondary/medical_emergency_hallway)
"apB" = (/obj/structure/table/reinforced,/obj/item/stack/tile/wood,/turf/simulated/floor/wood,/area/vacant/vacant_site)
"apC" = (/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/quartermaster/delivery)
-"apD" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/simulated/floor/wood,/area/vacant/vacant_site)
+"apD" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/glass2/square,/turf/simulated/floor/wood,/area/vacant/vacant_site)
"apE" = (/obj/item/stack/tile/wood,/turf/simulated/floor,/area/vacant/vacant_site)
"apF" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/storage/primary)
"apG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/medical_emergency_hallway)
@@ -1010,7 +1010,7 @@
"atv" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main)
"atw" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/red{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main)
"atx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/security/main)
-"aty" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled,/area/security/main)
+"aty" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/glasses/square,/turf/simulated/floor/tiled,/area/security/main)
"atz" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/effect/floor_decal/corner/red{dir = 5},/turf/simulated/floor/tiled,/area/security/main)
"atA" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/red{dir = 5},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/storage/box/donut,/turf/simulated/floor/tiled,/area/security/main)
"atB" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/machinery/photocopier,/turf/simulated/floor/tiled,/area/security/main)
@@ -2812,7 +2812,7 @@
"bdB" = (/obj/structure/flora/ausbushes/ppflowers,/turf/simulated/floor/grass,/area/hydroponics/garden)
"bdC" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/simulated/floor/tiled,/area/hydroponics/garden)
"bdD" = (/obj/structure/table/marble,/obj/machinery/door/firedoor/border_only,/obj/machinery/cash_register/civilian{tag = "icon-register_idle (EAST)"; icon_state = "register_idle"; dir = 4},/obj/machinery/door/blast/shutters{dir = 8; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop)
-"bdE" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop)
+"bdE" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop)
"bdF" = (/obj/structure/cable/green,/obj/structure/flora/pottedplant,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/effect/floor_decal/corner/brown/full,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop)
"bdG" = (/obj/structure/table/woodentable,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/obj/effect/floor_decal/corner/brown{dir = 10},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop)
"bdH" = (/obj/machinery/camera/network/northern_star{c_tag = "Hall - Recreation Aft"; dir = 4},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/floor/tiled,/area/crew_quarters/recreation_area_hallway)
@@ -3271,7 +3271,7 @@
"bmw" = (/obj/machinery/computer/message_monitor,/turf/simulated/floor/tiled/dark,/area/server)
"bmx" = (/obj/effect/floor_decal/corner/purple{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bmy" = (/obj/effect/floor_decal/corner/purple,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/turf/simulated/floor/tiled/white,/area/rnd/research)
-"bmz" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak)
+"bmz" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/box/glasses/square,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak)
"bmA" = (/obj/effect/floor_decal/corner/purple/diagonal,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research_restroom)
"bmB" = (/obj/effect/floor_decal/corner/purple/diagonal,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/research_restroom)
"bmC" = (/obj/structure/closet/wardrobe/science_white,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/effect/floor_decal/corner/purple/diagonal,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research_restroom)
@@ -7715,7 +7715,7 @@
"cUW" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/atmos)
"cUX" = (/obj/machinery/pipedispenser,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos)
"cUY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/visitor_lodging)
-"cUZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room)
+"cUZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room)
"cVa" = (/obj/structure/bed/chair/office/dark,/turf/simulated/floor/carpet,/area/engineering/break_room)
"cVb" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/obj/effect/floor_decal/corner/blue{dir = 8},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/tiled,/area/engineering/foyer)
"cVc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/engineering/foyer)
@@ -9650,7 +9650,7 @@
"dHz" = (/obj/machinery/computer/cryopod/robot{pixel_x = 30; pixel_y = 0},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/camera/network/research{c_tag = "SCI - Mech Bay Starboard"; dir = 8},/turf/simulated/floor/tiled,/area/assembly/chargebay)
"dHA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/central_four)
"dHB" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/central_four)
-
+
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/maps/polaris-2.dmm b/maps/polaris-2.dmm
index dba980372f9..91f9006b6ba 100644
--- a/maps/polaris-2.dmm
+++ b/maps/polaris-2.dmm
@@ -825,7 +825,7 @@
"pS" = (/obj/structure/reagent_dispensers/beerkeg,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops)
"pT" = (/obj/machinery/vending/boozeomat,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops)
"pU" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops)
-"pV" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops)
+"pV" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/glasses/square,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops)
"pW" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops)
"pX" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops)
"pY" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start)
@@ -839,7 +839,7 @@
"qg" = (/obj/structure/sign/double/map/right{pixel_y = 32},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership)
"qh" = (/obj/machinery/vending/snack{name = "hacked Getmore Chocolate Corp"; prices = list()},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership)
"qi" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership)
-"qj" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership)
+"qj" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses/square{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership)
"qk" = (/obj/structure/sink/kitchen{pixel_y = 28},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership)
"ql" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership)
"qm" = (/obj/effect/landmark{name = "Nuclear-Code"},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/syndicate_mothership)
@@ -1298,7 +1298,7 @@
"yX" = (/obj/machinery/vending/dinnerware,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant)
"yY" = (/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant)
"yZ" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant)
-"za" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant)
+"za" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/glasses/square,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant)
"zb" = (/obj/machinery/door/airlock/centcom{name = "Living Quarters"; opacity = 1; req_access = list(105)},/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command)
"zc" = (/obj/machinery/computer/security,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command)
"zd" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command)
@@ -1735,7 +1735,7 @@
"Hs" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar)
"Ht" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar)
"Hu" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar)
-"Hv" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar)
+"Hv" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/drinks/glass2/square,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar)
"Hw" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome)
"Hx" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome)
"Hy" = (/obj/structure/toilet{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom)
@@ -2125,7 +2125,7 @@
"OS" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac)
"OT" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical)
"OU" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram)
-"OV" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"})
+"OV" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses/square{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"})
"OW" = (/obj/machinery/portable_atmospherics/powered/pump,/turf/simulated/shuttle/plating,/area/centcom/evac)
"OX" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/plating,/area/centcom/evac)
"OY" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket{amount_per_transfer_from_this = 50},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac)
@@ -2454,7 +2454,7 @@
"Vj" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical)
"Vk" = (/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical)
"Vl" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/corner/red{dir = 5},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security)
-
+
(1,1,1) = {"
aaabacadaeafagahaaaiajakalamanaoagafajacadahakaeamaiaoalahajapaqarasatauavawaxayaaabacadaeafagahaaaiajakalamanaoagafajacadahakazaAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaAaBaCaDaEaFaGaHaIaJazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQaQaQaQaQaQaQaQaQaQaQaQaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaR
ajaTaUaVaWaXaYaZbabbbcbdbebfbgbhaYaXbcaUaVaZbdaWbfbbbhbeaZbcabauavawbibjbkblbmbeaXbfaZbcbbbhbeaXbfaZbcbbbhbhbeaXbfaZbcbbbhbhbmazaEbnbobpaqarasatauavawbibjbkblbqbnbobpaqarasatauaNazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQbrbsaQbrbsaQbrbsaQbrbsaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPbtbubububvbububububububwbxbybxbybxbxbybxbybxbwbzbAbAbAbAbAbAbAbAbAbwbBbCbDbDbDbDbDbDbDbDbwbEbEbEbEbEbEbEbEbEbEbwbFbFbFbFbFbFbFbFbFbFbwbGbHbIbJbKbKbKbKbKbLbM
diff --git a/maps/polaris-5.dmm b/maps/polaris-5.dmm
index 7399aa2e705..690c3f27215 100644
--- a/maps/polaris-5.dmm
+++ b/maps/polaris-5.dmm
@@ -657,7 +657,7 @@
"mG" = (/obj/structure/table/standard,/obj/item/weapon/material/ashtray/glass,/obj/item/weapon/reagent_containers/food/drinks/coffee,/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/outpost/research/dock)
"mH" = (/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled/white,/area/outpost/research/dock)
"mI" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood,/area/outpost/research/dorms)
-"mJ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms)
+"mJ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/glasses/square{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms)
"mK" = (/obj/structure/table/glass,/obj/item/device/camera_film{pixel_x = 2; pixel_y = 2},/obj/item/device/camera,/turf/simulated/floor/wood,/area/outpost/research/dorms)
"mL" = (/obj/item/weapon/bedsheet/purple,/obj/structure/bed/padded,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms)
"mM" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms)
@@ -1591,7 +1591,7 @@
"EE" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology)
"EF" = (/obj/machinery/recharger/wallcharger{pixel_x = 32},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology)
"EG" = (/obj/machinery/light{dir = 1},/obj/machinery/vending/hydronutrients,/turf/simulated/floor/tiled,/area/outpost/research/xenobiology)
-
+
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/polaris.dme b/polaris.dme
index 24805a54500..437d9e4f4a1 100644
--- a/polaris.dme
+++ b/polaris.dme
@@ -1722,6 +1722,10 @@
#include "code\modules\reagents\reagent_containers\pill.dm"
#include "code\modules\reagents\reagent_containers\spray.dm"
#include "code\modules\reagents\reagent_containers\syringes.dm"
+#include "code\modules\reagents\reagent_containers\drinkingglass\drinkingglass.dm"
+#include "code\modules\reagents\reagent_containers\drinkingglass\extras.dm"
+#include "code\modules\reagents\reagent_containers\drinkingglass\glass_boxes.dm"
+#include "code\modules\reagents\reagent_containers\drinkingglass\glass_types.dm"
#include "code\modules\reagents\reagent_containers\food\cans.dm"
#include "code\modules\reagents\reagent_containers\food\condiment.dm"
#include "code\modules\reagents\reagent_containers\food\drinks.dm"
@@ -1729,7 +1733,7 @@
#include "code\modules\reagents\reagent_containers\food\sandwich.dm"
#include "code\modules\reagents\reagent_containers\food\snacks.dm"
#include "code\modules\reagents\reagent_containers\food\drinks\bottle.dm"
-#include "code\modules\reagents\reagent_containers\food\drinks\drinkingglass.dm"
+#include "code\modules\reagents\reagent_containers\food\drinks\cup.dm"
#include "code\modules\reagents\reagent_containers\food\drinks\jar.dm"
#include "code\modules\reagents\reagent_containers\food\drinks\bottle\robot.dm"
#include "code\modules\reagents\reagent_containers\food\snacks\meat.dm"