mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-17 21:52:42 +00:00
Move almost everythign food related into the kitchen module.
Not moving reagents and tools.
This commit is contained in:
@@ -1,166 +0,0 @@
|
||||
#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
|
||||
|
||||
matter = list("glass" = 60)
|
||||
|
||||
/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"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/afterattack(var/obj/target, var/mob/user, var/proximity)
|
||||
if(user.a_intent == I_HURT) //We only want splashing to be done if they are on harm intent.
|
||||
if(!is_open_container() || !proximity)
|
||||
return 1
|
||||
if(standard_splash_mob(user, target))
|
||||
return 1
|
||||
if(reagents && reagents.total_volume) //They are on harm intent, aka wanting to spill it.
|
||||
user << "<span class='notice'>You splash the solution onto [target].</span>"
|
||||
reagents.splash(target, reagents.total_volume)
|
||||
return 1
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/standard_feed_mob(var/mob/user, var/mob/target)
|
||||
if(afterattack(target, user)) //Check to see if harm intent & splash.
|
||||
return
|
||||
else
|
||||
..() //If they're splashed, no need to do anything else.
|
||||
@@ -1,72 +0,0 @@
|
||||
/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 << "<span class=notice>You add \the [GE] to \the [src].</span>"
|
||||
update_icon()
|
||||
else
|
||||
user << "<span class=warning>There's no space to put \the [GE] on \the [src]!</span>"
|
||||
else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice))
|
||||
if(!rim_pos)
|
||||
user << "<span class=warning>There's no space to put \the [I] on \the [src]!</span>"
|
||||
return
|
||||
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 << "<span class=notice>You add \the [FS] to \the [src].</span>"
|
||||
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 << "<span class=warning>There's nothing on the glass to remove!</span>"
|
||||
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 << "<span class=notice>You remove \the [choice] from \the [src].</span>"
|
||||
extras -= choice
|
||||
else
|
||||
user << "<span class=warning>Something went wrong, please try again.</span>"
|
||||
|
||||
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 = ITEMSIZE_TINY
|
||||
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
|
||||
@@ -1,80 +0,0 @@
|
||||
/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)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/metaglass(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/glasses/meta
|
||||
name = "box of half-pint metamorphic glasses"
|
||||
glass_type = /obj/item/weapon/reagent_containers/food/drinks/metaglass
|
||||
|
||||
/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
|
||||
@@ -1,80 +0,0 @@
|
||||
/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
|
||||
matter = list("glass" = 60)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 40)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 30)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 30)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 10)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 120)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 80)
|
||||
|
||||
/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)
|
||||
matter = list("glass" = 50)
|
||||
@@ -1,544 +0,0 @@
|
||||
/obj/item/weapon/reagent_containers/food/drinks/metaglass
|
||||
name = "metamorphic glass"
|
||||
desc = "This glass changes shape and form depending on the drink inside... fancy!"
|
||||
icon_state = "glass_empty"
|
||||
amount_per_transfer_from_this = 5
|
||||
volume = 30
|
||||
unacidable = 1 //glass
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
matter = list("glass" = 500)
|
||||
icon = 'icons/obj/drinks.dmi'
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/metaglass/on_reagent_change()
|
||||
if (reagents.reagent_list.len > 0)
|
||||
var/datum/reagent/R = reagents.get_master_reagent()
|
||||
|
||||
if(R.glass_icon_state)
|
||||
icon_state = R.glass_icon_state
|
||||
else
|
||||
icon_state = "glass_brown"
|
||||
|
||||
if(R.glass_name)
|
||||
name = R.glass_name
|
||||
else
|
||||
name = "Glass of.. what?"
|
||||
|
||||
if(R.glass_desc)
|
||||
desc = R.glass_desc
|
||||
else
|
||||
desc = "You can't really tell what this is."
|
||||
|
||||
if(R.glass_center_of_mass)
|
||||
center_of_mass = R.glass_center_of_mass
|
||||
else
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
if(R.price_tag)
|
||||
price_tag = R.price_tag
|
||||
else
|
||||
price_tag = null
|
||||
else
|
||||
icon_state = "glass_empty"
|
||||
name = "metamorphic glass"
|
||||
desc = "This glass changes shape and form depending on the drink inside... fancy!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
return
|
||||
|
||||
|
||||
/*
|
||||
Drinks Data
|
||||
*/
|
||||
|
||||
/datum/reagent
|
||||
var/glass_icon_state = null
|
||||
var/glass_center_of_mass = null
|
||||
|
||||
/datum/reagent/adminordrazine
|
||||
glass_icon_state = "golden_cup"
|
||||
|
||||
/datum/reagent/chloralhydrate/beer2
|
||||
glass_icon_state = "beerglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/blood
|
||||
glass_icon_state = "glass_red"
|
||||
|
||||
/datum/reagent/water
|
||||
glass_icon_state = "glass_clear"
|
||||
|
||||
/datum/reagent/fuel
|
||||
glass_icon_state = "dr_gibb_glass"
|
||||
|
||||
/datum/reagent/ethanol
|
||||
glass_icon_state = "glass_clear"
|
||||
|
||||
/datum/reagent/sugar
|
||||
glass_icon_state = "iceglass"
|
||||
|
||||
/datum/reagent/drink/juice/banana
|
||||
glass_icon_state = "banana"
|
||||
|
||||
/datum/reagent/drink/juice/berry
|
||||
glass_icon_state = "berryjuice"
|
||||
|
||||
/datum/reagent/drink/juice/carrot
|
||||
glass_icon_state = "carrotjuice"
|
||||
|
||||
/datum/reagent/drink/juice/
|
||||
glass_icon_state = "grapejuice"
|
||||
|
||||
/datum/reagent/drink/juice/lemon
|
||||
glass_icon_state = "lemonjuice"
|
||||
|
||||
/datum/reagent/drink/juice/apple
|
||||
glass_icon_state = "applejuice"
|
||||
|
||||
/datum/reagent/drink/juice/lime
|
||||
glass_icon_state = "glass_green"
|
||||
|
||||
/datum/reagent/drink/juice/orange
|
||||
glass_icon_state = "glass_orange"
|
||||
|
||||
/datum/reagent/toxin/poisonberryjuice
|
||||
glass_icon_state = "poisonberryjuice"
|
||||
|
||||
/datum/reagent/drink/juice/potato
|
||||
glass_icon_state = "glass_brown"
|
||||
|
||||
/datum/reagent/drink/juice/tomato
|
||||
glass_icon_state = "glass_red"
|
||||
|
||||
/datum/reagent/drink/juice/watermelon
|
||||
glass_icon_state = "glass_red"
|
||||
|
||||
/datum/reagent/drink/milk
|
||||
glass_icon_state = "glass_white"
|
||||
|
||||
/datum/reagent/drink/chocolate
|
||||
glass_icon_state = "glass_brown"
|
||||
|
||||
/datum/reagent/drink/tea
|
||||
glass_icon_state = "bigteacup"
|
||||
|
||||
/datum/reagent/drink/tea/icetea
|
||||
glass_icon_state = "icedteaglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=10)
|
||||
|
||||
/datum/reagent/drink/coffee
|
||||
glass_icon_state = "hot_coffee"
|
||||
|
||||
/datum/reagent/drink/icecoffee
|
||||
glass_icon_state = "icedcoffeeglass"
|
||||
|
||||
/datum/reagent/drink/soy_latte
|
||||
glass_icon_state = "soy_latte"
|
||||
glass_center_of_mass = list("x"=15, "y"=9)
|
||||
|
||||
/datum/reagent/drink/cafe_latte
|
||||
glass_icon_state = "cafe_latte"
|
||||
glass_center_of_mass = list("x"=15, "y"=9)
|
||||
|
||||
/datum/reagent/drink/hot_coco
|
||||
glass_icon_state = "chocolateglass"
|
||||
|
||||
/datum/reagent/drink/soda/sodawater
|
||||
glass_icon_state = "glass_clear"
|
||||
|
||||
/datum/reagent/drink/soda/grapesoda
|
||||
glass_icon_state = "gsodaglass"
|
||||
|
||||
/datum/reagent/drink/soda/tonic
|
||||
glass_icon_state = "glass_clear"
|
||||
|
||||
/datum/reagent/drink/soda/lemonade
|
||||
glass_icon_state = "lemonadeglass"
|
||||
|
||||
/datum/reagent/drink/soda/kiraspecial
|
||||
glass_icon_state = "kiraspecial"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/drink/soda/brownstar
|
||||
glass_icon_state = "brownstar"
|
||||
|
||||
/datum/reagent/drink/milkshake
|
||||
glass_icon_state = "milkshake"
|
||||
glass_center_of_mass = list("x"=16, "y"=7)
|
||||
|
||||
/datum/reagent/drink/rewriter
|
||||
glass_icon_state = "rewriter"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/drink/soda/nuka_cola
|
||||
glass_icon_state = "nuka_colaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/datum/reagent/drink/grenadine
|
||||
glass_icon_state = "grenadineglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=6)
|
||||
|
||||
/datum/reagent/drink/soda/space_cola
|
||||
glass_icon_state = "glass_brown"
|
||||
|
||||
/datum/reagent/drink/soda/spacemountainwind
|
||||
glass_icon_state = "Space_mountain_wind_glass"
|
||||
|
||||
/datum/reagent/drink/soda/dr_gibb
|
||||
glass_icon_state = "dr_gibb_glass"
|
||||
|
||||
/datum/reagent/drink/soda/space_up
|
||||
glass_icon_state = "space-up_glass"
|
||||
|
||||
/datum/reagent/drink/soda/lemon_lime
|
||||
glass_icon_state = "lemonlime"
|
||||
|
||||
/datum/reagent/drink/doctor_delight
|
||||
glass_icon_state = "doctorsdelightglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/drink/ice
|
||||
glass_icon_state = "iceglass"
|
||||
|
||||
/datum/reagent/drink/nothing
|
||||
glass_icon_state = "nothing"
|
||||
|
||||
/datum/reagent/drink/oilslick
|
||||
glass_icon_state = "jar_oil"
|
||||
glass_center_of_mass = list("x"=15, "y"=12)
|
||||
|
||||
/datum/reagent/drink/nuclearwaste
|
||||
glass_icon_state = "jar_rad"
|
||||
glass_center_of_mass = list("x"=15, "y"=12)
|
||||
|
||||
/datum/reagent/drink/sodaoil
|
||||
glass_icon_state = "jar_water"
|
||||
glass_center_of_mass = list("x"=15, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/absinthe
|
||||
glass_icon_state = "absintheglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=5)
|
||||
|
||||
/datum/reagent/ethanol/ale
|
||||
glass_icon_state = "aleglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/beer
|
||||
glass_icon_state = "beerglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/bluecuracao
|
||||
glass_icon_state = "curacaoglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=5)
|
||||
|
||||
/datum/reagent/ethanol/cognac
|
||||
glass_icon_state = "cognacglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/datum/reagent/ethanol/deadrum
|
||||
glass_icon_state = "rumglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/gin
|
||||
glass_icon_state = "ginvodkaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/coffee/kahlua
|
||||
glass_icon_state = "kahluaglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/melonliquor
|
||||
glass_icon_state = "emeraldglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=5)
|
||||
|
||||
/datum/reagent/ethanol/rum
|
||||
glass_icon_state = "rumglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/sake
|
||||
glass_icon_state = "sakecup"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/godsake
|
||||
glass_icon_state = "sakeporcelain"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/tequila
|
||||
glass_icon_state = "tequillaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/thirteenloko
|
||||
glass_icon_state = "thirteen_loko_glass"
|
||||
|
||||
/datum/reagent/ethanol/vermouth
|
||||
glass_icon_state = "vermouthglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/vodka
|
||||
glass_icon_state = "ginvodkaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/whiskey
|
||||
glass_icon_state = "whiskeyglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/wine
|
||||
glass_icon_state = "wineglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/acid_spit
|
||||
glass_icon_state = "acidspitglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/alliescocktail
|
||||
glass_icon_state = "alliescocktail"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/aloe
|
||||
glass_icon_state = "aloe"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/amasec
|
||||
glass_icon_state = "amasecglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/andalusia
|
||||
glass_icon_state = "andalusia"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/antifreeze
|
||||
glass_icon_state = "antifreeze"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/atomicbomb
|
||||
glass_icon_state = "atomicbombglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/b52
|
||||
glass_icon_state = "b52glass"
|
||||
|
||||
/datum/reagent/ethanol/bahama_mama
|
||||
glass_icon_state = "bahama_mama"
|
||||
glass_center_of_mass = list("x"=16, "y"=5)
|
||||
|
||||
/datum/reagent/ethanol/bananahonk
|
||||
glass_icon_state = "bananahonkglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/barefoot
|
||||
glass_icon_state = "b&p"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/beepsky_smash
|
||||
glass_icon_state = "beepskysmashglass"
|
||||
glass_center_of_mass = list("x"=18, "y"=10)
|
||||
|
||||
/datum/reagent/ethanol/bilk
|
||||
glass_icon_state = "glass_brown"
|
||||
|
||||
/datum/reagent/ethanol/black_russian
|
||||
glass_icon_state = "blackrussianglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/bloody_mary
|
||||
glass_icon_state = "bloodymaryglass"
|
||||
|
||||
/datum/reagent/ethanol/booger
|
||||
glass_icon_state = "booger"
|
||||
|
||||
/datum/reagent/ethanol/coffee/brave_bull
|
||||
glass_icon_state = "bravebullglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/changelingsting
|
||||
glass_icon_state = "changelingsting"
|
||||
|
||||
/datum/reagent/ethanol/martini
|
||||
glass_icon_state = "martiniglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/cuba_libre
|
||||
glass_icon_state = "cubalibreglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/demonsblood
|
||||
glass_icon_state = "demonsblood"
|
||||
glass_center_of_mass = list("x"=16, "y"=2)
|
||||
|
||||
/datum/reagent/ethanol/devilskiss
|
||||
glass_icon_state = "devilskiss"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/driestmartini
|
||||
glass_icon_state = "driestmartiniglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/ginfizz
|
||||
glass_icon_state = "ginfizzglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/grog
|
||||
glass_icon_state = "grogglass"
|
||||
|
||||
/datum/reagent/ethanol/erikasurprise
|
||||
glass_icon_state = "erikasurprise"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/gargle_blaster
|
||||
glass_icon_state = "gargleblasterglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=6)
|
||||
|
||||
/datum/reagent/ethanol/gintonic
|
||||
glass_icon_state = "gintonicglass"
|
||||
|
||||
/datum/reagent/ethanol/goldschlager
|
||||
glass_icon_state = "ginvodkaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/hippies_delight
|
||||
glass_icon_state = "hippiesdelightglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/hooch
|
||||
glass_icon_state = "glass_brown2"
|
||||
|
||||
/datum/reagent/ethanol/iced_beer
|
||||
glass_icon_state = "iced_beerglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/irishcarbomb
|
||||
glass_icon_state = "irishcarbomb"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/coffee/irishcoffee
|
||||
glass_icon_state = "irishcoffeeglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=10)
|
||||
|
||||
/datum/reagent/ethanol/irish_cream
|
||||
glass_icon_state = "irishcreamglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/longislandicedtea
|
||||
glass_icon_state = "longislandicedteaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/manhattan
|
||||
glass_icon_state = "manhattanglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/manhattan_proj
|
||||
glass_icon_state = "proj_manhattanglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/manly_dorf
|
||||
glass_icon_state = "manlydorfglass"
|
||||
|
||||
/datum/reagent/ethanol/margarita
|
||||
glass_icon_state = "margaritaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/mead
|
||||
glass_icon_state = "meadglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=10)
|
||||
|
||||
/datum/reagent/ethanol/moonshine
|
||||
glass_icon_state = "glass_clear"
|
||||
|
||||
/datum/reagent/ethanol/neurotoxin
|
||||
glass_icon_state = "neurotoxinglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/patron
|
||||
glass_icon_state = "patronglass"
|
||||
glass_center_of_mass = list("x"=7, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/pwine
|
||||
glass_icon_state = "pwineglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=5)
|
||||
|
||||
/datum/reagent/ethanol/red_mead
|
||||
glass_icon_state = "red_meadglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=10)
|
||||
|
||||
/datum/reagent/ethanol/sbiten
|
||||
glass_icon_state = "sbitenglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/screwdrivercocktail
|
||||
glass_icon_state = "screwdriverglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=10)
|
||||
|
||||
/datum/reagent/ethanol/silencer
|
||||
glass_icon_state = "silencerglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/singulo
|
||||
glass_icon_state = "singulo"
|
||||
glass_center_of_mass = list("x"=17, "y"=4)
|
||||
|
||||
/datum/reagent/ethanol/snowwhite
|
||||
glass_icon_state = "snowwhite"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/suidream
|
||||
glass_icon_state = "sdreamglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=5)
|
||||
|
||||
/datum/reagent/ethanol/syndicatebomb
|
||||
glass_icon_state = "syndicatebomb"
|
||||
glass_center_of_mass = list("x"=16, "y"=4)
|
||||
|
||||
/datum/reagent/ethanol/tequilla_sunrise
|
||||
glass_icon_state = "tequillasunriseglass"
|
||||
|
||||
/datum/reagent/ethanol/threemileisland
|
||||
glass_icon_state = "threemileislandglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=2)
|
||||
|
||||
/datum/reagent/ethanol/toxins_special
|
||||
glass_icon_state = "toxinsspecialglass"
|
||||
|
||||
/datum/reagent/ethanol/vodkamartini
|
||||
glass_icon_state = "martiniglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/vodkatonic
|
||||
glass_icon_state = "vodkatonicglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/white_russian
|
||||
glass_icon_state = "whiterussianglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/whiskey_cola
|
||||
glass_icon_state = "whiskeycolaglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/whiskeysoda
|
||||
glass_icon_state = "whiskeysodaglass2"
|
||||
glass_center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/datum/reagent/ethanol/specialwhiskey
|
||||
glass_icon_state = "whiskeyglass"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/godka
|
||||
glass_icon_state = "godkabottle"
|
||||
glass_center_of_mass = list("x"=17, "y"=15)
|
||||
|
||||
/datum/reagent/ethanol/holywine
|
||||
glass_icon_state = "holywineglass"
|
||||
glass_center_of_mass = list("x"=15, "y"=7)
|
||||
|
||||
/datum/reagent/ethanol/holy_mary
|
||||
glass_icon_state = "holymaryglass"
|
||||
|
||||
/datum/reagent/ethanol/angelswrath
|
||||
glass_icon_state = "angelswrath"
|
||||
glass_center_of_mass = list("x"=16, "y"=2)
|
||||
|
||||
/datum/reagent/ethanol/angelskiss
|
||||
glass_icon_state = "angelskiss"
|
||||
glass_center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/datum/reagent/ethanol/ichor_mead
|
||||
glass_icon_state = "ichor_meadglass"
|
||||
glass_center_of_mass = list("x"=17, "y"=10)
|
||||
@@ -1,31 +0,0 @@
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask
|
||||
name = "fitness shaker"
|
||||
base_name = "shaker"
|
||||
desc = "Big enough to contain enough protein to get perfectly swole. Don't mind the bits."
|
||||
icon_state = "fitness-cup_black"
|
||||
base_icon = "fitness-cup"
|
||||
volume = 100
|
||||
matter = list("plastic" = 2000)
|
||||
filling_states = list(10,20,30,40,50,60,70,80,90,100)
|
||||
possible_transfer_amounts = list(5, 10, 15, 25)
|
||||
rim_pos = null // no fruit slices
|
||||
var/lid_color = "black"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/New()
|
||||
..()
|
||||
lid_color = pick("black", "red", "blue")
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/update_icon()
|
||||
..()
|
||||
icon_state = "[base_icon]_[lid_color]"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake
|
||||
name = "protein shake"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake/New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 30)
|
||||
reagents.add_reagent("iron", 10)
|
||||
reagents.add_reagent("protein", 35)
|
||||
reagents.add_reagent("water", 25)
|
||||
@@ -1,38 +0,0 @@
|
||||
#define CELLS 8
|
||||
#define CELLSIZE (32/CELLS)
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// Food.
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/obj/item/weapon/reagent_containers/food
|
||||
possible_transfer_amounts = null
|
||||
volume = 50 //Sets the default container amount for all food items.
|
||||
var/filling_color = "#FFFFFF" //Used by sandwiches.
|
||||
|
||||
var/list/center_of_mass = list() // Used for table placement
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/New()
|
||||
..()
|
||||
if (center_of_mass.len && !pixel_x && !pixel_y)
|
||||
src.pixel_x = rand(-6.0, 6) //Randomizes postion
|
||||
src.pixel_y = rand(-6.0, 6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/afterattack(atom/A, mob/user, proximity, params)
|
||||
if(center_of_mass.len && proximity && params && istype(A, /obj/structure/table))
|
||||
//Places the item on a grid
|
||||
var/list/mouse_control = params2list(params)
|
||||
|
||||
var/mouse_x = text2num(mouse_control["icon-x"])
|
||||
var/mouse_y = text2num(mouse_control["icon-y"])
|
||||
|
||||
if(!isnum(mouse_x) || !isnum(mouse_y))
|
||||
return
|
||||
|
||||
var/cell_x = max(0, min(CELLS-1, round(mouse_x/CELLSIZE)))
|
||||
var/cell_y = max(0, min(CELLS-1, round(mouse_y/CELLSIZE)))
|
||||
|
||||
pixel_x = (CELLSIZE * (0.5 + cell_x)) - center_of_mass["x"]
|
||||
pixel_y = (CELLSIZE * (0.5 + cell_y)) - center_of_mass["y"]
|
||||
|
||||
#undef CELLS
|
||||
#undef CELLSIZE
|
||||
@@ -1,136 +0,0 @@
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans
|
||||
volume = 40 //just over one and a half cups
|
||||
amount_per_transfer_from_this = 5
|
||||
flags = 0 //starts closed
|
||||
|
||||
//DRINKS
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/cola
|
||||
name = "\improper Space Cola"
|
||||
desc = "Cola. in space."
|
||||
icon_state = "cola"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/cola/New()
|
||||
..()
|
||||
reagents.add_reagent("cola", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle
|
||||
name = "bottled water"
|
||||
desc = "Introduced to the vending machines by Skrellian request, this water comes straight from the Martian poles."
|
||||
icon_state = "waterbottle"
|
||||
center_of_mass = list("x"=15, "y"=8)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/New()
|
||||
..()
|
||||
reagents.add_reagent("water", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_mountain_wind
|
||||
name = "\improper Space Mountain Wind"
|
||||
desc = "Blows right through you like a space wind."
|
||||
icon_state = "space_mountain_wind"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_mountain_wind/New()
|
||||
..()
|
||||
reagents.add_reagent("spacemountainwind", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/thirteenloko
|
||||
name = "\improper Thirteen Loko"
|
||||
desc = "The CMO has advised crew members that consumption of Thirteen Loko may result in seizures, blindness, drunkeness, or even death. Please Drink Responsibly."
|
||||
icon_state = "thirteen_loko"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/thirteenloko/New()
|
||||
..()
|
||||
reagents.add_reagent("thirteenloko", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb
|
||||
name = "\improper Dr. Gibb"
|
||||
desc = "A delicious mixture of 42 different flavors."
|
||||
icon_state = "dr_gibb"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb/New()
|
||||
..()
|
||||
reagents.add_reagent("dr_gibb", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/starkist
|
||||
name = "\improper Star-kist"
|
||||
desc = "The taste of a star in liquid form. And, a bit of tuna...?"
|
||||
icon_state = "starkist"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/starkist/New()
|
||||
..()
|
||||
reagents.add_reagent("brownstar", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_up
|
||||
name = "\improper Space-Up"
|
||||
desc = "Tastes like a hull breach in your mouth."
|
||||
icon_state = "space-up"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_up/New()
|
||||
..()
|
||||
reagents.add_reagent("space_up", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/lemon_lime
|
||||
name = "\improper Lemon-Lime"
|
||||
desc = "You wanted ORANGE. It gave you Lemon Lime."
|
||||
icon_state = "lemon-lime"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/lemon_lime/New()
|
||||
..()
|
||||
reagents.add_reagent("lemon_lime", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/iced_tea
|
||||
name = "\improper Vrisk Serket Iced Tea"
|
||||
desc = "That sweet, refreshing southern earthy flavor. That's where it's from, right? South Earth?"
|
||||
icon_state = "ice_tea_can"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/iced_tea/New()
|
||||
..()
|
||||
reagents.add_reagent("icetea", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice
|
||||
name = "\improper Grapel Juice"
|
||||
desc = "500 pages of rules of how to appropriately enter into a combat with this juice!"
|
||||
icon_state = "purple_can"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice/New()
|
||||
..()
|
||||
reagents.add_reagent("grapejuice", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/tonic
|
||||
name = "\improper T-Borg's Tonic Water"
|
||||
desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away."
|
||||
icon_state = "tonic"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/tonic/New()
|
||||
..()
|
||||
reagents.add_reagent("tonic", 50)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/sodawater
|
||||
name = "soda water"
|
||||
desc = "A can of soda water. Still water's more refreshing cousin."
|
||||
icon_state = "sodawater"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/sodawater/New()
|
||||
..()
|
||||
reagents.add_reagent("sodawater", 50)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/gingerale
|
||||
name = "\improper Classic Ginger Ale"
|
||||
desc = "For when you need to be more retro than NanoTrasen already pays you for."
|
||||
icon_state = "gingerale"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/gingerale/New()
|
||||
..()
|
||||
reagents.add_reagent("gingerale", 30)
|
||||
@@ -1,178 +0,0 @@
|
||||
|
||||
///////////////////////////////////////////////Condiments
|
||||
//Notes by Darem: The condiments food-subtype is for stuff you don't actually eat but you use to modify existing food. They all
|
||||
// leave empty containers when used up and can be filled/re-filled with other items. Formatting for first section is identical
|
||||
// to mixed-drinks code. If you want an object that starts pre-loaded, you need to make it in addition to the other code.
|
||||
|
||||
//Food items that aren't eaten normally and leave an empty container behind.
|
||||
/obj/item/weapon/reagent_containers/food/condiment
|
||||
name = "Condiment Container"
|
||||
desc = "Just your average condiment container."
|
||||
icon = 'icons/obj/food.dmi'
|
||||
icon_state = "emptycondiment"
|
||||
flags = OPENCONTAINER
|
||||
possible_transfer_amounts = list(1,5,10)
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
volume = 50
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/attack_self(var/mob/user as mob)
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/attack(var/mob/M as mob, var/mob/user as mob, var/def_zone)
|
||||
if(standard_feed_mob(user, M))
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/afterattack(var/obj/target, var/mob/user, var/flag)
|
||||
if(standard_dispenser_refill(user, target))
|
||||
return
|
||||
if(standard_pour_into(user, target))
|
||||
return
|
||||
|
||||
if(istype(target, /obj/item/weapon/reagent_containers/food/snacks)) // These are not opencontainers but we can transfer to them
|
||||
if(!reagents || !reagents.total_volume)
|
||||
user << "<span class='notice'>There is no condiment left in \the [src].</span>"
|
||||
return
|
||||
|
||||
if(!target.reagents.get_free_space())
|
||||
user << "<span class='notice'>You can't add more condiment to \the [target].</span>"
|
||||
return
|
||||
|
||||
var/trans = reagents.trans_to_obj(target, amount_per_transfer_from_this)
|
||||
user << "<span class='notice'>You add [trans] units of the condiment to \the [target].</span>"
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/feed_sound(var/mob/user)
|
||||
playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/self_feed_message(var/mob/user)
|
||||
user << "<span class='notice'>You swallow some of contents of \the [src].</span>"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/on_reagent_change()
|
||||
if(reagents.reagent_list.len > 0)
|
||||
switch(reagents.get_master_reagent_id())
|
||||
if("ketchup")
|
||||
name = "Ketchup"
|
||||
desc = "You feel more American already."
|
||||
icon_state = "ketchup"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("capsaicin")
|
||||
name = "Hotsauce"
|
||||
desc = "You can almost TASTE the stomach ulcers now!"
|
||||
icon_state = "hotsauce"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("enzyme")
|
||||
name = "Universal Enzyme"
|
||||
desc = "Used in cooking various dishes."
|
||||
icon_state = "enzyme"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("soysauce")
|
||||
name = "Soy Sauce"
|
||||
desc = "A salty soy-based flavoring."
|
||||
icon_state = "soysauce"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("frostoil")
|
||||
name = "Coldsauce"
|
||||
desc = "Leaves the tongue numb in its passage."
|
||||
icon_state = "coldsauce"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("sodiumchloride")
|
||||
name = "Salt Shaker"
|
||||
desc = "Salt. From space oceans, presumably."
|
||||
icon_state = "saltshaker"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("blackpepper")
|
||||
name = "Pepper Mill"
|
||||
desc = "Often used to flavor food or make people sneeze."
|
||||
icon_state = "peppermillsmall"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("cornoil")
|
||||
name = "Corn Oil"
|
||||
desc = "A delicious oil used in cooking. Made from corn."
|
||||
icon_state = "oliveoil"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("sugar")
|
||||
name = "Sugar"
|
||||
desc = "Tastey space sugar!"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
else
|
||||
name = "Misc Condiment Bottle"
|
||||
if (reagents.reagent_list.len==1)
|
||||
desc = "Looks like it is [reagents.get_master_reagent_name()], but you are not sure."
|
||||
else
|
||||
desc = "A mixture of various condiments. [reagents.get_master_reagent_name()] is one of them."
|
||||
icon_state = "mixedcondiments"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
else
|
||||
icon_state = "emptycondiment"
|
||||
name = "Condiment Bottle"
|
||||
desc = "An empty condiment bottle."
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/enzyme
|
||||
name = "Universal Enzyme"
|
||||
desc = "Used in cooking various dishes."
|
||||
icon_state = "enzyme"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/enzyme/New()
|
||||
..()
|
||||
reagents.add_reagent("enzyme", 50)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/sugar/New()
|
||||
..()
|
||||
reagents.add_reagent("sugar", 50)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small
|
||||
possible_transfer_amounts = list(1,20)
|
||||
amount_per_transfer_from_this = 1
|
||||
volume = 20
|
||||
center_of_mass = list()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/on_reagent_change()
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker //Seperate from above since it's a small shaker rather then
|
||||
name = "salt shaker" // a large one.
|
||||
desc = "Salt. From space oceans, presumably."
|
||||
icon_state = "saltshakersmall"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker/New()
|
||||
..()
|
||||
reagents.add_reagent("sodiumchloride", 20)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/peppermill
|
||||
name = "pepper mill"
|
||||
desc = "Often used to flavor food or make people sneeze."
|
||||
icon_state = "peppermillsmall"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/peppermill/New()
|
||||
..()
|
||||
reagents.add_reagent("blackpepper", 20)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/sugar
|
||||
name = "sugar"
|
||||
desc = "Sweetness in a bottle"
|
||||
icon_state = "sugarsmall"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/small/sugar/New()
|
||||
..()
|
||||
reagents.add_reagent("sugar", 20)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/flour
|
||||
name = "flour sack"
|
||||
desc = "A big bag of flour. Good for baking!"
|
||||
icon = 'icons/obj/food.dmi'
|
||||
icon_state = "flour"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/flour/on_reagent_change()
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/flour/New()
|
||||
..()
|
||||
reagents.add_reagent("flour", 30)
|
||||
src.pixel_x = rand(-10.0, 10)
|
||||
src.pixel_y = rand(-10.0, 10)
|
||||
@@ -1,313 +0,0 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// Drinks.
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/obj/item/weapon/reagent_containers/food/drinks
|
||||
name = "drink"
|
||||
desc = "yummy"
|
||||
icon = 'icons/obj/drinks.dmi'
|
||||
icon_state = null
|
||||
flags = OPENCONTAINER
|
||||
amount_per_transfer_from_this = 5
|
||||
volume = 50
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/on_reagent_change()
|
||||
if (reagents.reagent_list.len > 0)
|
||||
var/datum/reagent/R = reagents.get_master_reagent()
|
||||
if(R.price_tag)
|
||||
price_tag = R.price_tag
|
||||
else
|
||||
price_tag = null
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/attack_self(mob/user as mob)
|
||||
if(!is_open_container())
|
||||
open(user)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/proc/open(mob/user)
|
||||
playsound(loc,"canopen", rand(10,50), 1)
|
||||
user << "<span class='notice'>You open [src] with an audible pop!</span>"
|
||||
flags |= OPENCONTAINER
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/attack(mob/M as mob, mob/user as mob, def_zone)
|
||||
if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
|
||||
return ..()
|
||||
|
||||
if(standard_feed_mob(user, M))
|
||||
return
|
||||
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/afterattack(obj/target, mob/user, proximity)
|
||||
if(!proximity) return
|
||||
|
||||
if(standard_dispenser_refill(user, target))
|
||||
return
|
||||
if(standard_pour_into(user, target))
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/standard_feed_mob(var/mob/user, var/mob/target)
|
||||
if(!is_open_container())
|
||||
user << "<span class='notice'>You need to open [src]!</span>"
|
||||
return 1
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/standard_dispenser_refill(var/mob/user, var/obj/structure/reagent_dispensers/target)
|
||||
if(!is_open_container())
|
||||
user << "<span class='notice'>You need to open [src]!</span>"
|
||||
return 1
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/standard_pour_into(var/mob/user, var/atom/target)
|
||||
if(!is_open_container())
|
||||
user << "<span class='notice'>You need to open [src]!</span>"
|
||||
return 1
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/self_feed_message(var/mob/user)
|
||||
user << "<span class='notice'>You swallow a gulp from \the [src].</span>"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/feed_sound(var/mob/user)
|
||||
playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/examine(mob/user)
|
||||
if(!..(user, 1))
|
||||
return
|
||||
if(!reagents || reagents.total_volume == 0)
|
||||
user << "<span class='notice'>\The [src] is empty!</span>"
|
||||
else if (reagents.total_volume <= volume * 0.25)
|
||||
user << "<span class='notice'>\The [src] is almost empty!</span>"
|
||||
else if (reagents.total_volume <= volume * 0.66)
|
||||
user << "<span class='notice'>\The [src] is half full!</span>"
|
||||
else if (reagents.total_volume <= volume * 0.90)
|
||||
user << "<span class='notice'>\The [src] is almost full!</span>"
|
||||
else
|
||||
user << "<span class='notice'>\The [src] is full!</span>"
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// Drinks. END
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/golden_cup
|
||||
desc = "A golden cup"
|
||||
name = "golden cup"
|
||||
icon_state = "golden_cup"
|
||||
item_state = "" //nope :(
|
||||
w_class = ITEMSIZE_LARGE
|
||||
force = 14
|
||||
throwforce = 10
|
||||
amount_per_transfer_from_this = 20
|
||||
possible_transfer_amounts = null
|
||||
volume = 150
|
||||
flags = CONDUCT | OPENCONTAINER
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/golden_cup/on_reagent_change()
|
||||
..()
|
||||
|
||||
///////////////////////////////////////////////Drinks
|
||||
//Notes by Darem: Drinks are simply containers that start preloaded. Unlike condiments, the contents can be ingested directly
|
||||
// rather then having to add it to something else first. They should only contain liquids. They have a default container size of 50.
|
||||
// Formatting is the same as food.
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/milk
|
||||
name = "milk carton"
|
||||
desc = "It's milk. White and nutritious goodness!"
|
||||
icon_state = "milk"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/milk/New()
|
||||
..()
|
||||
reagents.add_reagent("milk", 50)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/soymilk
|
||||
name = "soymilk carton"
|
||||
desc = "It's soy milk. White and nutritious goodness!"
|
||||
icon_state = "soymilk"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
/obj/item/weapon/reagent_containers/food/drinks/soymilk/New()
|
||||
..()
|
||||
reagents.add_reagent("soymilk", 50)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/smallmilk
|
||||
name = "small milk carton"
|
||||
desc = "It's milk. White and nutritious goodness!"
|
||||
volume = 30
|
||||
icon_state = "mini-milk"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
/obj/item/weapon/reagent_containers/food/drinks/smallmilk/New()
|
||||
..()
|
||||
reagents.add_reagent("milk", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk
|
||||
name = "small chocolate milk carton"
|
||||
desc = "It's milk! This one is in delicious chocolate flavour."
|
||||
volume = 30
|
||||
icon_state = "mini-milk_choco"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk/New()
|
||||
..()
|
||||
reagents.add_reagent("chocolate_milk", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/coffee
|
||||
name = "\improper Robust Coffee"
|
||||
desc = "Careful, the beverage you're about to enjoy is extremely hot."
|
||||
icon_state = "coffee"
|
||||
center_of_mass = list("x"=15, "y"=10)
|
||||
/obj/item/weapon/reagent_containers/food/drinks/coffee/New()
|
||||
..()
|
||||
reagents.add_reagent("coffee", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/tea
|
||||
name = "cup of Duke Purple Tea"
|
||||
desc = "An insult to Duke Purple is an insult to the Space Queen! Any proper gentleman will fight you, if you sully this tea."
|
||||
icon_state = "teacup"
|
||||
item_state = "coffee"
|
||||
center_of_mass = list("x"=16, "y"=14)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/tea/New()
|
||||
..()
|
||||
reagents.add_reagent("tea", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/ice
|
||||
name = "cup of ice"
|
||||
desc = "Careful, cold ice, do not chew."
|
||||
icon_state = "coffee"
|
||||
center_of_mass = list("x"=15, "y"=10)
|
||||
/obj/item/weapon/reagent_containers/food/drinks/ice/New()
|
||||
..()
|
||||
reagents.add_reagent("ice", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/h_chocolate
|
||||
name = "cup of Dutch hot coco"
|
||||
desc = "Made in Space South America."
|
||||
icon_state = "hot_coco"
|
||||
item_state = "coffee"
|
||||
center_of_mass = list("x"=15, "y"=13)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/h_chocolate/New()
|
||||
..()
|
||||
reagents.add_reagent("hot_coco", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/dry_ramen
|
||||
name = "Cup Ramen"
|
||||
desc = "Just add 10ml water, self heats! A taste that reminds you of your school years."
|
||||
icon_state = "ramen"
|
||||
center_of_mass = list("x"=16, "y"=11)
|
||||
/obj/item/weapon/reagent_containers/food/drinks/dry_ramen/New()
|
||||
..()
|
||||
reagents.add_reagent("dry_ramen", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/sillycup
|
||||
name = "paper cup"
|
||||
desc = "A paper water cup."
|
||||
icon_state = "water_cup_e"
|
||||
possible_transfer_amounts = null
|
||||
volume = 10
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/sillycup/New()
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/sillycup/on_reagent_change()
|
||||
..()
|
||||
if(reagents.total_volume)
|
||||
icon_state = "water_cup"
|
||||
else
|
||||
icon_state = "water_cup_e"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/sillycup/MouseDrop(obj/over_object as obj)
|
||||
if(!reagents.total_volume && istype(over_object, /obj/structure/reagent_dispensers/water_cooler))
|
||||
if(over_object.Adjacent(usr))
|
||||
var/obj/structure/reagent_dispensers/water_cooler/W = over_object
|
||||
if(W.cupholder && W.cups < 10)
|
||||
W.cups++
|
||||
usr << "<span class='notice'>You put the [src] in the cup dispenser.</span>"
|
||||
qdel(src)
|
||||
W.update_icon()
|
||||
else
|
||||
return ..()
|
||||
|
||||
//////////////////////////drinkingglass and shaker//
|
||||
//Note by Darem: This code handles the mixing of drinks. New drinks go in three places: In Chemistry-Reagents.dm (for the drink
|
||||
// itself), in Chemistry-Recipes.dm (for the reaction that changes the components into the drink), and here (for the drinking glass
|
||||
// icon states.
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/shaker
|
||||
name = "shaker"
|
||||
desc = "A metal shaker to mix drinks in."
|
||||
icon_state = "shaker"
|
||||
amount_per_transfer_from_this = 10
|
||||
volume = 120
|
||||
center_of_mass = list("x"=17, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/shaker/on_reagent_change()
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/teapot
|
||||
name = "teapot"
|
||||
desc = "An elegant teapot. It simply oozes class."
|
||||
icon_state = "teapot"
|
||||
item_state = "teapot"
|
||||
amount_per_transfer_from_this = 10
|
||||
volume = 120
|
||||
center_of_mass = list("x"=17, "y"=7)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/teapot/on_reagent_change()
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask
|
||||
name = "\improper Colony Director's flask"
|
||||
desc = "A metal flask belonging to the Colony Director"
|
||||
icon_state = "flask"
|
||||
volume = 60
|
||||
center_of_mass = list("x"=17, "y"=7)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/on_reagent_change()
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/shiny
|
||||
name = "shiny flask"
|
||||
desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it."
|
||||
icon_state = "shinyflask"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/lithium
|
||||
name = "lithium flask"
|
||||
desc = "A flask with a Lithium Atom symbol on it."
|
||||
icon_state = "lithiumflask"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/detflask
|
||||
name = "\improper Detective's flask"
|
||||
desc = "A metal flask with a leather band and golden badge belonging to the detective."
|
||||
icon_state = "detflask"
|
||||
volume = 60
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/barflask
|
||||
name = "flask"
|
||||
desc = "For those who can't be bothered to hang out at the bar to drink."
|
||||
icon_state = "barflask"
|
||||
volume = 60
|
||||
center_of_mass = list("x"=17, "y"=7)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask
|
||||
name = "vacuum flask"
|
||||
desc = "Keeping your drinks at the perfect temperature since 1892."
|
||||
icon_state = "vacuumflask"
|
||||
volume = 60
|
||||
center_of_mass = list("x"=15, "y"=4)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/britcup
|
||||
name = "cup"
|
||||
desc = "A cup with the British flag emblazoned on it."
|
||||
icon_state = "britcup"
|
||||
volume = 30
|
||||
center_of_mass = list("x"=15, "y"=13)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/britcup/on_reagent_change()
|
||||
..()
|
||||
|
||||
@@ -1,551 +0,0 @@
|
||||
///////////////////////////////////////////////Alchohol bottles! -Agouri //////////////////////////
|
||||
//Functionally identical to regular drinks. The only difference is that the default bottle size is 100. - Darem
|
||||
//Bottles now weaken and break when smashed on people's heads. - Giacom
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle
|
||||
amount_per_transfer_from_this = 10
|
||||
volume = 100
|
||||
item_state = "broken_beer" //Generic held-item sprite until unique ones are made.
|
||||
force = 6
|
||||
var/smash_duration = 5 //Directly relates to the 'weaken' duration. Lowered by armor (i.e. helmets)
|
||||
var/isGlass = 1 //Whether the 'bottle' is made of glass or not so that milk cartons dont shatter when someone gets hit by it
|
||||
|
||||
var/obj/item/weapon/reagent_containers/glass/rag/rag = null
|
||||
var/rag_underlay = "rag"
|
||||
on_reagent_change() return // To suppress price updating. Bottles have their own price tags.
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/New()
|
||||
..()
|
||||
if(isGlass) unacidable = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/Destroy()
|
||||
if(rag)
|
||||
rag.forceMove(src.loc)
|
||||
rag = null
|
||||
return ..()
|
||||
|
||||
//when thrown on impact, bottles smash and spill their contents
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/throw_impact(atom/hit_atom, var/speed)
|
||||
..()
|
||||
|
||||
var/mob/M = thrower
|
||||
if(isGlass && istype(M) && M.a_intent == I_HURT)
|
||||
var/throw_dist = get_dist(throw_source, loc)
|
||||
if(speed >= throw_speed && smash_check(throw_dist)) //not as reliable as smashing directly
|
||||
if(reagents)
|
||||
hit_atom.visible_message("<span class='notice'>The contents of \the [src] splash all over [hit_atom]!</span>")
|
||||
reagents.splash(hit_atom, reagents.total_volume)
|
||||
src.smash(loc, hit_atom)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/smash_check(var/distance)
|
||||
if(!isGlass || !smash_duration)
|
||||
return 0
|
||||
|
||||
var/list/chance_table = list(100, 95, 90, 85, 75, 55, 35) //starting from distance 0
|
||||
var/idx = max(distance + 1, 1) //since list indices start at 1
|
||||
if(idx > chance_table.len)
|
||||
return 0
|
||||
return prob(chance_table[idx])
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/smash(var/newloc, atom/against = null)
|
||||
if(ismob(loc))
|
||||
var/mob/M = loc
|
||||
M.drop_from_inventory(src)
|
||||
|
||||
//Creates a shattering noise and replaces the bottle with a broken_bottle
|
||||
var/obj/item/weapon/broken_bottle/B = new /obj/item/weapon/broken_bottle(newloc)
|
||||
if(prob(33))
|
||||
new/obj/item/weapon/material/shard(newloc) // Create a glass shard at the target's location!
|
||||
B.icon_state = src.icon_state
|
||||
|
||||
var/icon/I = new('icons/obj/drinks.dmi', src.icon_state)
|
||||
I.Blend(B.broken_outline, ICON_OVERLAY, rand(5), 1)
|
||||
I.SwapColor(rgb(255, 0, 220, 255), rgb(0, 0, 0, 0))
|
||||
B.icon = I
|
||||
|
||||
if(rag && rag.on_fire && isliving(against))
|
||||
rag.forceMove(loc)
|
||||
var/mob/living/L = against
|
||||
L.IgniteMob()
|
||||
|
||||
playsound(src, "shatter", 70, 1)
|
||||
src.transfer_fingerprints_to(B)
|
||||
|
||||
qdel(src)
|
||||
return B
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/verb/smash_bottle()
|
||||
set name = "Smash Bottle"
|
||||
set category = "Object"
|
||||
|
||||
var/list/things_to_smash_on = list()
|
||||
for(var/atom/A in range (1, usr))
|
||||
if(A.density && usr.Adjacent(A) && !istype(A, /mob))
|
||||
things_to_smash_on += A
|
||||
|
||||
var/atom/choice = input("Select what you want to smash the bottle on.") as null|anything in things_to_smash_on
|
||||
if(!choice)
|
||||
return
|
||||
if(!(choice.density && usr.Adjacent(choice)))
|
||||
usr << "<span class='warning'>You must stay close to your target! You moved away from \the [choice]</span>"
|
||||
return
|
||||
|
||||
usr.put_in_hands(src.smash(usr.loc, choice))
|
||||
usr.visible_message("<span class='danger'>\The [usr] smashed \the [src] on \the [choice]!</span>")
|
||||
usr << "<span class='danger'>You smash \the [src] on \the [choice]!</span>"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/attackby(obj/item/W, mob/user)
|
||||
if(!rag && istype(W, /obj/item/weapon/reagent_containers/glass/rag))
|
||||
insert_rag(W, user)
|
||||
return
|
||||
if(rag && istype(W, /obj/item/weapon/flame))
|
||||
rag.attackby(W, user)
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/attack_self(mob/user)
|
||||
if(rag)
|
||||
remove_rag(user)
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/insert_rag(obj/item/weapon/reagent_containers/glass/rag/R, mob/user)
|
||||
if(!isGlass || rag) return
|
||||
if(user.unEquip(R))
|
||||
user << "<span class='notice'>You stuff [R] into [src].</span>"
|
||||
rag = R
|
||||
rag.forceMove(src)
|
||||
flags &= ~OPENCONTAINER
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/remove_rag(mob/user)
|
||||
if(!rag) return
|
||||
user.put_in_hands(rag)
|
||||
rag = null
|
||||
flags |= (initial(flags) & OPENCONTAINER)
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/open(mob/user)
|
||||
if(rag) return
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/update_icon()
|
||||
underlays.Cut()
|
||||
if(rag)
|
||||
var/underlay_image = image(icon='icons/obj/drinks.dmi', icon_state=rag.on_fire? "[rag_underlay]_lit" : rag_underlay)
|
||||
underlays += underlay_image
|
||||
set_light(rag.light_range, rag.light_power, rag.light_color)
|
||||
else
|
||||
set_light(0)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/apply_hit_effect(mob/living/target, mob/living/user, var/hit_zone)
|
||||
var/blocked = ..()
|
||||
|
||||
if(user.a_intent != I_HURT)
|
||||
return
|
||||
if(!smash_check(1))
|
||||
return //won't always break on the first hit
|
||||
|
||||
// You are going to knock someone out for longer if they are not wearing a helmet.
|
||||
var/weaken_duration = 0
|
||||
if(blocked < 100)
|
||||
weaken_duration = smash_duration + min(0, force - target.getarmor(hit_zone, "melee") + 10)
|
||||
|
||||
if(hit_zone == "head" && istype(target, /mob/living/carbon/))
|
||||
user.visible_message("<span class='danger'>\The [user] smashes [src] over [target]'s head!</span>")
|
||||
if(weaken_duration)
|
||||
target.apply_effect(min(weaken_duration, 5), WEAKEN, blocked) // Never weaken more than a flash!
|
||||
else
|
||||
user.visible_message("<span class='danger'>\The [user] smashes [src] into [target]!</span>")
|
||||
|
||||
//The reagents in the bottle splash all over the target, thanks for the idea Nodrak
|
||||
if(reagents)
|
||||
user.visible_message("<span class='notice'>The contents of \the [src] splash all over [target]!</span>")
|
||||
reagents.splash(target, reagents.total_volume)
|
||||
|
||||
//Finally, smash the bottle. This kills (qdel) the bottle.
|
||||
var/obj/item/weapon/broken_bottle/B = smash(target.loc, target)
|
||||
user.put_in_active_hand(B)
|
||||
|
||||
//Keeping this here for now, I'll ask if I should keep it here.
|
||||
/obj/item/weapon/broken_bottle
|
||||
name = "Broken Bottle"
|
||||
desc = "A bottle with a sharp broken bottom."
|
||||
icon = 'icons/obj/drinks.dmi'
|
||||
icon_state = "broken_bottle"
|
||||
force = 10
|
||||
throwforce = 5
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
item_state = "beer"
|
||||
attack_verb = list("stabbed", "slashed", "attacked")
|
||||
sharp = 1
|
||||
edge = 0
|
||||
var/icon/broken_outline = icon('icons/obj/drinks.dmi', "broken")
|
||||
|
||||
/obj/item/weapon/broken_bottle/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/gin
|
||||
name = "Griffeater Gin"
|
||||
desc = "A bottle of high quality gin, produced in Alpha Centauri."
|
||||
icon_state = "ginbottle"
|
||||
center_of_mass = list("x"=16, "y"=4)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/gin/New()
|
||||
..()
|
||||
reagents.add_reagent("gin", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey
|
||||
name = "Uncle Git's Special Reserve"
|
||||
desc = "A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter."
|
||||
icon_state = "whiskeybottle"
|
||||
center_of_mass = list("x"=16, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey/New()
|
||||
..()
|
||||
reagents.add_reagent("whiskey", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey
|
||||
name = "Special Blend Whiskey"
|
||||
desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything."
|
||||
icon_state = "whiskeybottle2"
|
||||
center_of_mass = list("x"=16, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey/New()
|
||||
..()
|
||||
reagents.add_reagent("specialwhiskey", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka
|
||||
name = "Tunguska Triple Distilled"
|
||||
desc = "Aah, vodka. Prime choice of drink and fuel by Russians worldwide."
|
||||
icon_state = "vodkabottle"
|
||||
center_of_mass = list("x"=17, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/New()
|
||||
..()
|
||||
reagents.add_reagent("vodka", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla
|
||||
name = "Caccavo Guaranteed Quality Tequilla"
|
||||
desc = "Made from premium petroleum distillates, pure thalidomide and other fine quality ingredients!"
|
||||
icon_state = "tequillabottle"
|
||||
center_of_mass = list("x"=16, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla/New()
|
||||
..()
|
||||
reagents.add_reagent("tequilla", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing
|
||||
name = "Bottle of Nothing"
|
||||
desc = "A bottle filled with nothing"
|
||||
icon_state = "bottleofnothing"
|
||||
center_of_mass = list("x"=17, "y"=5)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing/New()
|
||||
..()
|
||||
reagents.add_reagent("nothing", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/patron
|
||||
name = "Wrapp Artiste Patron"
|
||||
desc = "Silver laced tequilla, served in space night clubs across the galaxy."
|
||||
icon_state = "patronbottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/patron/New()
|
||||
..()
|
||||
reagents.add_reagent("patron", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/rum
|
||||
name = "Captain Pete's Cuban Spiced Rum"
|
||||
desc = "This isn't just rum, oh no. It's practically Cuba in a bottle."
|
||||
icon_state = "rumbottle"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/rum/New()
|
||||
..()
|
||||
reagents.add_reagent("rum", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater
|
||||
name = "Flask of Holy Water"
|
||||
desc = "A flask of the chaplain's holy water."
|
||||
icon_state = "holyflask"
|
||||
center_of_mass = list("x"=17, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater/New()
|
||||
..()
|
||||
reagents.add_reagent("holywater", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth
|
||||
name = "Goldeneye Vermouth"
|
||||
desc = "Sweet, sweet dryness~"
|
||||
icon_state = "vermouthbottle"
|
||||
center_of_mass = list("x"=17, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth/New()
|
||||
..()
|
||||
reagents.add_reagent("vermouth", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua
|
||||
name = "Robert Robust's Coffee Liqueur"
|
||||
desc = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936."
|
||||
icon_state = "kahluabottle"
|
||||
center_of_mass = list("x"=17, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua/New()
|
||||
..()
|
||||
reagents.add_reagent("kahlua", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager
|
||||
name = "College Girl Goldschlager"
|
||||
desc = "Because they are the only ones who will drink 100 proof cinnamon schnapps."
|
||||
icon_state = "goldschlagerbottle"
|
||||
center_of_mass = list("x"=15, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager/New()
|
||||
..()
|
||||
reagents.add_reagent("goldschlager", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac
|
||||
name = "Chateau De Baton Premium Cognac"
|
||||
desc = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing."
|
||||
icon_state = "cognacbottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac/New()
|
||||
..()
|
||||
reagents.add_reagent("cognac", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/wine
|
||||
name = "Doublebeard Bearded Special Wine"
|
||||
desc = "Cheap cooking wine pretending to be drinkable."
|
||||
icon_state = "winebottle"
|
||||
center_of_mass = list("x"=16, "y"=4)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/wine/New()
|
||||
..()
|
||||
reagents.add_reagent("wine", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe
|
||||
name = "Jailbreaker Verte"
|
||||
desc = "One sip of this and you just know you're gonna have a good time."
|
||||
icon_state = "absinthebottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe/New()
|
||||
..()
|
||||
reagents.add_reagent("absinthe", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor
|
||||
name = "Emeraldine Melon Liquor"
|
||||
desc = "A bottle of 46 proof Emeraldine Melon Liquor. Sweet and light."
|
||||
icon_state = "alco-green" //Placeholder.
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor/New()
|
||||
..()
|
||||
reagents.add_reagent("melonliquor", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao
|
||||
name = "Miss Blue Curacao"
|
||||
desc = "A fruity, exceptionally azure drink. Does not allow the imbiber to use the fifth magic."
|
||||
icon_state = "alco-blue" //Placeholder.
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao/New()
|
||||
..()
|
||||
reagents.add_reagent("bluecuracao", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine
|
||||
name = "Briar Rose Grenadine Syrup"
|
||||
desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks."
|
||||
icon_state = "grenadinebottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine/New()
|
||||
..()
|
||||
reagents.add_reagent("grenadine", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cola
|
||||
name = "\improper Space Cola"
|
||||
desc = "Cola. in space"
|
||||
icon_state = "colabottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cola/New()
|
||||
..()
|
||||
reagents.add_reagent("cola", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up
|
||||
name = "\improper Space-Up"
|
||||
desc = "Tastes like a hull breach in your mouth."
|
||||
icon_state = "space-up_bottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up/New()
|
||||
..()
|
||||
reagents.add_reagent("space_up", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind
|
||||
name = "\improper Space Mountain Wind"
|
||||
desc = "Blows right through you like a space wind."
|
||||
icon_state = "space_mountain_wind_bottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind/New()
|
||||
..()
|
||||
reagents.add_reagent("spacemountainwind", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine
|
||||
name = "Warlock's Velvet"
|
||||
desc = "What a delightful packaging for a surely high quality wine! The vintage must be amazing!"
|
||||
icon_state = "pwinebottle"
|
||||
center_of_mass = list("x"=16, "y"=4)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine/New()
|
||||
..()
|
||||
reagents.add_reagent("pwine", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/redeemersbrew
|
||||
name = "Redeemer's Brew"
|
||||
desc = "Just opening the top of this bottle makes you feel a bit tipsy. Not for the faint of heart."
|
||||
icon_state = "redeemersbrew"
|
||||
center_of_mass = list("x"=16, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/redeemersbrew/New()
|
||||
..()
|
||||
reagents.add_reagent("unathiliquor", 100)
|
||||
|
||||
//////////////////////////JUICES AND STUFF ///////////////////////
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice
|
||||
name = "Orange Juice"
|
||||
desc = "Full of vitamins and deliciousness!"
|
||||
icon_state = "orangejuice"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice/New()
|
||||
..()
|
||||
reagents.add_reagent("orangejuice", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice
|
||||
name = "Apple Juice"
|
||||
desc = "Squeezed, pressed and ground to perfection!"
|
||||
icon_state = "applejuice"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice/New()
|
||||
..()
|
||||
reagents.add_reagent("applejuice", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/milk
|
||||
name = "Large Milk Carton"
|
||||
desc = "It's milk. This carton's large enough to serve your biggest milk drinkers."
|
||||
icon_state = "milk"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/milk/New()
|
||||
..()
|
||||
reagents.add_reagent("milk", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cream
|
||||
name = "Milk Cream"
|
||||
desc = "It's cream. Made from milk. What else did you think you'd find in there?"
|
||||
icon_state = "cream"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cream/New()
|
||||
..()
|
||||
reagents.add_reagent("cream", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice
|
||||
name = "Tomato Juice"
|
||||
desc = "Well, at least it LOOKS like tomato juice. You can't tell with all that redness."
|
||||
icon_state = "tomatojuice"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice/New()
|
||||
..()
|
||||
reagents.add_reagent("tomatojuice", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice
|
||||
name = "Lime Juice"
|
||||
desc = "Sweet-sour goodness."
|
||||
icon_state = "limejuice"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice/New()
|
||||
..()
|
||||
reagents.add_reagent("limejuice", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice
|
||||
name = "Lemon Juice"
|
||||
desc = "Sweet-sour goodness. Minus the sweet."
|
||||
icon_state = "lemonjuice"
|
||||
item_state = "carton"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
isGlass = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice/New()
|
||||
..()
|
||||
reagents.add_reagent("lemonjuice", 100)
|
||||
|
||||
//Small bottles
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/small
|
||||
volume = 50
|
||||
smash_duration = 1
|
||||
flags = 0 //starts closed
|
||||
rag_underlay = "rag_small"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer
|
||||
name = "space beer"
|
||||
desc = "Contains only water, malt and hops."
|
||||
icon_state = "beer"
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/New()
|
||||
..()
|
||||
reagents.add_reagent("beer", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale
|
||||
name = "\improper Magm-Ale"
|
||||
desc = "A true dorf's drink of choice."
|
||||
icon_state = "alebottle"
|
||||
item_state = "beer"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale/New()
|
||||
..()
|
||||
reagents.add_reagent("ale", 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/sake
|
||||
name = "Mono-No-Aware Luxury Sake"
|
||||
desc = "Dry alcohol made from rice, a favorite of businessmen."
|
||||
icon_state = "sakebottle"
|
||||
center_of_mass = list("x"=16, "y"=3)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/sake/New()
|
||||
..()
|
||||
reagents.add_reagent("sake", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/champagne
|
||||
name = "Gilthari Luxury Champagne"
|
||||
desc = "For those special occassions."
|
||||
icon_state = "champagne"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/champagne/New()
|
||||
..()
|
||||
reagents.add_reagent("champagne", 100)
|
||||
@@ -1,39 +0,0 @@
|
||||
/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)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cup/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)
|
||||
|
||||
else
|
||||
icon_state = "cup_empty"
|
||||
name = "coffee cup"
|
||||
desc = "The container of oriental luxuries."
|
||||
center_of_mass = list("x"=16, "y"=16)
|
||||
return
|
||||
@@ -1,178 +0,0 @@
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass
|
||||
name = "glass"
|
||||
desc = "Your standard drinking glass."
|
||||
icon_state = "glass_empty"
|
||||
amount_per_transfer_from_this = 5
|
||||
volume = 30
|
||||
unacidable = 1 //glass
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
matter = list("glass" = 500)
|
||||
|
||||
on_reagent_change()
|
||||
/*if(reagents.reagent_list.len > 1 )
|
||||
icon_state = "glass_brown"
|
||||
name = "Glass of Hooch"
|
||||
desc = "Two or more drinks, mixed together."*/
|
||||
/*else if(reagents.reagent_list.len == 1)
|
||||
for(var/datum/reagent/R in reagents.reagent_list)
|
||||
switch(R.id)*/
|
||||
if (reagents.reagent_list.len > 0)
|
||||
var/datum/reagent/R = reagents.get_master_reagent()
|
||||
|
||||
if(R.glass_icon_state)
|
||||
icon_state = R.glass_icon_state
|
||||
else
|
||||
icon_state = "glass_brown"
|
||||
|
||||
if(R.glass_name)
|
||||
name = R.glass_name
|
||||
else
|
||||
name = "Glass of.. what?"
|
||||
|
||||
if(R.glass_desc)
|
||||
desc = R.glass_desc
|
||||
else
|
||||
desc = "You can't really tell what this is."
|
||||
|
||||
if(R.glass_center_of_mass)
|
||||
center_of_mass = R.glass_center_of_mass
|
||||
else
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
if(R.price_tag)
|
||||
price_tag = R.price_tag
|
||||
else
|
||||
price_tag = null
|
||||
else
|
||||
icon_state = "glass_empty"
|
||||
name = "glass"
|
||||
desc = "Your standard drinking glass."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
return
|
||||
|
||||
/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
|
||||
|
||||
// for /obj/machinery/vending/sovietsoda
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/soda
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("sodawater", 50)
|
||||
on_reagent_change()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/cola
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("cola", 50)
|
||||
on_reagent_change()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass
|
||||
name = "shot glass"
|
||||
desc = "No glasses were shot in the making of this glass."
|
||||
icon_state = "shotglass"
|
||||
amount_per_transfer_from_this = 10
|
||||
volume = 10
|
||||
matter = list("glass" = 175)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/on_reagent_change()
|
||||
overlays.Cut()
|
||||
|
||||
if(reagents.total_volume)
|
||||
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]1")
|
||||
|
||||
switch(reagents.total_volume)
|
||||
if(0 to 3) filling.icon_state = "[icon_state]1"
|
||||
if(4 to 7) filling.icon_state = "[icon_state]5"
|
||||
if(8 to INFINITY) filling.icon_state = "[icon_state]12"
|
||||
|
||||
filling.color += reagents.get_color()
|
||||
overlays += filling
|
||||
name = "shot glass of " + reagents.get_master_reagent_name() //No matter what, the glass will tell you the reagent's name. Might be too abusable in the future.
|
||||
else
|
||||
name = "shot glass"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask
|
||||
name = "fitness shaker"
|
||||
desc = "Big enough to contain enough protein to get perfectly swole. Don't mind the bits."
|
||||
icon_state = "fitness-cup_black"
|
||||
volume = 100
|
||||
matter = list("plastic" = 2000)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/New()
|
||||
..()
|
||||
icon_state = pick("fitness-cup_black", "fitness-cup_red", "fitness-cup_black")
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/on_reagent_change()
|
||||
overlays.Cut()
|
||||
|
||||
if(reagents.total_volume)
|
||||
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "fitness-cup10")
|
||||
|
||||
switch(reagents.total_volume)
|
||||
if(0 to 10) filling.icon_state = "fitness-cup10"
|
||||
if(11 to 20) filling.icon_state = "fitness-cup20"
|
||||
if(21 to 29) filling.icon_state = "fitness-cup30"
|
||||
if(30 to 39) filling.icon_state = "fitness-cup40"
|
||||
if(40 to 49) filling.icon_state = "fitness-cup50"
|
||||
if(50 to 59) filling.icon_state = "fitness-cup60"
|
||||
if(60 to 69) filling.icon_state = "fitness-cup70"
|
||||
if(70 to 79) filling.icon_state = "fitness-cup80"
|
||||
if(80 to 89) filling.icon_state = "fitness-cup90"
|
||||
if(90 to INFINITY) filling.icon_state = "fitness-cup100"
|
||||
|
||||
filling.color += reagents.get_color()
|
||||
overlays += filling
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake
|
||||
name = "protein shake"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake/New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 30)
|
||||
reagents.add_reagent("iron", 10)
|
||||
reagents.add_reagent("protein", 15)
|
||||
reagents.add_reagent("water", 45)
|
||||
on_reagent_change()
|
||||
@@ -1,25 +0,0 @@
|
||||
///jar
|
||||
/obj/item/weapon/reagent_containers/food/drinks/jar
|
||||
name = "empty jar"
|
||||
desc = "A jar. You're not sure what it's supposed to hold."
|
||||
icon_state = "jar"
|
||||
item_state = "beaker"
|
||||
center_of_mass = list("x"=15, "y"=8)
|
||||
unacidable = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/jar/on_reagent_change()
|
||||
if (reagents.reagent_list.len > 0)
|
||||
switch(reagents.get_master_reagent_id())
|
||||
if("slime")
|
||||
icon_state = "jar_slime"
|
||||
name = "slime jam"
|
||||
desc = "A jar of slime jam. Delicious!"
|
||||
else
|
||||
icon_state ="jar_what"
|
||||
name = "jar of something"
|
||||
desc = "You can't really tell what this is."
|
||||
else
|
||||
icon_state = "jar"
|
||||
name = "empty jar"
|
||||
desc = "A jar. You're not sure what it's supposed to hold."
|
||||
return
|
||||
@@ -1,120 +0,0 @@
|
||||
var/list/lunchables_lunches_ = list(/obj/item/weapon/reagent_containers/food/snacks/sandwich,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/meatbread/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/tofubread/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/margherita/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tastybread,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/liquidfood,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/cherry,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tossedsalad)
|
||||
|
||||
var/list/lunchables_snacks_ = list(/obj/item/weapon/reagent_containers/food/snacks/donut/jelly,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/muffin,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/popcorn,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sosjerky,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/unajerky,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/no_raisin,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/poppypretzel,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/carrotfries,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/candiedapple,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/applepie,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cherrypie,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/appletart,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/plaincake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/orangecake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/limecake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/watermelonslice,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/applecake/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie/filled,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks)
|
||||
|
||||
var/list/lunchables_drinks_ = list(/obj/item/weapon/reagent_containers/food/drinks/cans/cola,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_mountain_wind,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/starkist,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_up,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/lemon_lime,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/iced_tea,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/tonic,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/sodawater)
|
||||
|
||||
// This default list is a bit different, it contains items we don't want
|
||||
var/list/lunchables_drink_reagents_ = list(/datum/reagent/drink/nothing,
|
||||
/datum/reagent/drink/doctor_delight,
|
||||
/datum/reagent/drink/dry_ramen,
|
||||
/datum/reagent/drink/hell_ramen,
|
||||
/datum/reagent/drink/hot_ramen,
|
||||
/datum/reagent/drink/soda/nuka_cola)
|
||||
|
||||
|
||||
// This default list is a bit different, it contains items we don't want
|
||||
var/list/lunchables_ethanol_reagents_ = list(/datum/reagent/ethanol/acid_spit,
|
||||
/datum/reagent/ethanol/atomicbomb,
|
||||
/datum/reagent/ethanol/beepsky_smash,
|
||||
/datum/reagent/ethanol/coffee,
|
||||
/datum/reagent/ethanol/hippies_delight,
|
||||
/datum/reagent/ethanol/hooch,
|
||||
/datum/reagent/ethanol/thirteenloko,
|
||||
/datum/reagent/ethanol/manhattan_proj,
|
||||
/datum/reagent/ethanol/neurotoxin,
|
||||
/datum/reagent/ethanol/pwine,
|
||||
/datum/reagent/ethanol/threemileisland,
|
||||
/datum/reagent/ethanol/toxins_special,
|
||||
/datum/reagent/ethanol/voxdelight,
|
||||
/datum/reagent/ethanol/soemmerfire,
|
||||
/datum/reagent/ethanol/slimeshot)
|
||||
|
||||
/proc/lunchables_lunches()
|
||||
if(!(lunchables_lunches_[lunchables_lunches_[1]]))
|
||||
lunchables_lunches_ = init_lunchable_list(lunchables_lunches_)
|
||||
return lunchables_lunches_
|
||||
|
||||
/proc/lunchables_snacks()
|
||||
if(!(lunchables_snacks_[lunchables_snacks_[1]]))
|
||||
lunchables_snacks_ = init_lunchable_list(lunchables_snacks_)
|
||||
return lunchables_snacks_
|
||||
|
||||
/proc/lunchables_drinks()
|
||||
if(!(lunchables_drinks_[lunchables_drinks_[1]]))
|
||||
lunchables_drinks_ = init_lunchable_list(lunchables_drinks_)
|
||||
return lunchables_drinks_
|
||||
|
||||
/proc/lunchables_drink_reagents()
|
||||
if(!(lunchables_drink_reagents_[lunchables_drink_reagents_[1]]))
|
||||
lunchables_drink_reagents_ = init_lunchable_reagent_list(lunchables_drink_reagents_, /datum/reagent/drink)
|
||||
return lunchables_drink_reagents_
|
||||
|
||||
/proc/lunchables_ethanol_reagents()
|
||||
if(!(lunchables_ethanol_reagents_[lunchables_ethanol_reagents_[1]]))
|
||||
lunchables_ethanol_reagents_ = init_lunchable_reagent_list(lunchables_ethanol_reagents_, /datum/reagent/ethanol)
|
||||
return lunchables_ethanol_reagents_
|
||||
|
||||
/proc/init_lunchable_list(var/list/lunches)
|
||||
. = list()
|
||||
for(var/lunch in lunches)
|
||||
var/obj/O = lunch
|
||||
.[initial(O.name)] = lunch
|
||||
return sortAssoc(.)
|
||||
|
||||
/proc/init_lunchable_reagent_list(var/list/banned_reagents, var/reagent_types)
|
||||
. = list()
|
||||
for(var/reagent_type in subtypesof(reagent_types))
|
||||
if(reagent_type in banned_reagents)
|
||||
continue
|
||||
var/datum/reagent/reagent = reagent_type
|
||||
.[initial(reagent.name)] = initial(reagent.id)
|
||||
return sortAssoc(.)
|
||||
@@ -1,101 +0,0 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slice/bread/attackby(obj/item/W as obj, mob/user as mob)
|
||||
|
||||
if(istype(W,/obj/item/weapon/material/shard) || istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/csandwich/S = new(get_turf(src))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich
|
||||
name = "sandwich"
|
||||
desc = "The best thing since sliced bread."
|
||||
icon_state = "breadslice"
|
||||
trash = /obj/item/trash/plate
|
||||
bitesize = 2
|
||||
|
||||
var/list/ingredients = list()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/attackby(obj/item/W as obj, mob/user as mob)
|
||||
|
||||
var/sandwich_limit = 4
|
||||
for(var/obj/item/O in ingredients)
|
||||
if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/slice/bread))
|
||||
sandwich_limit += 4
|
||||
|
||||
if(istype(W,/obj/item/weapon/material/shard))
|
||||
user << "<font color='blue'>You hide [W] in \the [src].</font>"
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
update()
|
||||
return
|
||||
else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
if(src.contents.len > sandwich_limit)
|
||||
user << "<font color='red'>If you put anything else on \the [src] it's going to collapse.</font>"
|
||||
return
|
||||
user << "<font color='blue'>You layer [W] over \the [src].</font>"
|
||||
var/obj/item/weapon/reagent_containers/F = W
|
||||
F.reagents.trans_to_obj(src, F.reagents.total_volume)
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
ingredients += W
|
||||
update()
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/proc/update()
|
||||
var/fullname = "" //We need to build this from the contents of the var.
|
||||
var/i = 0
|
||||
|
||||
overlays.Cut()
|
||||
|
||||
for(var/obj/item/weapon/reagent_containers/food/snacks/O in ingredients)
|
||||
|
||||
i++
|
||||
if(i == 1)
|
||||
fullname += "[O.name]"
|
||||
else if(i == ingredients.len)
|
||||
fullname += " and [O.name]"
|
||||
else
|
||||
fullname += ", [O.name]"
|
||||
|
||||
var/image/I = new(src.icon, "sandwich_filling")
|
||||
I.color = O.filling_color
|
||||
I.pixel_x = pick(list(-1,0,1))
|
||||
I.pixel_y = (i*2)+1
|
||||
overlays += I
|
||||
|
||||
var/image/T = new(src.icon, "sandwich_top")
|
||||
T.pixel_x = pick(list(-1,0,1))
|
||||
T.pixel_y = (ingredients.len * 2)+1
|
||||
overlays += T
|
||||
|
||||
name = lowertext("[fullname] sandwich")
|
||||
if(length(name) > 80) name = "[pick(list("absurd","colossal","enormous","ridiculous"))] sandwich"
|
||||
w_class = n_ceil(Clamp((ingredients.len/2),2,4))
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/Destroy()
|
||||
for(var/obj/item/O in ingredients)
|
||||
qdel(O)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/examine(mob/user)
|
||||
..(user)
|
||||
var/obj/item/O = pick(contents)
|
||||
user << "<font color='blue'>You think you can see [O.name] in there.</font>"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/attack(mob/M as mob, mob/user as mob, def_zone)
|
||||
|
||||
var/obj/item/shard
|
||||
for(var/obj/item/O in contents)
|
||||
if(istype(O,/obj/item/weapon/material/shard))
|
||||
shard = O
|
||||
break
|
||||
|
||||
var/mob/living/H
|
||||
if(istype(M,/mob/living))
|
||||
H = M
|
||||
|
||||
if(H && shard && M == user) //This needs a check for feeding the food to other people, but that could be abusable.
|
||||
H << "<font color='red'>You lacerate your mouth on a [shard.name] in the sandwich!</font>"
|
||||
H.adjustBruteLoss(5) //TODO: Target head if human. //This TODO has been here for 4 years.
|
||||
..()
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,37 +0,0 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat
|
||||
name = "meat"
|
||||
desc = "A slab of meat."
|
||||
icon_state = "meat"
|
||||
health = 180
|
||||
filling_color = "#FF1C1C"
|
||||
center_of_mass = list("x"=16, "y"=14)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/New()
|
||||
..()
|
||||
reagents.add_reagent("protein", 9)
|
||||
src.bitesize = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/material/knife))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
|
||||
user << "You cut the meat into thin strips."
|
||||
qdel(src)
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh
|
||||
name = "synthetic meat"
|
||||
desc = "A synthetic slab of flesh."
|
||||
|
||||
// Seperate definitions because some food likes to know if it's human.
|
||||
// TODO: rewrite kitchen code to check a var on the meat item so we can remove
|
||||
// all these sybtypes.
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/human
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/monkey
|
||||
//same as plain meat
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/corgi
|
||||
name = "Corgi meat"
|
||||
desc = "Tastes like... well, you know."
|
||||
@@ -1,175 +0,0 @@
|
||||
|
||||
//Not to be confused with /obj/item/weapon/reagent_containers/food/drinks/bottle
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle
|
||||
name = "bottle"
|
||||
desc = "A small bottle."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = null
|
||||
item_state = "atoxinbottle"
|
||||
amount_per_transfer_from_this = 10
|
||||
possible_transfer_amounts = list(5,10,15,25,30,60)
|
||||
flags = 0
|
||||
volume = 60
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/on_reagent_change()
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/pickup(mob/user)
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/dropped(mob/user)
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/attack_hand()
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/New()
|
||||
..()
|
||||
if(!icon_state)
|
||||
icon_state = "bottle-[rand(1,4)]"
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/update_icon()
|
||||
overlays.Cut()
|
||||
|
||||
if(reagents.total_volume && (icon_state == "bottle-1" || icon_state == "bottle-2" || icon_state == "bottle-3" || icon_state == "bottle-4"))
|
||||
var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]10")
|
||||
|
||||
var/percent = round((reagents.total_volume / volume) * 100)
|
||||
switch(percent)
|
||||
if(0 to 9) filling.icon_state = "[icon_state]--10"
|
||||
if(10 to 24) filling.icon_state = "[icon_state]-10"
|
||||
if(25 to 49) filling.icon_state = "[icon_state]-25"
|
||||
if(50 to 74) filling.icon_state = "[icon_state]-50"
|
||||
if(75 to 79) filling.icon_state = "[icon_state]-75"
|
||||
if(80 to 90) filling.icon_state = "[icon_state]-80"
|
||||
if(91 to INFINITY) filling.icon_state = "[icon_state]-100"
|
||||
|
||||
filling.color = reagents.get_color()
|
||||
overlays += filling
|
||||
|
||||
if (!is_open_container())
|
||||
var/image/lid = image(icon, src, "lid_bottle")
|
||||
overlays += lid
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline
|
||||
name = "inaprovaline bottle"
|
||||
desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("inaprovaline" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/toxin
|
||||
name = "toxin bottle"
|
||||
desc = "A small bottle of toxins. Do not drink, it is poisonous."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-3"
|
||||
prefill = list("toxin" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/cyanide
|
||||
name = "cyanide bottle"
|
||||
desc = "A small bottle of cyanide. Bitter almonds?"
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-3"
|
||||
prefill = list("cyanide" = 30) //volume changed to match chloral
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/stoxin
|
||||
name = "soporific bottle"
|
||||
desc = "A small bottle of soporific. Just the fumes make you sleepy."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-3"
|
||||
prefill = list("stoxin" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate
|
||||
name = "chloral hydrate bottle"
|
||||
desc = "A small bottle of Choral Hydrate. Mickey's Favorite!"
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-3"
|
||||
prefill = list("chloralhydrate" = 30) //Intentionally low since it is so strong. Still enough to knock someone out.
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/antitoxin
|
||||
name = "dylovene bottle"
|
||||
desc = "A small bottle of dylovene. Counters poisons, and repairs damage. A wonder drug."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("anti_toxin" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/mutagen
|
||||
name = "unstable mutagen bottle"
|
||||
desc = "A small bottle of unstable mutagen. Randomly changes the DNA structure of whoever comes in contact."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-1"
|
||||
prefill = list("mutagen" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/ammonia
|
||||
name = "ammonia bottle"
|
||||
desc = "A small bottle."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-1"
|
||||
prefill = list("ammonia" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/eznutrient
|
||||
name = "\improper EZ NUtrient bottle"
|
||||
desc = "A small bottle."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("eznutrient" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/left4zed
|
||||
name = "\improper Left-4-Zed bottle"
|
||||
desc = "A small bottle."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("left4zed" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/robustharvest
|
||||
name = "\improper Robust Harvest"
|
||||
desc = "A small bottle."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("robustharvest" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/diethylamine
|
||||
name = "diethylamine bottle"
|
||||
desc = "A small bottle."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("diethylamine" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/pacid
|
||||
name = "polytrinic acid bottle"
|
||||
desc = "A small bottle. Contains a small amount of Polytrinic Acid"
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("pacid" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/adminordrazine
|
||||
name = "adminordrazine bottle"
|
||||
desc = "A small bottle. Contains the liquid essence of the gods."
|
||||
icon = 'icons/obj/drinks.dmi'
|
||||
icon_state = "holyflask"
|
||||
prefill = list("adminordrazine" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/capsaicin
|
||||
name = "capsaicin bottle"
|
||||
desc = "A small bottle. Contains hot sauce."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("capsaicin" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/frostoil
|
||||
name = "frost oil bottle"
|
||||
desc = "A small bottle. Contains cold sauce."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
prefill = list("frostoil" = 60)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/biomass
|
||||
name = "biomass bottle"
|
||||
desc = "A bottle of raw biomass! Gross!"
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-3"
|
||||
prefill = list("biomass" = 60)
|
||||
@@ -1,25 +0,0 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/robot
|
||||
amount_per_transfer_from_this = 10
|
||||
possible_transfer_amounts = list(5,10,15,25,30,50,100)
|
||||
flags = OPENCONTAINER
|
||||
volume = 60
|
||||
var/reagent = ""
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/robot/inaprovaline
|
||||
name = "internal inaprovaline bottle"
|
||||
desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
reagent = "inaprovaline"
|
||||
prefill = list("inaprovaline" = 60)
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/robot/antitoxin
|
||||
name = "internal anti-toxin bottle"
|
||||
desc = "A small bottle of Anti-toxins. Counters poisons, and repairs damage, a wonder drug."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle-4"
|
||||
reagent = "anti_toxin"
|
||||
prefill = list("anti_toxin" = 60)
|
||||
Reference in New Issue
Block a user