mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
CIVILLIAN OVERHAUL UNO: Chef and the Kitchen
Conflicts: baystation12.dme code/modules/reagents/reagent_containers/food/snacks.dm icons/obj/food.dmi icons/obj/kitchen.dmi
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
/obj/machinery/cerealmaker
|
||||
name = "cereal maker"
|
||||
desc = "Now with Dann O's available!"
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "cereal_off"
|
||||
layer = 2.9
|
||||
density = 1
|
||||
anchored = 1
|
||||
use_power = 1
|
||||
idle_power_usage = 5
|
||||
var/on = FALSE //Is it making cereal already?
|
||||
|
||||
/obj/machinery/cerealmaker/attackby(obj/item/I, mob/user)
|
||||
if(on)
|
||||
user << "<span class='notice'>[src] is already processing, please wait.</span>"
|
||||
return
|
||||
if(!istype(I, /obj/item/weapon/reagent_containers/food/snacks/))
|
||||
user << "<span class='warning'>Budget cuts won't let you put that in there.</span>"
|
||||
return
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/cereal/))
|
||||
user << "<span class='warning'>That isn't going to fit.</span>"
|
||||
return
|
||||
else
|
||||
user << "<span class='notice'>You put [I] into [src].</span>"
|
||||
on = TRUE
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
icon_state = "cereal_on"
|
||||
sleep(200)
|
||||
icon_state = "cereal_off"
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/cereal/S = new(get_turf(src))
|
||||
var/image/img = new(I.icon, I.icon_state)
|
||||
img.transform *= 0.7
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/))
|
||||
var/obj/item/weapon/reagent_containers/food = I
|
||||
food.reagents.trans_to(S, food.reagents.total_volume)
|
||||
S.overlays += img
|
||||
S.overlays += I.overlays
|
||||
S.name = "box of [I] cereal"
|
||||
playsound(loc, 'sound/machines/ding.ogg', 50, 1)
|
||||
on = FALSE
|
||||
qdel(I)
|
||||
|
||||
@@ -0,0 +1,371 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/breadslice/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/S = new(get_turf(user))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
/obj/item/weapon/reagent_containers/food/snacks/bun/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/burger/S = new(get_turf(user))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/pizza/S = new(get_turf(user))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti/attackby(obj/item/W as obj, mob/user as mob)
|
||||
|
||||
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/pasta/S = new(get_turf(user))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/trash/plate/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/fullycustom/S = new(get_turf(user))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/trash/bowl
|
||||
name = "bowl"
|
||||
desc = "An empty bowl. Put some food in it to start making a soup."
|
||||
icon = 'icons/obj/food.dmi'
|
||||
icon_state = "soup"
|
||||
|
||||
/obj/item/trash/bowl/attackby(obj/item/W as obj, mob/user as mob)
|
||||
|
||||
if(istype(W,/obj/item/weapon/shard) || istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/soup/S = new(get_turf(user))
|
||||
S.attackby(W,user)
|
||||
qdel(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable
|
||||
name = "sandwich"
|
||||
desc = "A sandwich! A timeless classic."
|
||||
icon_state = "breadslice"
|
||||
var/baseicon = "sandwich"
|
||||
var/basename = "sandwich"
|
||||
var/top = 1 //Do we have a top?
|
||||
var/add_overlays = 1 //Do we stack?
|
||||
// var/offsetstuff = 1 //Do we offset the overlays?
|
||||
var/sandwich_limit = 10
|
||||
var/fullycustom = 0
|
||||
trash = /obj/item/trash/plate
|
||||
bitesize = 2
|
||||
|
||||
var/list/ingredients = list()
|
||||
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 8)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/pizza
|
||||
name = "personal pizza"
|
||||
desc = "A personalized pan pizza meant for only one person."
|
||||
icon_state = "personal_pizza"
|
||||
baseicon = "personal_pizza"
|
||||
basename = "personal pizza"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/pasta
|
||||
name = "spagetti"
|
||||
desc = "Noodles. With stuff. Delicious."
|
||||
icon_state = "pasta_bot"
|
||||
baseicon = "pasta_bot"
|
||||
basename = "spagetti"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/bread
|
||||
name = "bread"
|
||||
desc = "Tasty bread."
|
||||
icon_state = "breadcustom"
|
||||
baseicon = "breadcustom"
|
||||
basename = "bread"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/pie
|
||||
name = "pie"
|
||||
desc = "Tasty pie."
|
||||
icon_state = "piecustom"
|
||||
baseicon = "piecustom"
|
||||
basename = "pie"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/cake
|
||||
name = "cake"
|
||||
desc = "A popular band."
|
||||
icon_state = "cakecustom"
|
||||
baseicon = "cakecustom"
|
||||
basename = "cake"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/jelly
|
||||
name = "jelly"
|
||||
desc = "Totally jelly."
|
||||
icon_state = "jellycustom"
|
||||
baseicon = "jellycustom"
|
||||
basename = "jelly"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/donkpocket
|
||||
name = "donk pocket"
|
||||
desc = "You wanna put a bangin-Oh nevermind."
|
||||
icon_state = "donkcustom"
|
||||
baseicon = "donkcustom"
|
||||
basename = "donk pocket"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/kebab
|
||||
name = "kebab"
|
||||
desc = "Kebab or Kabab?"
|
||||
icon_state = "kababcustom"
|
||||
baseicon = "kababcustom"
|
||||
basename = "kebab"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/salad
|
||||
name = "salad"
|
||||
desc = "Very tasty."
|
||||
icon_state = "saladcustom"
|
||||
baseicon = "saladcustom"
|
||||
basename = "salad"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/waffles
|
||||
name = "waffles"
|
||||
desc = "Made with love."
|
||||
icon_state = "wafflecustom"
|
||||
baseicon = "wafflecustom"
|
||||
basename = "waffles"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/cookie
|
||||
name = "cookie"
|
||||
desc = "COOKIE!!1!"
|
||||
icon_state = "cookiecustom"
|
||||
baseicon = "cookiecustom"
|
||||
basename = "cookie"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/cotton
|
||||
name = "flavored cotton candy"
|
||||
desc = "Who can take a sunrise, sprinkle it with dew,"
|
||||
icon_state = "cottoncandycustom"
|
||||
baseicon = "cottoncandycustom"
|
||||
basename = "flavored cotton candy"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/gummybear
|
||||
name = "flavored giant gummy bear"
|
||||
desc = "Cover it in chocolate and a miracle or two,"
|
||||
icon_state = "gummybearcustom"
|
||||
baseicon = "gummybearcustom"
|
||||
basename = "flavored giant gummy bear"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/gummyworm
|
||||
name = "flavored giant gummy worm"
|
||||
desc = "The Candy Man can 'cause he mixes it with love,"
|
||||
icon_state = "gummywormcustom"
|
||||
baseicon = "gummywormcustom"
|
||||
basename = "flavored giant gummy worm"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/jellybean
|
||||
name = "flavored giant jelly bean"
|
||||
desc = "And makes the world taste good."
|
||||
icon_state = "jellybeancustom"
|
||||
baseicon = "jellybeancustom"
|
||||
basename = "flavored giant jelly bean"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/jawbreaker
|
||||
name = "flavored jawbreaker"
|
||||
desc = "Who can take a rainbow, Wrap it in a sigh,"
|
||||
icon_state = "jawbreakercustom"
|
||||
baseicon = "jawbreakercustom"
|
||||
basename = "flavored jawbreaker"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/candycane
|
||||
name = "flavored candy cane"
|
||||
desc = "Soak it in the sun and make strawberry-lemon pie,"
|
||||
icon_state = "candycanecustom"
|
||||
baseicon = "candycanecustom"
|
||||
basename = "flavored candy cane"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/gum
|
||||
name = "flavored gum"
|
||||
desc = "The Candy Man can 'cause he mixes it with love and makes the world taste good. And the world tastes good 'cause the Candy Man thinks it should..."
|
||||
icon_state = "gumcustom"
|
||||
baseicon = "gumcustom"
|
||||
basename = "flavored gum"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/donut
|
||||
name = "filled donut"
|
||||
desc = "Donut eat this!" // kill me
|
||||
icon_state = "donutcustom"
|
||||
baseicon = "donutcustom"
|
||||
basename = "filled donut"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/bar
|
||||
name = "flavored chocolate bar"
|
||||
desc = "Made in a factory downtown."
|
||||
icon_state = "barcustom"
|
||||
baseicon = "barcustom"
|
||||
basename = "flavored chocolate bar"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/sucker
|
||||
name = "flavored sucker"
|
||||
desc = "Suck suck suck."
|
||||
icon_state = "suckercustom"
|
||||
baseicon = "suckercustom"
|
||||
basename = "flavored sucker"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/cash
|
||||
name = "flavored chocolate cash"
|
||||
desc = "I got piles!"
|
||||
icon_state = "cashcustom"
|
||||
baseicon = "cashcustom"
|
||||
basename = "flavored cash"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/coin
|
||||
name = "flavored chocolate coin"
|
||||
desc = "Clink, clink, clink."
|
||||
icon_state = "coincustom"
|
||||
baseicon = "coincustom"
|
||||
basename = "flavored coin"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/fullycustom // In the event you fuckers find something I forgot to add a customizable food for.
|
||||
name = "on a plate"
|
||||
desc = "A unique dish."
|
||||
icon_state = "fullycustom"
|
||||
baseicon = "fullycustom"
|
||||
basename = "on a plate"
|
||||
add_overlays = 0
|
||||
top = 0
|
||||
sandwich_limit = 20
|
||||
fullycustom = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/soup
|
||||
name = "soup"
|
||||
desc = "A bowl with liquid and... stuff in it."
|
||||
icon_state = "soup"
|
||||
baseicon = "soup"
|
||||
basename = "soup"
|
||||
add_overlays = 0
|
||||
trash = /obj/item/trash/bowl
|
||||
top = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/burger
|
||||
name = "burger bun"
|
||||
desc = "A bun for a burger. Delicious."
|
||||
icon_state = "burger"
|
||||
baseicon = "burger"
|
||||
basename = "burger"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(src.contents.len > sandwich_limit)
|
||||
user << "<span class='warning'>If you put anything else in or on [src] it's going to make a mess.</span>"
|
||||
return
|
||||
else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks))
|
||||
user << "<span class='notice'> You add [W] to [src].</span>"
|
||||
var/obj/item/weapon/reagent_containers/F = W
|
||||
F.reagents.trans_to(src, F.reagents.total_volume)
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
ingredients += W
|
||||
update()
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/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]"
|
||||
|
||||
if(!fullycustom)
|
||||
var/image/I = new(src.icon, "[baseicon]_filling")
|
||||
if(istype(O, /obj/item/weapon/reagent_containers/food/snacks))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/food = O
|
||||
if(!food.filling_color == "#FFFFFF")
|
||||
I.color = food.filling_color
|
||||
else
|
||||
I.color = pick("#FF0000","#0000FF","#008000","#FFFF00")
|
||||
if(add_overlays)
|
||||
I.pixel_x = pick(list(-1,0,1))
|
||||
I.pixel_y = (i*2)+1
|
||||
overlays += I
|
||||
else
|
||||
var/image/F = new(O.icon, O.icon_state)
|
||||
F.pixel_x = pick(list(-1,0,1))
|
||||
F.pixel_y = pick(list(-1,0,1))
|
||||
overlays += F
|
||||
overlays += O.overlays
|
||||
|
||||
if(top)
|
||||
var/image/T = new(src.icon, "[baseicon]_top")
|
||||
T.pixel_x = pick(list(-1,0,1))
|
||||
T.pixel_y = (ingredients.len * 2)+1
|
||||
overlays += T
|
||||
|
||||
name = lowertext("[fullname] [basename]")
|
||||
if(length(name) > 80) name = "[pick(list("absurd","colossal","enormous","ridiculous","massive","oversized","cardiac-arresting","pipe-clogging","edible but sickening","sickening","gargantuan","mega","belly-burster","chest-burster"))] [basename]"
|
||||
w_class = n_ceil(Clamp((ingredients.len/2),1,3))
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/Del()
|
||||
for(var/obj/item/O in ingredients)
|
||||
del(O)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/customizable/examine()
|
||||
..()
|
||||
var/whatsinside = pick(ingredients)
|
||||
|
||||
usr << "<span class='notice'> You think you can see [whatsinside] in there.</span>"
|
||||
@@ -0,0 +1,62 @@
|
||||
/obj/machinery/deepfryer
|
||||
name = "deep fryer"
|
||||
desc = "Deep fried <i>everything</i>."
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "fryer_off"
|
||||
layer = 2.9
|
||||
density = 1
|
||||
anchored = 1
|
||||
use_power = 1
|
||||
idle_power_usage = 5
|
||||
var/on = FALSE //Is it deep frying already?
|
||||
var/obj/item/frying = null //What's being fried RIGHT NOW?
|
||||
|
||||
/obj/machinery/deepfryer/examine()
|
||||
..()
|
||||
if(frying)
|
||||
usr << "You can make out [frying] in the oil."
|
||||
|
||||
/obj/machinery/deepfryer/attackby(obj/item/I, mob/user)
|
||||
if(on)
|
||||
user << "<span class='notice'>[src] is still active!</span>"
|
||||
return
|
||||
if(!istype(I, /obj/item/weapon/reagent_containers/food/snacks/))
|
||||
user << "<span class='warning'>Budget cuts won't let you put that in there.</span>"
|
||||
return
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/deepfryholder))
|
||||
user << "<span class='userdanger'>You cannot doublefry.</span>"
|
||||
return
|
||||
else
|
||||
user << "<span class='notice'>You put [I] into [src].</span>"
|
||||
on = TRUE
|
||||
user.drop_item()
|
||||
frying = I
|
||||
frying.loc = src
|
||||
icon_state = "fryer_on"
|
||||
sleep(200)
|
||||
|
||||
if(frying && frying.loc == src)
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/deepfryholder/S = new(get_turf(src))
|
||||
if(istype(frying, /obj/item/weapon/reagent_containers/))
|
||||
var/obj/item/weapon/reagent_containers/food = frying
|
||||
food.reagents.trans_to(S, food.reagents.total_volume)
|
||||
S.color = "#FFAD33"
|
||||
S.icon = frying.icon
|
||||
S.overlays = I.overlays
|
||||
S.icon_state = frying.icon_state
|
||||
S.name = "deep fried [frying.name]"
|
||||
S.desc = I.desc
|
||||
frying.loc = S //this might be a bad idea.
|
||||
|
||||
icon_state = "fryer_off"
|
||||
on = FALSE
|
||||
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1)
|
||||
|
||||
|
||||
/obj/machinery/deepfryer/attack_hand(mob/user)
|
||||
if(on && frying)
|
||||
user << "<span class='notice'>You pull [frying] from [src]! It looks like you were just in time!</span>"
|
||||
user.put_in_hands(frying)
|
||||
frying = null
|
||||
return
|
||||
..()
|
||||
@@ -0,0 +1,51 @@
|
||||
/obj/machinery/foodgrill
|
||||
name = "grill"
|
||||
desc = "Backyard grilling, IN SPACE."
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "grill_off"
|
||||
layer = 2.9
|
||||
density = 1
|
||||
anchored = 1
|
||||
use_power = 1
|
||||
idle_power_usage = 5
|
||||
var/on = FALSE //Is it grilling food already?
|
||||
|
||||
/obj/machinery/foodgrill/attackby(obj/item/I, mob/user)
|
||||
if(on)
|
||||
user << "<span class='notice'>[src] is already processing, please wait.</span>"
|
||||
return
|
||||
if(istype(I, /obj/item/weapon/grab)||istype(I, /obj/item/tk_grab))
|
||||
user << "<span class='warning'>That isn't going to fit.</span>"
|
||||
return
|
||||
else
|
||||
user << "<span class='notice'>You put [I] onto [src].</span>"
|
||||
on = TRUE
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
icon_state = "grill_on"
|
||||
|
||||
var/image/img = new(I.icon, I.icon_state)
|
||||
img.pixel_y = 5
|
||||
overlays += img
|
||||
sleep(200)
|
||||
overlays.Cut()
|
||||
img.color = "#C28566"
|
||||
overlays += img
|
||||
sleep(200)
|
||||
overlays.Cut()
|
||||
img.color = "#A34719"
|
||||
overlays += img
|
||||
sleep(50)
|
||||
overlays.Cut()
|
||||
|
||||
on = FALSE
|
||||
icon_state = "grill_off"
|
||||
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/))
|
||||
var/obj/item/weapon/reagent_containers/food = I
|
||||
food.reagents.add_reagent("nutriment", 10)
|
||||
food.reagents.trans_to(I, food.reagents.total_volume)
|
||||
I.loc = get_turf(src)
|
||||
I.color = "#A34719"
|
||||
var/tempname = I.name
|
||||
I.name = "grilled [tempname]"
|
||||
@@ -0,0 +1,254 @@
|
||||
//ICE CREAM MACHINE
|
||||
//Code made by Sawu at Sawu-Station.
|
||||
|
||||
/obj/machinery/icemachine
|
||||
name = "\improper Cream-Master Deluxe"
|
||||
density = 1
|
||||
anchored = 1
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "icecream_vat"
|
||||
use_power = 1
|
||||
idle_power_usage = 20
|
||||
var/obj/item/weapon/reagent_containers/glass/beaker = null
|
||||
var/useramount = 15 //Last used amount
|
||||
|
||||
|
||||
/obj/machinery/icemachine/proc/generate_name(reagent_name)
|
||||
var/name_prefix = pick("Mr.","Mrs.","Super","Happy","Whippy")
|
||||
var/name_suffix = pick(" Whippy "," Slappy "," Creamy "," Dippy "," Swirly "," Swirl ")
|
||||
var/cone_name = null //Heart failure prevention.
|
||||
cone_name += name_prefix
|
||||
cone_name += name_suffix
|
||||
cone_name += "[reagent_name]"
|
||||
return cone_name
|
||||
|
||||
|
||||
/obj/machinery/icemachine/New()
|
||||
var/datum/reagents/R = new/datum/reagents(500)
|
||||
reagents = R
|
||||
R.my_atom = src
|
||||
|
||||
|
||||
/obj/machinery/icemachine/attackby(obj/item/I, mob/user)
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/glass))
|
||||
if(beaker)
|
||||
user << "<span class='notice'>A container is already inside [src].</span>"
|
||||
return
|
||||
beaker = I
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user << "<span class='notice'>You add [I] to [src]</span>"
|
||||
updateUsrDialog()
|
||||
return
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/icecream))
|
||||
if(!I.reagents.has_reagent("sprinkles"))
|
||||
if(I.reagents.total_volume > 29) I.reagents.remove_any(1)
|
||||
I.reagents.add_reagent("sprinkles",1)
|
||||
var/image/sprinkles = image('icons/obj/kitchen.dmi', src, "sprinkles")
|
||||
I.overlays += sprinkles
|
||||
I.name += " with sprinkles"
|
||||
I.desc += ". This also has sprinkles."
|
||||
else
|
||||
user << "<span class='notice'>This [I] already has sprinkles.</span>"
|
||||
|
||||
|
||||
/obj/machinery/icemachine/proc/validexchange(reag)
|
||||
if(reag == "sprinkles" | reag == "cola" | reag == "kahlua" | reag == "dr_gibb" | reag == "vodka" | reag == "space_up" | reag == "rum" | reag == "spacemountainwind" | reag == "gin" | reag == "cream" | reag == "water")
|
||||
return 1
|
||||
else
|
||||
if(reagents.total_volume < 500)
|
||||
usr << "<span class='notice'>[src] vibrates for a moment, apparently accepting the unknown liquid.</span>"
|
||||
playsound(loc, 'sound/machines/twobeep.ogg', 10, 1)
|
||||
return 1
|
||||
|
||||
|
||||
/obj/machinery/icemachine/Topic(href, href_list)
|
||||
if(..()) return
|
||||
|
||||
add_fingerprint(usr)
|
||||
usr.set_machine(src)
|
||||
|
||||
if(href_list["close"])
|
||||
usr << browse(null, "window=cream_master")
|
||||
usr.unset_machine()
|
||||
return
|
||||
|
||||
var/obj/item/weapon/reagent_containers/glass/A = null
|
||||
var/datum/reagents/R = null
|
||||
|
||||
if(beaker)
|
||||
A = beaker
|
||||
R = A.reagents
|
||||
|
||||
if(href_list["add"])
|
||||
if(href_list["amount"])
|
||||
var/id = href_list["add"]
|
||||
var/amount = text2num(href_list["amount"])
|
||||
if(validexchange(id))
|
||||
R.trans_id_to(src, id, amount)
|
||||
|
||||
else if(href_list["remove"])
|
||||
if(href_list["amount"])
|
||||
var/id = href_list["remove"]
|
||||
var/amount = text2num(href_list["amount"])
|
||||
if(beaker == null)
|
||||
reagents.remove_reagent(id,amount)
|
||||
else
|
||||
if(validexchange(id))
|
||||
reagents.trans_id_to(A, id, amount)
|
||||
else
|
||||
reagents.remove_reagent(id,amount)
|
||||
|
||||
else if(href_list["main"])
|
||||
attack_hand(usr)
|
||||
return
|
||||
|
||||
else if(href_list["eject"])
|
||||
if(beaker)
|
||||
A.loc = loc
|
||||
beaker = null
|
||||
reagents.trans_to(A,reagents.total_volume)
|
||||
|
||||
else if(href_list["synthcond"])
|
||||
if(href_list["type"])
|
||||
var/ID = text2num(href_list["type"])
|
||||
/*
|
||||
if(ID == 1)
|
||||
reagents.add_reagent("sprinkles",1)
|
||||
*/ //Sprinkles are now created by using the ice cream on the machine
|
||||
if(ID == 2 | ID == 3)
|
||||
var/brand = pick(1,2,3,4)
|
||||
if(brand == 1)
|
||||
if(ID == 2)
|
||||
reagents.add_reagent("cola",5)
|
||||
else
|
||||
reagents.add_reagent("kahlua",5)
|
||||
else if(brand == 2)
|
||||
if(ID == 2)
|
||||
reagents.add_reagent("dr_gibb",5)
|
||||
else
|
||||
reagents.add_reagent("vodka",5)
|
||||
else if(brand == 3)
|
||||
if(ID == 2)
|
||||
reagents.add_reagent("space_up",5)
|
||||
else
|
||||
reagents.add_reagent("rum",5)
|
||||
else if(brand == 4)
|
||||
if(ID == 2)
|
||||
reagents.add_reagent("spacemountainwind",5)
|
||||
else
|
||||
reagents.add_reagent("gin",5)
|
||||
else if(ID == 4)
|
||||
if(reagents.total_volume <= 500 & reagents.total_volume >= 15)
|
||||
reagents.add_reagent("cream",(30 - reagents.total_volume))
|
||||
else if(reagents.total_volume <= 15)
|
||||
reagents.add_reagent("cream",(15 - reagents.total_volume))
|
||||
else if(ID == 5)
|
||||
if(reagents.total_volume <= 500 & reagents.total_volume >= 15)
|
||||
reagents.add_reagent("water",(30 - reagents.total_volume))
|
||||
else if(reagents.total_volume <= 15)
|
||||
reagents.add_reagent("water",(15 - reagents.total_volume))
|
||||
|
||||
else if(href_list["createcup"])
|
||||
var/name = generate_name(reagents.get_master_reagent_name())
|
||||
name += " Chocolate Cone"
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/icecream/icecreamcup/C
|
||||
C = new/obj/item/weapon/reagent_containers/food/snacks/icecream/icecreamcup(loc)
|
||||
C.name = "[name]"
|
||||
C.pixel_x = rand(-8, 8)
|
||||
C.pixel_y = -16
|
||||
reagents.trans_to(C,30)
|
||||
if(reagents)
|
||||
reagents.clear_reagents()
|
||||
C.update_icon()
|
||||
|
||||
else if(href_list["createcone"])
|
||||
var/name = generate_name(reagents.get_master_reagent_name())
|
||||
name += " Cone"
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/icecream/icecreamcone/C
|
||||
C = new/obj/item/weapon/reagent_containers/food/snacks/icecream/icecreamcone(loc)
|
||||
C.name = "[name]"
|
||||
C.pixel_x = rand(-8, 8)
|
||||
C.pixel_y = -16
|
||||
reagents.trans_to(C,15)
|
||||
if(reagents)
|
||||
reagents.clear_reagents()
|
||||
C.update_icon()
|
||||
updateUsrDialog()
|
||||
|
||||
|
||||
/obj/machinery/icemachine/attack_ai(mob/user)
|
||||
return attack_hand(user)
|
||||
|
||||
/obj/machinery/icemachine/attack_paw(mob/user)
|
||||
return attack_hand(user)
|
||||
|
||||
|
||||
/obj/machinery/icemachine/proc/show_toppings()
|
||||
var/dat = ""
|
||||
if(reagents.total_volume <= 500)
|
||||
dat += "<HR>"
|
||||
dat += "<strong>Add fillings:</strong><BR>"
|
||||
dat += "<A href='?src=\ref[src];synthcond=1;type=2'>Soda</A><BR>"
|
||||
dat += "<A href='?src=\ref[src];synthcond=1;type=3'>Alcohol</A><BR>"
|
||||
dat += "<strong>Finish With:</strong><BR>"
|
||||
dat += "<A href='?src=\ref[src];synthcond=1;type=4'>Cream</A><BR>"
|
||||
dat += "<A href='?src=\ref[src];synthcond=1;type=5'>Water</A><BR>"
|
||||
dat += "<strong>Dispense in:</strong><BR>"
|
||||
dat += "<A href='?src=\ref[src];createcup=1'>Chocolate Cone</A><BR>"
|
||||
dat += "<A href='?src=\ref[src];createcone=1'>Cone</A><BR>"
|
||||
dat += "</center>"
|
||||
return dat
|
||||
|
||||
|
||||
/obj/machinery/icemachine/proc/show_reagents(container)
|
||||
//1 = beaker / 2 = internal
|
||||
var/dat = ""
|
||||
if(container == 1)
|
||||
var/obj/item/weapon/reagent_containers/glass/A = beaker
|
||||
var/datum/reagents/R = A.reagents
|
||||
dat += "The container has:<BR>"
|
||||
for(var/datum/reagent/G in R.reagent_list)
|
||||
dat += "[G.volume] unit(s) of [G.name] | "
|
||||
dat += "<A href='?src=\ref[src];add=[G.id];amount=5'>(5)</A> "
|
||||
dat += "<A href='?src=\ref[src];add=[G.id];amount=10'>(10)</A> "
|
||||
dat += "<A href='?src=\ref[src];add=[G.id];amount=15'>(15)</A> "
|
||||
dat += "<A href='?src=\ref[src];add=[G.id];amount=[G.volume]'>(All)</A>"
|
||||
dat += "<BR>"
|
||||
else if(container == 2)
|
||||
dat += "<BR>The Cream-Master has:<BR>"
|
||||
if(reagents.total_volume)
|
||||
for(var/datum/reagent/N in reagents.reagent_list)
|
||||
dat += "[N.volume] unit(s) of [N.name] | "
|
||||
dat += "<A href='?src=\ref[src];remove=[N.id];amount=5'>(5)</A> "
|
||||
dat += "<A href='?src=\ref[src];remove=[N.id];amount=10'>(10)</A> "
|
||||
dat += "<A href='?src=\ref[src];remove=[N.id];amount=15'>(15)</A> "
|
||||
dat += "<A href='?src=\ref[src];remove=[N.id];amount=[N.volume]'>(All)</A>"
|
||||
dat += "<BR>"
|
||||
else
|
||||
dat += "<BR>SOMEONE ENTERED AN INVALID REAGENT CONTAINER; QUICK, BUG REPORT!<BR>"
|
||||
return dat
|
||||
|
||||
|
||||
/obj/machinery/icemachine/attack_hand(mob/user)
|
||||
if(..()) return
|
||||
user.set_machine(src)
|
||||
var/dat = ""
|
||||
if(!beaker)
|
||||
dat += "No container is loaded into the machine, external transfer offline.<BR>"
|
||||
dat += show_reagents(2)
|
||||
dat += show_toppings()
|
||||
dat += "<A href='?src=\ref[src];close=1'>Close</A>"
|
||||
else
|
||||
var/obj/item/weapon/reagent_containers/glass/A = beaker
|
||||
var/datum/reagents/R = A.reagents
|
||||
dat += "<A href='?src=\ref[src];eject=1'>Eject container and end transfer.</A><BR>"
|
||||
if(!R.total_volume)
|
||||
dat += "Container is empty.<BR><HR>"
|
||||
else
|
||||
dat += show_reagents(1)
|
||||
dat += show_reagents(2)
|
||||
dat += show_toppings()
|
||||
var/datum/browser/popup = new(user, "cream_master","Cream-Master Deluxe", 700, 400, src)
|
||||
popup.set_content(dat)
|
||||
popup.open()
|
||||
@@ -0,0 +1,82 @@
|
||||
/obj/machinery/cooking
|
||||
name = "oven"
|
||||
desc = "Cookies are ready, dear."
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "oven_off"
|
||||
layer = 2.9
|
||||
density = 1
|
||||
anchored = 1
|
||||
use_power = 1
|
||||
var/candy = 0
|
||||
idle_power_usage = 5
|
||||
var/on = FALSE //Is it making food already?
|
||||
var/list/food_choices = list()
|
||||
/obj/machinery/cooking/New()
|
||||
..()
|
||||
updatefood()
|
||||
|
||||
/obj/machinery/cooking/attackby(obj/item/I, mob/user)
|
||||
if(on)
|
||||
user << "The machine is already running."
|
||||
return
|
||||
if(!istype(I,/obj/item/weapon/reagent_containers/food/snacks/))
|
||||
user << "That isn't food."
|
||||
return
|
||||
else
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/F = I
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/C
|
||||
C = input("Select food to make.", "Cooking", C) in food_choices
|
||||
if(!C)
|
||||
return
|
||||
else
|
||||
user << "You put [F] into [src] for cooking."
|
||||
user.drop_item()
|
||||
F.loc = src
|
||||
on = TRUE
|
||||
if(!candy)
|
||||
icon_state = "oven_on"
|
||||
else
|
||||
icon_state = "mixer_on"
|
||||
sleep(100)
|
||||
on = FALSE
|
||||
if(!candy)
|
||||
icon_state = "oven_off"
|
||||
else
|
||||
icon_state = "mixer_off"
|
||||
C.loc = get_turf(src)
|
||||
C.attackby(F,user)
|
||||
playsound(loc, 'sound/machines/ding.ogg', 50, 1)
|
||||
updatefood()
|
||||
return
|
||||
|
||||
/obj/machinery/cooking/proc/updatefood()
|
||||
return
|
||||
|
||||
/obj/machinery/cooking/oven
|
||||
name = "oven"
|
||||
desc = "Cookies are ready, dear."
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "oven_off"
|
||||
|
||||
/obj/machinery/cooking/oven/updatefood()
|
||||
for(var/U in food_choices)
|
||||
food_choices.Remove(U)
|
||||
for(var/U in typesof(/obj/item/weapon/reagent_containers/food/snacks/customizable/cook)-(/obj/item/weapon/reagent_containers/food/snacks/customizable/cook))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/cook/V = new U
|
||||
src.food_choices += V
|
||||
return
|
||||
|
||||
/obj/machinery/cooking/candy
|
||||
name = "candy machine"
|
||||
desc = "Get yer box of deep fried deep fried deep fried deep fried cotton candy cereal sandwich cookies here!"
|
||||
icon = 'icons/obj/cooking_machines.dmi'
|
||||
icon_state = "mixer_off"
|
||||
candy = 1
|
||||
|
||||
/obj/machinery/cooking/candy/updatefood()
|
||||
for(var/U in food_choices)
|
||||
food_choices.Remove(U)
|
||||
for(var/U in typesof(/obj/item/weapon/reagent_containers/food/snacks/customizable/candy)-(/obj/item/weapon/reagent_containers/food/snacks/customizable/candy))
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/customizable/candy/V = new U
|
||||
src.food_choices += V
|
||||
return
|
||||
@@ -20,6 +20,12 @@
|
||||
result = /obj/item/weapon/reagent_containers/food/snacks/telebacon
|
||||
|
||||
|
||||
/datum/recipe/bun
|
||||
items = list(
|
||||
/obj/item/weapon/reagent_containers/food/snacks/dough
|
||||
)
|
||||
result = /obj/item/weapon/reagent_containers/food/snacks/bun
|
||||
|
||||
/datum/recipe/friedegg
|
||||
reagents = list("sodiumchloride" = 1, "blackpepper" = 1)
|
||||
items = list(
|
||||
|
||||
@@ -9,6 +9,11 @@
|
||||
var/trash = null
|
||||
var/slice_path
|
||||
var/slices_num
|
||||
var/eatverb
|
||||
var/wrapped = 0
|
||||
var/dried_type = null
|
||||
var/deepfried = 0
|
||||
|
||||
|
||||
//Placeholder for effect that trigger on eating that aren't tied to reagents.
|
||||
/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M)
|
||||
@@ -128,9 +133,13 @@
|
||||
else
|
||||
usr << "\blue \The [src] was bitten multiple times!"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
..() // -> item/attackby()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/attackby(obj/item/weapon/W, mob/user)
|
||||
if(istype(W,/obj/item/weapon/pen))
|
||||
var/n_name = copytext(sanitize(input(usr, "What would you like to name this dish?", "Food Renaming", null) as text), 1, MAX_NAME_LEN)
|
||||
if((loc == usr && usr.stat == 0))
|
||||
name = "[n_name]"
|
||||
return
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
..() // -> item/attackby()
|
||||
if((slices_num <= 0 || !slices_num) || !slice_path)
|
||||
@@ -1591,7 +1600,7 @@
|
||||
bitesize = 12
|
||||
filling_color = "#ADAC7F"
|
||||
|
||||
var/wrapped = 0
|
||||
wrapped = 0
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -1632,7 +1641,7 @@
|
||||
desc = "Just add water!"
|
||||
icon_state = "monkeycube"
|
||||
bitesize = 12
|
||||
var/wrapped = 0
|
||||
wrapped = 0
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -1667,7 +1676,7 @@
|
||||
desc = "Just add water!"
|
||||
icon_state = "monkeycube"
|
||||
bitesize = 12
|
||||
var/wrapped = 0
|
||||
wrapped = 0
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -1701,7 +1710,7 @@
|
||||
desc = "Just add water!"
|
||||
icon_state = "monkeycube"
|
||||
bitesize = 12
|
||||
var/wrapped = 0
|
||||
wrapped = 0
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -3131,9 +3140,68 @@
|
||||
bitesize = 3
|
||||
|
||||
|
||||
///////////////////////////////////////////
|
||||
// new old food stuff from bs12
|
||||
///////////////////////////////////////////
|
||||
////////////////////////////////ICE CREAM///////////////////////////////////
|
||||
/obj/item/weapon/reagent_containers/food/snacks/icecream
|
||||
name = "ice cream"
|
||||
desc = "Delicious ice cream."
|
||||
icon = 'icons/obj/kitchen.dmi'
|
||||
icon_state = "icecream_cone"
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 1)
|
||||
reagents.add_reagent("sugar",1)
|
||||
bitesize = 1
|
||||
update_icon()
|
||||
|
||||
update_icon()
|
||||
overlays.Cut()
|
||||
var/image/filling = image('icons/obj/kitchen.dmi', src, "icecream_color")
|
||||
filling.icon += mix_color_from_reagents(reagents.reagent_list)
|
||||
overlays += filling
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/icecream/icecreamcone
|
||||
name = "ice cream cone"
|
||||
desc = "Delicious ice cream."
|
||||
icon_state = "icecream_cone"
|
||||
volume = 500
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 2)
|
||||
reagents.add_reagent("sugar",6)
|
||||
reagents.add_reagent("ice",2)
|
||||
bitesize = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/icecream/icecreamcup
|
||||
name = "chocolate ice cream cone"
|
||||
desc = "Delicious ice cream."
|
||||
icon_state = "icecream_cup"
|
||||
volume = 500
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 4)
|
||||
reagents.add_reagent("sugar",8)
|
||||
reagents.add_reagent("ice",2)
|
||||
bitesize = 6
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cereal
|
||||
name = "box of cereal"
|
||||
desc = "A box of cereal."
|
||||
icon = 'icons/obj/food.dmi'
|
||||
icon_state = "cereal_box"
|
||||
bitesize = 2
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 30)
|
||||
/obj/item/weapon/reagent_containers/food/snacks/deepfryholder
|
||||
name = "Deep Fried Foods Holder Obj"
|
||||
desc = "If you can see this description the code for the deep fryer fucked up."
|
||||
icon = 'icons/obj/food.dmi'
|
||||
icon_state = "deepfried_holder_icon"
|
||||
bitesize = 2
|
||||
deepfried = 1
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 30)
|
||||
|
||||
// Flour + egg = dough
|
||||
/obj/item/weapon/reagent_containers/food/snacks/flour/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
@@ -3162,18 +3230,23 @@
|
||||
reagents.add_reagent("nutriment", 3)
|
||||
|
||||
// Dough + rolling pin = flat dough
|
||||
/obj/item/weapon/reagent_containers/food/snacks/dough/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/kitchen/rollingpin))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough(src)
|
||||
user << "You flatten the dough."
|
||||
del(src)
|
||||
/obj/item/weapon/reagent_containers/food/snacks/dough/attackby(obj/item/I, mob/user)
|
||||
if(istype(I, /obj/item/weapon/kitchen/rollingpin))
|
||||
if(isturf(loc))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough(loc)
|
||||
user << "<span class='notice'>You flatten [src].</span>"
|
||||
qdel(src)
|
||||
else
|
||||
user << "<span class='notice'>You need to put [src] on a surface to roll it out!</span>"
|
||||
else
|
||||
..()
|
||||
|
||||
// slicable into 3xdoughslices
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
|
||||
name = "flat dough"
|
||||
desc = "A flattened dough."
|
||||
desc = "Some flattened dough."
|
||||
icon = 'icons/obj/food_ingredients.dmi'
|
||||
icon_state = "flatdough"
|
||||
icon_state = "flat dough"
|
||||
slice_path = /obj/item/weapon/reagent_containers/food/snacks/doughslice
|
||||
slices_num = 3
|
||||
New()
|
||||
@@ -3182,7 +3255,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/doughslice
|
||||
name = "dough slice"
|
||||
desc = "A building block of an impressive dish."
|
||||
desc = "The building block of an impressive dish."
|
||||
icon = 'icons/obj/food_ingredients.dmi'
|
||||
icon_state = "doughslice"
|
||||
bitesize = 2
|
||||
@@ -3192,57 +3265,14 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/bun
|
||||
name = "bun"
|
||||
desc = "A base for any self-respecting burger."
|
||||
desc = "The base for any self-respecting burger."
|
||||
icon = 'icons/obj/food_ingredients.dmi'
|
||||
icon_state = "bun"
|
||||
bitesize = 2
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 4)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/bun/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
// Bun + meatball = burger
|
||||
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/meatball))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
|
||||
user << "You make a burger."
|
||||
del(W)
|
||||
del(src)
|
||||
|
||||
// Bun + cutlet = hamburger
|
||||
else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/cutlet))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
|
||||
user << "You make a burger."
|
||||
del(W)
|
||||
del(src)
|
||||
|
||||
// Bun + sausage = hotdog
|
||||
else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/sausage))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/hotdog(src)
|
||||
user << "You make a hotdog."
|
||||
del(W)
|
||||
del(src)
|
||||
|
||||
// Burger + cheese wedge = cheeseburger
|
||||
/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
|
||||
if(istype(W))// && !istype(src,/obj/item/weapon/reagent_containers/food/snacks/cheesewedge))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
|
||||
user << "You make a cheeseburger."
|
||||
del(W)
|
||||
del(src)
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
// Human Burger + cheese wedge = cheeseburger
|
||||
/obj/item/weapon/reagent_containers/food/snacks/human/burger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
|
||||
if(istype(W))
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
|
||||
user << "You make a cheeseburger."
|
||||
del(W)
|
||||
del(src)
|
||||
return
|
||||
else
|
||||
..()
|
||||
bitesize = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/taco
|
||||
name = "taco"
|
||||
|
||||
Reference in New Issue
Block a user