Merge pull request #5815 from Fox-McCloud/food-refactor

Food refactor
This commit is contained in:
TheDZD
2016-10-28 22:37:19 -04:00
committed by GitHub
23 changed files with 946 additions and 2038 deletions
@@ -81,7 +81,7 @@
refill = reagents.get_master_reagent_id()
refillName = reagents.get_master_reagent_name()
var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this)
var/trans = reagents.trans_to(target, amount_per_transfer_from_this)
to_chat(user, "<span class='notice'> You transfer [trans] units of the solution to [target].</span>")
if(isrobot(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell
@@ -102,22 +102,22 @@
if(istype(I, /obj/item/clothing/mask/cigarette)) //ciggies are weird
return
if(is_hot(I))
if(src.reagents)
src.reagents.chem_temp += 15
if(reagents)
reagents.chem_temp += 15
to_chat(user, "<span class='notice'>You heat [src] with [I].</span>")
src.reagents.handle_reactions()
reagents.handle_reactions()
/obj/item/weapon/reagent_containers/food/drinks/examine(mob/user)
if(!..(user, 1))
return
if(!reagents || reagents.total_volume==0)
if(!reagents || reagents.total_volume == 0)
to_chat(user, "<span class='notice'> \The [src] is empty!</span>")
else if(reagents.total_volume<=src.volume/4)
else if(reagents.total_volume <= volume/4)
to_chat(user, "<span class='notice'> \The [src] is almost empty!</span>")
else if(reagents.total_volume<=src.volume*0.66)
else if(reagents.total_volume <= volume*0.66)
to_chat(user, "<span class='notice'> \The [src] is half full!</span>")// We're all optimistic, right?!
else if(reagents.total_volume<=src.volume*0.90)
else if(reagents.total_volume <= volume*0.90)
to_chat(user, "<span class='notice'> \The [src] is almost full!</span>")
else
to_chat(user, "<span class='notice'> \The [src] is full!</span>")
@@ -22,9 +22,9 @@
else
user.drop_item()
user.put_in_active_hand(B)
B.icon_state = src.icon_state
B.icon_state = icon_state
var/icon/I = new('icons/obj/drinks.dmi', src.icon_state)
var/icon/I = new('icons/obj/drinks.dmi', 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
@@ -99,11 +99,11 @@
//Display an attack message.
if(target != user)
target.visible_message("<span class='danger'>[user] has hit [target][head_attack_message] with a bottle of [src.name]!</span>", \
"<span class='userdanger'>[user] has hit [target][head_attack_message] with a bottle of [src.name]!</span>")
target.visible_message("<span class='danger'>[user] has hit [target][head_attack_message] with a bottle of [name]!</span>", \
"<span class='userdanger'>[user] has hit [target][head_attack_message] with a bottle of [name]!</span>")
else
user.visible_message("<span class='danger'>[target] hits \himself with a bottle of [src.name][head_attack_message]!</span>", \
"<span class='userdanger'>[target] hits \himself with a bottle of [src.name][head_attack_message]!</span>")
user.visible_message("<span class='danger'>[target] hits \himself with a bottle of [name][head_attack_message]!</span>", \
"<span class='userdanger'>[target] hits \himself with a bottle of [name][head_attack_message]!</span>")
//Attack logs
add_logs(user, target, "attacked", src)
@@ -9,7 +9,7 @@
/obj/item/weapon/reagent_containers/food/drinks/cans/attack_self(mob/user)
if(canopened == 0)
playsound(src.loc,'sound/effects/canopen.ogg', rand(10,50), 1)
playsound(loc,'sound/effects/canopen.ogg', rand(10,50), 1)
to_chat(user, "<span class='notice'>You open the drink with an audible pop!</span>")
canopened = 1
flags |= OPENCONTAINER
@@ -32,7 +32,7 @@
if(canopened == 0)
to_chat(user, "<span class='notice'>You need to open the drink!</span>")
return
else if(M == user && !src.reagents.total_volume && user.a_intent == "harm" && user.zone_sel.selecting == "head")
else if(M == user && !reagents.total_volume && user.a_intent == "harm" && user.zone_sel.selecting == "head")
user.visible_message("<span class='warning'>[user] crushes ["\the [src]"] on \his forehead!</span>", "<span class='notice'>You crush \the [src] on your forehead.</span>")
crush(user)
return
+62 -311
View File
@@ -13,9 +13,6 @@
icon = 'icons/obj/food/candy.dmi'
icon_state = "candy"
/obj/item/weapon/reagent_containers/food/snacks/candy/New()
..()
// ***********************************************************
// Candy Ingredients / Flavorings / Byproduct
// ***********************************************************
@@ -25,76 +22,53 @@
desc = "Such sweet, fattening food."
icon_state = "chocolatebar"
filling_color = "#7D5F46"
/obj/item/weapon/reagent_containers/food/snacks/chocolatebar/New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("chocolate",4)
bitesize = 2
list_reagents = list("nutriment" = 2, "chocolate" = 4)
/obj/item/weapon/reagent_containers/food/snacks/candy/caramel
name = "Caramel"
desc = "Chewy and dense, yet it practically melts in your mouth!"
icon_state = "caramel"
filling_color = "#DB944D"
/obj/item/weapon/reagent_containers/food/snacks/candy/caramel/New()
..()
reagents.add_reagent("cream", 2)
reagents.add_reagent("sugar", 2)
bitesize = 2
list_reagents = list("cream" = 2, "sugar" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/toffee
name = "Toffee"
desc = "A hard, brittle candy with a distinctive taste."
icon_state = "toffee"
filling_color = "#7D5F46"
/obj/item/weapon/reagent_containers/food/snacks/candy/toffee/New()
..()
reagents.add_reagent("nutriment", 3)
reagents.add_reagent("sugar", 3)
bitesize = 2
list_reagents = list("nutriment" = 3, "sugar" = 3)
/obj/item/weapon/reagent_containers/food/snacks/candy/nougat
name = "Nougat"
desc = "A soft, chewy candy commonly found in candybars."
icon_state = "nougat"
filling_color = "#7D5F46"
/obj/item/weapon/reagent_containers/food/snacks/candy/nougat/New()
..()
reagents.add_reagent("nutriment", 3)
reagents.add_reagent("sugar", 3)
spawn(1)
reagents.del_reagent("egg")
reagents.update_total()
bitesize = 2
list_reagents = list("nutriment" = 3, "sugar" = 3)
/obj/item/weapon/reagent_containers/food/snacks/candy/taffy
name = "Saltwater Taffy"
desc = "Old fashioned saltwater taffy. Chewy!"
icon_state = "candy1"
filling_color = "#7D5F46"
bitesize = 2
list_reagents = list("nutriment" = 3, "sugar" = 3)
/obj/item/weapon/reagent_containers/food/snacks/candy/taffy/New()
..()
icon_state = pick("candy1", "candy2", "candy3", "candy4", "candy5")
reagents.add_reagent("nutriment", 3)
reagents.add_reagent("sugar", 3)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/candy/fudge
name = "Fudge"
desc = "Chocolate fudge, a timeless classic treat."
icon_state = "fudge"
filling_color = "#7D5F46"
/obj/item/weapon/reagent_containers/food/snacks/candy/fudge/New()
..()
reagents.add_reagent("cream", 3)
reagents.add_reagent("chocolate",6)
bitesize = 3
list_reagents = list("cream" = 3, "chocolate" = 6)
/obj/item/weapon/reagent_containers/food/snacks/candy/fudge/peanut
name = "Peanut Fudge"
@@ -113,10 +87,7 @@
desc = "An extra creamy fudge with bits of real chocolate cookie mixed in. Crunchy!"
icon_state = "fudge_cookies_n_cream"
filling_color = "#7D5F46"
/obj/item/weapon/reagent_containers/food/snacks/candy/fudge/cookies_n_cream/New()
..()
reagents.add_reagent("cream", 3)
list_reagents = list("cream" = 6, "chocolate" = 6)
/obj/item/weapon/reagent_containers/food/snacks/candy/fudge/turtle
name = "Turtle Fudge"
@@ -132,24 +103,16 @@
name = "Donor Candy"
desc = "A little treat for blood donors."
trash = /obj/item/trash/candy
/obj/item/weapon/reagent_containers/food/snacks/candy/donor/New()
..()
reagents.add_reagent("nutriment", 10)
reagents.add_reagent("sugar", 3)
bitesize = 5
list_reagents = list("nutriment" = 10, "sugar" = 3)
/obj/item/weapon/reagent_containers/food/snacks/candy/candy_corn
name = "candy corn"
desc = "It's a handful of candy corn. Cannot be stored in a detective's hat, alas."
icon_state = "candycorn"
filling_color = "#FFFCB0"
/obj/item/weapon/reagent_containers/food/snacks/candy/candy_corn/New()
..()
reagents.add_reagent("nutriment", 4)
reagents.add_reagent("sugar", 2)
bitesize = 2
list_reagents = list("nutriment" = 4, "sugar" = 2)
// ***********************************************************
// Candy Products (plain / unflavored)
@@ -161,11 +124,8 @@
icon_state = "cottoncandy_plain"
trash = /obj/item/weapon/c_tube
filling_color = "#FFFFFF"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/New()
..()
reagents.add_reagent("sugar", 15)
bitesize = 3
bitesize = 4
list_reagents = list("sugar" = 15)
/obj/item/weapon/reagent_containers/food/snacks/candy/candybar
name = "candy"
@@ -173,92 +133,64 @@
icon_state = "candy"
trash = /obj/item/trash/candy
filling_color = "#7D5F46"
/obj/item/weapon/reagent_containers/food/snacks/candy/candybar/New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("chocolate",5)
bitesize = 3
list_reagents = list("nutriment" = 2, "chocolate" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/candycane
name = "candy cane"
desc = "A festive mint candy cane."
icon_state = "candycane"
filling_color = "#F2F2F2"
/obj/item/weapon/reagent_containers/food/snacks/candy/candycane/New()
..()
reagents.add_reagent("minttoxin", 1)
reagents.add_reagent("sugar", 5)
bitesize = 2
list_reagents = list("minttoxin" = 1, "sugar" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear
name = "gummy bear"
desc = "A small edible bear. It's squishy and chewy!"
icon_state = "gbear"
filling_color = "#FFFFFF"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/New()
..()
reagents.add_reagent("sugar", 10)
bitesize = 3
list_reagents = list("sugar" = 10)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm
name = "gummy worm"
desc = "An edible worm, made from gelatin."
icon_state = "gworm"
filling_color = "#FFFFFF"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/New()
..()
reagents.add_reagent("sugar", 10)
bitesize = 3
list_reagents = list("sugar" = 10)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas."
icon_state = "jbean"
filling_color = "#FFFFFF"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/New()
..()
reagents.add_reagent("sugar", 10)
bitesize = 3
list_reagents = list("sugar" = 10)
/obj/item/weapon/reagent_containers/food/snacks/candy/jawbreaker
name = "jawbreaker"
desc = "An unbelievably hard candy. The name is fitting."
icon_state = "jawbreaker"
filling_color = "#ED0758"
/obj/item/weapon/reagent_containers/food/snacks/candy/jawbreaker/New()
..()
reagents.add_reagent("sugar", 10)
bitesize = 0.1 //this is gonna take a while, you'll be working at this all shift.
list_reagents = list("sugar" = 10)
/obj/item/weapon/reagent_containers/food/snacks/candy/cash
name = "candy cash"
desc = "Not legal tender. Tasty though."
icon_state = "candy_cash"
filling_color = "#302000"
/obj/item/weapon/reagent_containers/food/snacks/candy/cash/New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("chocolate", 4)
bitesize = 2
list_reagents = list("nutriment" = 2, "chocolate" = 4)
/obj/item/weapon/reagent_containers/food/snacks/candy/coin
name = "chocolate coin"
desc = "Probably won't work in the vending machines."
icon_state = "choc_coin"
filling_color = "#302000"
/obj/item/weapon/reagent_containers/food/snacks/candy/coin/New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("chocolate",4)
bitesize = 3
list_reagents = list("nutriment" = 2, "chocolate" = 4)
/obj/item/weapon/reagent_containers/food/snacks/candy/gum
name = "bubblegum"
@@ -266,22 +198,15 @@
icon_state = "bubblegum"
trash = /obj/item/trash/gum
filling_color = "#FF7495"
/obj/item/weapon/reagent_containers/food/snacks/candy/gum/New()
..()
reagents.add_reagent("sugar", 5)
bitesize = 0.2
list_reagents = list("sugar" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/sucker
name = "sucker"
desc = "For being such a good sport!"
icon_state = "sucker"
filling_color = "#FFFFFF"
/obj/item/weapon/reagent_containers/food/snacks/candy/sucker/New()
..()
reagents.add_reagent("sugar", 10)
bitesize = 1
list_reagents = list("sugar" = 10)
// ***********************************************************
// Gummy Bear Flavors
@@ -292,91 +217,56 @@
desc = "A small edible bear. It's red!"
icon_state = "gbear_red"
filling_color = "#801E28"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/red/New()
..()
reagents.add_reagent("cherryjelly", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "cherryjelly" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/blue
name = "gummy bear"
desc = "A small edible bear. It's blue!"
icon_state = "gbear_blue"
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/blue/New()
..()
reagents.add_reagent("berryjuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "berryjuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/poison
name = "gummy bear"
desc = "A small edible bear. It's blue!"
icon_state = "gbear_blue"
filling_color = "#863353"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/poison/New()
..()
reagents.add_reagent("poisonberryjuice", 12)
spawn(1)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 3
list_reagents = list("poisonberryjuice" = 12)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/green
name = "gummy bear"
desc = "A small edible bear. It's green!"
icon_state = "gbear_green"
filling_color = "#365E30"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/green/New()
..()
reagents.add_reagent("limejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "limejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/yellow
name = "gummy bear"
desc = "A small edible bear. It's yellow!"
icon_state = "gbear_yellow"
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/yellow/New()
..()
reagents.add_reagent("lemonjuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "lemonjuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/orange
name = "gummy bear"
desc = "A small edible bear. It's orange!"
icon_state = "gbear_orange"
filling_color = "#E78108"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/orange/New()
..()
reagents.add_reagent("orangejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "orangejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/purple
name = "gummy bear"
desc = "A small edible bear. It's purple!"
icon_state = "gbear_purple"
filling_color = "#993399"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/purple/New()
..()
reagents.add_reagent("grapejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "grapejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/wtf
name = "gummy bear"
desc = "A small bear. Wait... what?"
icon_state = "gbear_wtf"
filling_color = "#60A584"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummybear/wtf/New()
..()
reagents.add_reagent("space_drugs", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "space_drugs" = 2)
// ***********************************************************
// Gummy Worm Flavors
@@ -387,91 +277,56 @@
desc = "An edible worm, made from gelatin. It's red!"
icon_state = "gworm_red"
filling_color = "#801E28"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/red/New()
..()
reagents.add_reagent("cherryjelly", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "cherryjelly" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/blue
name = "gummy worm"
desc = "An edible worm, made from gelatin. It's blue!"
icon_state = "gworm_blue"
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/blue/New()
..()
reagents.add_reagent("berryjuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "berryjuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/poison
name = "gummy worm"
desc = "An edible worm, made from gelatin. It's blue!"
icon_state = "gworm_blue"
filling_color = "#863353"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/poison/New()
..()
reagents.add_reagent("poisonberryjuice", 12)
spawn(1)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 3
list_reagents = list("poisonberryjuice" = 12)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/green
name = "gummy worm"
desc = "An edible worm, made from gelatin. It's green!"
icon_state = "gworm_green"
filling_color = "#365E30"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/green/New()
..()
reagents.add_reagent("limejuice", 10)
bitesize = 3
list_reagents = list("sugar" = 10, "limejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/yellow
name = "gummy worm"
desc = "An edible worm, made from gelatin. It's yellow!"
icon_state = "gworm_yellow"
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/yellow/New()
..()
reagents.add_reagent("lemonjuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "lemonjuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/orange
name = "gummy worm"
desc = "An edible worm, made from gelatin. It's orange!"
icon_state = "gworm_orange"
filling_color = "#E78108"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/orange/New()
..()
reagents.add_reagent("orangejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "orangejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/purple
name = "gummy worm"
desc = "An edible worm, made from gelatin. It's purple!"
icon_state = "gworm_purple"
filling_color = "#993399"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/purple/New()
..()
reagents.add_reagent("grapejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "grapejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/wtf
name = "gummy worm"
desc = "An edible worm. Did it just move?"
icon_state = "gworm_wtf"
filling_color = "#60A584"
/obj/item/weapon/reagent_containers/food/snacks/candy/gummyworm/wtf/New()
..()
reagents.add_reagent("space_drugs", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "space_drugs" = 2)
// ***********************************************************
// Jelly Bean Flavors
@@ -482,146 +337,91 @@
desc = "A candy bean, guarenteed to not give you gas. It's red!"
icon_state = "jbean_red"
filling_color = "#801E28"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/red/New()
..()
reagents.add_reagent("cherryjelly", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "cherryjelly" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/blue
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's blue!"
icon_state = "jbean_blue"
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/blue/New()
..()
reagents.add_reagent("berryjuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "berryjuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/poison
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's blue!"
icon_state = "jbean_blue"
filling_color = "#863353"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/poison/New()
..()
reagents.add_reagent("poisonberryjuice", 12)
spawn(1)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 3
list_reagents = list("poisonberryjuice" = 12)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/green
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's green!"
icon_state = "jbean_green"
filling_color = "#365E30"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/green/New()
..()
reagents.add_reagent("limejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "limejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/yellow
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's yellow!"
icon_state = "jbean_yellow"
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/yellow/New()
..()
reagents.add_reagent("lemonjuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "lemonjuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/orange
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's orange!"
icon_state = "jbean_orange"
filling_color = "#E78108"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/orange/New()
..()
reagents.add_reagent("orangejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "orangejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/purple
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's purple!"
icon_state = "jbean_purple"
filling_color = "#993399"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/purple/New()
..()
reagents.add_reagent("grapejuice", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "grapejuice" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/chocolate
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's chocolate!"
icon_state = "jbean_choc"
filling_color = "#302000"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/chocolate/New()
..()
reagents.add_reagent("chocolate",2)
bitesize = 3
list_reagents = list("sugar" = 10, "chocolate" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/popcorn
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's popcorn flavored!"
icon_state = "jbean_popcorn"
filling_color = "#664330"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/popcorn/New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/cola
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's Cola flavored!"
icon_state = "jbean_cola"
filling_color = "#102000"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/cola/New()
..()
reagents.add_reagent("cola", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "cola" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/drgibb
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's Dr. Gibb flavored!"
icon_state = "jbean_cola"
filling_color = "#102000"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/drgibb/New()
..()
reagents.add_reagent("dr_gibb", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "dr_gibb" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/coffee
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. It's Coffee flavored!"
icon_state = "jbean_choc"
filling_color = "#482000"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/coffee/New()
..()
reagents.add_reagent("coffee", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "coffee" = 2)
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/wtf
name = "jelly bean"
desc = "A candy bean, guarenteed to not give you gas. You aren't sure what color it is."
icon_state = "jbean_wtf"
filling_color = "#60A584"
/obj/item/weapon/reagent_containers/food/snacks/candy/jellybean/wtf/New()
..()
reagents.add_reagent("space_drugs", 2)
bitesize = 3
list_reagents = list("sugar" = 10, "space_drugs" = 2)
// ***********************************************************
// Cotton Candy Flavors
@@ -633,11 +433,7 @@
icon_state = "cottoncandy_red"
trash = /obj/item/weapon/c_tube
filling_color = "#801E28"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/red/New()
..()
reagents.add_reagent("cherryjelly", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "cherryjelly" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/blue
name = "cotton candy"
@@ -645,11 +441,7 @@
icon_state = "cottoncandy_blue"
trash = /obj/item/weapon/c_tube
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/blue/New()
..()
reagents.add_reagent("berryjuice", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "berryjuice" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/poison
name = "cotton candy"
@@ -657,14 +449,7 @@
icon_state = "cottoncandy_blue"
trash = /obj/item/weapon/c_tube
filling_color = "#863353"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/poison/New()
..()
reagents.add_reagent("poisonberryjuice", 20)
spawn(1)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 4
list_reagents = list("poisonberryjuice" = 20)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/green
name = "cotton candy"
@@ -672,11 +457,7 @@
icon_state = "cottoncandy_green"
trash = /obj/item/weapon/c_tube
filling_color = "#365E30"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/green/New()
..()
reagents.add_reagent("limejuice", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "limejuice" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/yellow
name = "cotton candy"
@@ -684,11 +465,7 @@
icon_state = "cottoncandy_yellow"
trash = /obj/item/weapon/c_tube
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/yellow/New()
..()
reagents.add_reagent("lemonjuice", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "lemonjuice" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/orange
name = "cotton candy"
@@ -696,11 +473,7 @@
icon_state = "cottoncandy_orange"
trash = /obj/item/weapon/c_tube
filling_color = "#E78108"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/orange/New()
..()
reagents.add_reagent("orangejuice", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "orangejuice" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/purple
name = "cotton candy"
@@ -708,11 +481,7 @@
icon_state = "cottoncandy_purple"
trash = /obj/item/weapon/c_tube
filling_color = "#993399"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/purple/New()
..()
reagents.add_reagent("grapejuice", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "grapejuice" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/pink
name = "cotton candy"
@@ -720,11 +489,7 @@
icon_state = "cottoncandy_pink"
trash = /obj/item/weapon/c_tube
filling_color = "#863333"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/pink/New()
..()
reagents.add_reagent("watermelonjuice", 5)
bitesize = 4
list_reagents = list("sugar" = 15, "watermelonjuice" = 5)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/rainbow
name = "cotton candy"
@@ -732,14 +497,7 @@
icon_state = "cottoncandy_rainbow"
trash = /obj/item/weapon/c_tube
filling_color = "#C8A5DC"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/rainbow/New()
..()
reagents.add_reagent("omnizine", 20)
spawn(1)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 4
list_reagents = list("omnizine" = 20)
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/bad_rainbow
name = "cotton candy"
@@ -747,14 +505,7 @@
icon_state = "cottoncandy_rainbow"
trash = /obj/item/weapon/c_tube
filling_color = "#32127A"
/obj/item/weapon/reagent_containers/food/snacks/candy/cotton/bad_rainbow/New()
..()
reagents.add_reagent("sulfonal", 20)
spawn(1)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 4
list_reagents = list("sulfonal" = 20)
// ***********************************************************
// Candybar Flavors
@@ -82,7 +82,7 @@
if(target.reagents.total_volume >= target.reagents.maximum_volume)
to_chat(user, "<span class='warning'>you can't add anymore to [target]!</span>")
return
var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this)
var/trans = reagents.trans_to(target, amount_per_transfer_from_this)
to_chat(user, "<span class='notice'>You transfer [trans] units of the condiment to [target].</span>")
/obj/item/weapon/reagent_containers/food/condiment/on_reagent_change()
@@ -223,7 +223,7 @@
return
else
to_chat(user, "<span class='notice'>You tear open [src] above [target] and the condiments drip onto it.</span>")
src.reagents.trans_to(target, amount_per_transfer_from_this)
reagents.trans_to(target, amount_per_transfer_from_this)
qdel(src)
/obj/item/weapon/reagent_containers/food/condiment/pack/on_reagent_change()
@@ -1,4 +1,4 @@
/obj/item/weapon/reagent_containers/food/snacks/breadslice/attackby(obj/item/W as obj, mob/user as mob, params)
/obj/item/weapon/reagent_containers/food/snacks/breadslice/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/reagent_containers/food/snacks) && !(W.flags & NODROP))
var/obj/item/weapon/reagent_containers/food/snacks/customizable/sandwich/S = new(get_turf(user))
S.attackby(W,user, params)
@@ -6,13 +6,13 @@
else
..()
/obj/item/weapon/reagent_containers/food/snacks/bun/attackby(obj/item/W as obj, mob/user as mob, params)
/obj/item/weapon/reagent_containers/food/snacks/bun/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/reagent_containers/food/snacks) && !(W.flags & NODROP))
var/obj/item/weapon/reagent_containers/food/snacks/customizable/burger/S = new(get_turf(user))
S.attackby(W,user, params)
qdel(src)
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough/attackby(obj/item/W as obj, mob/user as mob, params)
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/reagent_containers/food/snacks) && !(W.flags & NODROP))
var/obj/item/weapon/reagent_containers/food/snacks/customizable/pizza/S = new(get_turf(user))
S.attackby(W,user, params)
@@ -21,7 +21,7 @@
..()
/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti/attackby(obj/item/W as obj, mob/user as mob, params)
/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/reagent_containers/food/snacks) && !(W.flags & NODROP))
var/obj/item/weapon/reagent_containers/food/snacks/customizable/pasta/S = new(get_turf(user))
S.attackby(W,user, params)
@@ -30,7 +30,7 @@
..()
/obj/item/trash/plate/attackby(obj/item/W as obj, mob/user as mob, params)
/obj/item/trash/plate/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/reagent_containers/food/snacks) && !(W.flags & NODROP))
var/obj/item/weapon/reagent_containers/food/snacks/customizable/fullycustom/S = new(get_turf(user))
S.attackby(W,user, params)
@@ -44,7 +44,7 @@
icon = 'icons/obj/food/food.dmi'
icon_state = "soup"
/obj/item/trash/bowl/attackby(obj/item/W as obj, mob/user as mob, params)
/obj/item/trash/bowl/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/reagent_containers/food/snacks) && !(W.flags & NODROP))
var/obj/item/weapon/reagent_containers/food/snacks/customizable/soup/S = new(get_turf(user))
@@ -54,7 +54,6 @@
..()
/obj/item/weapon/reagent_containers/food/snacks/customizable/sandwich
/obj/item/weapon/reagent_containers/food/snacks/customizable
name = "sandwich"
desc = "A sandwich! A timeless classic."
icon_state = "breadslice"
@@ -79,12 +78,7 @@
trash = /obj/item/trash/plate
bitesize = 2
var/list/ingredients = list()
New()
..()
reagents.add_reagent("nutriment", 8)
list_reagents = list("nutriment" = 8)
/obj/item/weapon/reagent_containers/food/snacks/customizable/pizza
name = "personal pizza"
@@ -323,7 +317,7 @@
toptype = new /obj/item/weapon/reagent_containers/food/snacks/bun()
/obj/item/weapon/reagent_containers/food/snacks/customizable/attackby(obj/item/I, mob/user, params)
if(src.contents.len > sandwich_limit)
if(contents.len > sandwich_limit)
to_chat(user, "<span class='warning'>If you put anything else in or on [src] it's going to make a mess.</span>")
return
if(!istype(I, /obj/item/weapon/reagent_containers/food/snacks))
@@ -351,7 +345,7 @@
for(var/obj/item/O in ingredients)
i++
if(!fullycustom)
var/image/I = new(src.icon, "[baseicon]_filling")
var/image/I = new(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")
@@ -372,7 +366,7 @@
overlays += O.overlays
if(top)
var/image/T = new(src.icon, "[baseicon]_top")
var/image/T = new(icon, "[baseicon]_top")
T.pixel_x = pick(list(-1,0,1))
T.pixel_y = (ingredients.len * 2)+1
overlays += T
@@ -388,24 +382,6 @@
to_chat(user, "<span class='notice'> You think you can see [whatsinside] in there.</span>")
/*
/obj/item/weapon/reagent_containers/food/snacks/customizable/attack(mob/M as mob, mob/user as mob, def_zone) //SNOOOOOOOWFLAAAAAAAAAAAAAAAAAKES
var/obj/item/shard
for(var/obj/item/O in contents)
if(istype(O,/obj/item/weapon/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.
to_chat(H, "\red You lacerate your mouth on a [shard.name] in the sandwich!")
H.adjustBruteLoss(5) //TODO: Target head if human.
..()
*/
/obj/item/weapon/reagent_containers/food/snacks/customizable/proc/newname()
var/unsorteditems[0]
@@ -487,7 +463,7 @@
sendback = "[pick(list("absurd","colossal","enormous","ridiculous","massive","oversized","cardiac-arresting","pipe-clogging","edible but sickening","sickening","gargantuan","mega","belly-burster","chest-burster"))] [basename]"
return sendback
/obj/item/weapon/reagent_containers/food/snacks/customizable/proc/sortlist(var/list/unsorted, var/highest)
/obj/item/weapon/reagent_containers/food/snacks/customizable/proc/sortlist(list/unsorted, highest)
var/sorted[0]
for(var/i = 1, i<= highest, i++)
for(var/it in unsorted)
+5 -12
View File
@@ -4,16 +4,11 @@
icon_state = "meat"
health = 180
filling_color = "#FF1C1C"
New()
..()
reagents.add_reagent("protein", 3)
src.bitesize = 3
bitesize = 3
list_reagents = list("protein" = 3)
/obj/item/weapon/reagent_containers/food/snacks/meat/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if( \
istype(W, /obj/item/weapon/kitchen/knife) || \
istype(W, /obj/item/weapon/scalpel) \
)
/obj/item/weapon/reagent_containers/food/snacks/meat/attackby(obj/item/weapon/W, mob/user, params)
if(istype(W, /obj/item/weapon/kitchen/knife) || istype(W, /obj/item/weapon/scalpel))
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)
@@ -49,6 +44,4 @@
/obj/item/weapon/reagent_containers/food/snacks/meat/ham
name = "Ham"
desc = "Taste like bacon."
New()
..()
reagents.add_reagent("porktonium", 10)
list_reagents = list("protein" = 3, "porktonium" = 10)
+44 -127
View File
@@ -5,12 +5,8 @@
icon = 'icons/obj/food/seafood.dmi'
icon_state = "fishfillet"
filling_color = "#FFDEFE"
New()
..()
reagents.add_reagent("protein", 3)
reagents.add_reagent("carpotoxin", 3)
src.bitesize = 6
bitesize = 6
list_reagents = list("protein" = 3, "carpotoxin" = 3)
/obj/item/weapon/reagent_containers/food/snacks/salmonmeat
name = "raw salmon"
@@ -18,11 +14,8 @@
icon = 'icons/obj/food/seafood.dmi'
icon_state = "fishfillet"
filling_color = "#FFDEFE"
New()
..()
reagents.add_reagent("protein", 3)
src.bitesize = 3
bitesize = 3
list_reagents = list("protein" = 3)
/obj/item/weapon/reagent_containers/food/snacks/salmonsteak
name = "Salmon steak"
@@ -31,14 +24,8 @@
icon_state = "salmonsteak"
trash = /obj/item/trash/plate
filling_color = "#7A3D11"
New()
..()
reagents.add_reagent("nutriment", 4)
reagents.add_reagent("sodiumchloride", 1)
reagents.add_reagent("blackpepper", 1)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 4, "sodiumchloride" = 1, "blackpepper" = 1)
/obj/item/weapon/reagent_containers/food/snacks/catfishmeat
name = "raw catfish"
@@ -46,11 +33,8 @@
icon = 'icons/obj/food/seafood.dmi'
icon_state = "fishfillet"
filling_color = "#FFDEFE"
New()
..()
reagents.add_reagent("protein", 3)
src.bitesize = 3
bitesize = 3
list_reagents = list("protein" = 3)
/obj/item/weapon/reagent_containers/food/snacks/fishfingers
name = "Fish Fingers"
@@ -58,15 +42,8 @@
icon = 'icons/obj/food/seafood.dmi'
icon_state = "fishfingers"
filling_color = "#FFDEFE"
New()
..()
reagents.add_reagent("nutriment", 4)
reagents.add_reagent("carpotoxin", 3)
spawn(1)
reagents.del_reagent("egg")
reagents.update_total()
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 4, "carpotoxin" = 3)
/obj/item/weapon/reagent_containers/food/snacks/fishburger
name = "Fillet -o- Carp Sandwich"
@@ -74,12 +51,8 @@
icon = 'icons/obj/food/seafood.dmi'
icon_state = "fishburger"
filling_color = "#FFDEFE"
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("carpotoxin", 3)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 6, "carpotoxin" = 3)
/obj/item/weapon/reagent_containers/food/snacks/cubancarp
name = "Cuban Carp"
@@ -88,13 +61,8 @@
icon_state = "cubancarp"
trash = /obj/item/trash/plate
filling_color = "#E9ADFF"
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("carpotoxin", 3)
reagents.add_reagent("capsaicin", 3)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 6, "carpotoxin" = 3, "capsaicin" = 3)
/obj/item/weapon/reagent_containers/food/snacks/fishandchips
name = "Fish and Chips"
@@ -102,168 +70,117 @@
icon = 'icons/obj/food/seafood.dmi'
icon_state = "fishandchips"
filling_color = "#E3D796"
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("carpotoxin", 3)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 6, "carpotoxin" = 3)
/obj/item/weapon/reagent_containers/food/snacks/sashimi
name = "carp sashimi"
desc = "Celebrate surviving attack from hostile alien lifeforms by hospitalising yourself."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sashimi"
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("toxin", 5)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 6, "toxin" = 5)
/obj/item/weapon/reagent_containers/food/snacks/fried_shrimp
name = "fried shrimp"
desc = "Just one of the many things you can do with shrimp!"
icon = 'icons/obj/food/seafood.dmi'
icon_state = "shrimp_fried"
New()
..()
reagents.add_reagent("nutriment", 2)
src.bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/boiled_shrimp
name = "boiled shrimp"
desc = "Just one of the many things you can do with shrimp!"
icon = 'icons/obj/food/seafood.dmi'
icon_state = "shrimp_cooked"
New()
..()
reagents.add_reagent("nutriment", 2)
src.bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Ebi
name = "Ebi Sushi"
desc = "A simple sushi consisting of cooked shrimp and rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Ebi"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Ikura
name = "Ikura Sushi"
desc = "A simple sushi consisting of salmon roe."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Ikura"
New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("protein", 1)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2, "protein" = 1)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Sake
name = "Sake Sushi"
desc = "A simple sushi consisting of raw salmon and rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Sake"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_SmokedSalmon
name = "Smoked Salmon Sushi"
desc = "A simple sushi consisting of cooked salmon and rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_SmokedSalmon"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Tamago
name = "Tamago Sushi"
desc = "A simple sushi consisting of egg and rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Tamago"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Inari
name = "Inari Sushi"
desc = "A piece of fried tofu stuffed with rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Inari"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Masago
name = "Masago Sushi"
desc = "A simple sushi consisting of goldfish roe."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Masago"
New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("protein", 1)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2, "protein" = 1)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Tobiko
name = "Tobiko Sushi"
desc = "A simple sushi consisting of shark roe."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Masago"
New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("protein", 1)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2, "protein" = 1)
/obj/item/weapon/reagent_containers/food/snacks/sushi_TobikoEgg
name = "Tobiko and Egg Sushi"
desc = "A sushi consisting of shark roe and an egg."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_TobikoEgg"
New()
..()
reagents.add_reagent("nutriment", 2)
reagents.add_reagent("protein", 1)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2, "protein" = 1)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Tai
name = "Tai Sushi"
desc = "A simple sushi consisting of catfish and rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Tai"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
/obj/item/weapon/reagent_containers/food/snacks/sushi_Unagi
name = "Unagi Sushi"
desc = "A simple sushi consisting of eel and rice."
icon = 'icons/obj/food/seafood.dmi'
icon_state = "sushi_Hokki"
New()
..()
reagents.add_reagent("nutriment", 2)
bitesize = 3
bitesize = 3
list_reagents = list("nutriment" = 2)
File diff suppressed because it is too large Load Diff
@@ -52,13 +52,13 @@
else
overlays += image('icons/obj/kitchen.dmi', "gridle")
/obj/machinery/gibber/relaymove(mob/user as mob)
/obj/machinery/gibber/relaymove(mob/user)
if(locked)
return
go_out()
/obj/machinery/gibber/attack_hand(mob/user as mob)
/obj/machinery/gibber/attack_hand(mob/user)
if(stat & (NOPOWER|BROKEN))
return
@@ -73,7 +73,7 @@
else
startgibbing(user)
/obj/machinery/gibber/attackby(obj/item/P as obj, mob/user as mob, params)
/obj/machinery/gibber/attackby(obj/item/P, mob/user, params)
if(istype(P, /obj/item/weapon/grab))
var/obj/item/weapon/grab/G = P
if(G.state < 2)
@@ -126,7 +126,7 @@
return
user.visible_message("<span class='danger'>[user] starts to put [victim] into the gibber!</span>")
src.add_fingerprint(user)
add_fingerprint(user)
if(do_after(user, 30, target = victim) && user.Adjacent(src) && victim.Adjacent(user) && !occupant)
user.visible_message("<span class='danger'>[user] stuffs [victim] into the gibber!</span>")
@@ -155,7 +155,7 @@
return
for(var/obj/O in src)
O.loc = src.loc
O.loc = loc
occupant.forceMove(get_turf(src))
occupant = null
@@ -212,11 +212,11 @@
/obj/machinery/gibber/proc/startgibbing(var/mob/user, var/UserOverride=0)
if(!istype(user) && !UserOverride)
log_debug("Some shit just went down with the gibber at X[x], Y[y], Z[z] with an invalid user. (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[src.x];Y=[src.y];Z=[src.z]'>JMP</a>)")
log_debug("Some shit just went down with the gibber at X[x], Y[y], Z[z] with an invalid user. (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
return
if(UserOverride)
msg_admin_attack("[key_name_admin(occupant)] was gibbed by an autogibber (\the [src]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[src.x];Y=[src.y];Z=[src.z]'>JMP</a>)")
msg_admin_attack("[key_name_admin(occupant)] was gibbed by an autogibber (\the [src]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
if(operating)
return
@@ -236,7 +236,7 @@
var/slab_name = occupant.name
var/slab_count = 3
var/slab_type = /obj/item/weapon/reagent_containers/food/snacks/meat/human //gibber can only gib humans on paracode, no need to check meat type
var/slab_nutrition = src.occupant.nutrition / 15
var/slab_nutrition = occupant.nutrition / 15
slab_nutrition /= slab_count
@@ -352,7 +352,7 @@
feedinTopanim()
return 1
/obj/machinery/gibber/autogibber/proc/ejectclothes(var/mob/living/carbon/human/H)
/obj/machinery/gibber/autogibber/proc/ejectclothes(mob/living/carbon/human/H)
if(!istype(H)) return 0
if(H != occupant) return 0 //only using H as a shortcut to typecast
for(var/obj/O in H)
@@ -367,7 +367,7 @@
if(O.flags & NODROP)
qdel(O) //they are already dead by now
H.unEquip(O)
O.loc = src.loc
O.loc = loc
O.throw_at(get_edge_target_turf(src,gib_throw_dir),rand(1,5),15)
sleep(1)
@@ -375,7 +375,7 @@
if(C.flags & NODROP)
qdel(C)
H.unEquip(C)
C.loc = src.loc
C.loc = loc
C.throw_at(get_edge_target_turf(src,gib_throw_dir),rand(1,5),15)
sleep(1)
@@ -385,7 +385,7 @@
var/spats = 0 //keeps track of how many items get spit out. Don't show a message if none are found.
for(var/obj/O in src)
if(istype(O))
O.loc = src.loc
O.loc = loc
O.throw_at(get_edge_target_turf(src,gib_throw_dir),rand(1,5),15)
spats++
sleep(1)
@@ -63,11 +63,11 @@ var/list/ingredients_source = list(
while(ingredients.len < 11)
ingredients.Add(5)
/obj/machinery/icecream_vat/attack_hand(mob/user as mob)
/obj/machinery/icecream_vat/attack_hand(mob/user)
user.set_machine(src)
interact(user)
/obj/machinery/icecream_vat/interact(mob/user as mob)
/obj/machinery/icecream_vat/interact(mob/user)
var/dat
dat += "<a href='?src=[UID()];dispense=[ICECREAM_VANILLA]'><b>Dispense vanilla icecream</b></a> There is [ingredients[ICECREAM_VANILLA]] scoops of vanilla icecream left (made from milk and ice).<br>"
dat += "<a href='?src=[UID()];dispense=[FLAVOUR_STRAWBERRY]'><b>Dispense strawberry icecream</b></a> There is [ingredients[FLAVOUR_STRAWBERRY]] dollops of strawberry flavouring left (obtained from berry juice.<br>"
@@ -91,7 +91,7 @@ var/list/ingredients_source = list(
popup.set_content(dat)
popup.open(0)
/obj/machinery/icecream_vat/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
/obj/machinery/icecream_vat/attackby(obj/item/O, mob/user, params)
if(istype(O, /obj/item/weapon/reagent_containers))
if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/icecream))
var/obj/item/weapon/reagent_containers/food/snacks/icecream/I = O
@@ -99,7 +99,7 @@ var/list/ingredients_source = list(
if(ingredients[ICECREAM_VANILLA] > 0)
var/flavour_name = get_icecream_flavour_string(dispense_flavour)
if(dispense_flavour < 11 && ingredients[dispense_flavour] > 0)
src.visible_message("[bicon(src)] <span class='info'>[user] scoops delicious [flavour_name] flavoured icecream into [I].</span>")
visible_message("[bicon(src)] <span class='info'>[user] scoops delicious [flavour_name] flavoured icecream into [I].</span>")
ingredients[dispense_flavour] -= 1
ingredients[ICECREAM_VANILLA] -= 1
@@ -127,7 +127,7 @@ var/list/ingredients_source = list(
else
var/obj/item/weapon/reagent_containers/R = O
if(R.reagents)
src.visible_message("<span class='info'>[user] has emptied all of [R] into [src].</span>")
visible_message("<span class='info'>[user] has emptied all of [R] into [src].</span>")
for(var/datum/reagent/current_reagent in R.reagents.reagent_list)
if(ingredients_source[current_reagent.id])
add(ingredients_source[current_reagent.id], current_reagent.volume / 2)
@@ -151,7 +151,7 @@ var/list/ingredients_source = list(
ingredients[INGR_FLOUR] -= amount
ingredients[INGR_SUGAR] -= amount
ingredients[CONE_WAFFLE] += amount
src.visible_message("<span class='info'>[user] cooks up some waffle cones.</span>")
visible_message("<span class='info'>[user] cooks up some waffle cones.</span>")
else
to_chat(user, "<span class='notice'>You require sugar and flour to make waffle cones.</span>")
if(CONE_CHOC)
@@ -160,7 +160,7 @@ var/list/ingredients_source = list(
ingredients[CONE_WAFFLE] -= amount
ingredients[FLAVOUR_CHOCOLATE] -= amount
ingredients[CONE_CHOC] += amount
src.visible_message("<span class='info'>[user] cooks up some chocolate cones.</span>")
visible_message("<span class='info'>[user] cooks up some chocolate cones.</span>")
else
to_chat(user, "<span class='notice'>You require waffle cones and chocolate flavouring to make chocolate cones.</span>")
if(ICECREAM_VANILLA)
@@ -169,7 +169,7 @@ var/list/ingredients_source = list(
ingredients[INGR_ICE] -= amount
ingredients[INGR_MILK] -= amount
ingredients[ICECREAM_VANILLA] += amount
src.visible_message("<span class='info'>[user] whips up some vanilla icecream.</span>")
visible_message("<span class='info'>[user] whips up some vanilla icecream.</span>")
else
to_chat(user, "<span class='notice'>You require milk and ice to make vanilla icecream.</span>")
updateDialog()
@@ -179,7 +179,7 @@ var/list/ingredients_source = list(
return
if(href_list["dispense"])
dispense_flavour = text2num(href_list["dispense"])
src.visible_message("\blue[usr] sets [src] to dispense [get_icecream_flavour_string(dispense_flavour)] flavoured icecream.")
visible_message("\blue[usr] sets [src] to dispense [get_icecream_flavour_string(dispense_flavour)] flavoured icecream.")
if(href_list["cone"])
var/dispense_cone = text2num(href_list["cone"])
@@ -187,11 +187,11 @@ var/list/ingredients_source = list(
var/cone_name = get_icecream_flavour_string(dispense_cone)
if(ingredients[dispense_cone] >= 1)
ingredients[dispense_cone] -= 1
var/obj/item/weapon/reagent_containers/food/snacks/icecream/I = new(src.loc)
var/obj/item/weapon/reagent_containers/food/snacks/icecream/I = new(loc)
I.cone_type = cone_name
I.icon_state = "icecream_cone_[cone_name]"
I.desc = "Delicious [cone_name] cone, but no ice cream."
src.visible_message("<span class='info'>[usr] dispenses a crunchy [cone_name] cone from [src].</span>")
visible_message("<span class='info'>[usr] dispenses a crunchy [cone_name] cone from [src].</span>")
else
to_chat(usr, "<span class='warning'>There are no [cone_name] cones left!</span>")
updateDialog()
@@ -202,7 +202,7 @@ var/list/ingredients_source = list(
if(href_list["eject"])
if(held_container)
held_container.forceMove(src.loc)
held_container.forceMove(loc)
held_container = null
updateDialog()
@@ -231,7 +231,7 @@ var/list/ingredients_source = list(
/obj/item/weapon/reagent_containers/food/snacks/icecream/proc/add_ice_cream(var/flavour)
var/flavour_name = get_icecream_flavour_string(flavour)
name = "[flavour_name] icecream"
src.overlays += "icecream_[flavour_name]"
overlays += "icecream_[flavour_name]"
desc = "Delicious [cone_type] cone with a dollop of [flavour_name] ice cream."
ice_creamed = 1
@@ -35,7 +35,7 @@
return
/obj/machinery/juicer/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
/obj/machinery/juicer/attackby(obj/item/O, mob/user, params)
if(istype(O,/obj/item/weapon/reagent_containers/glass) || \
istype(O,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass))
if(beaker)
@@ -46,9 +46,9 @@
return 0
O.forceMove(src)
beaker = O
src.verbs += /obj/machinery/juicer/verb/detach
verbs += /obj/machinery/juicer/verb/detach
update_icon()
src.updateUsrDialog()
updateUsrDialog()
return 0
if(!is_type_in_list(O, allowed_items))
to_chat(user, "It doesn't look like that contains any juice.")
@@ -57,24 +57,24 @@
to_chat(user, "<span class='notice'>\the [O] is stuck to your hand, you cannot put it in \the [src]</span>")
return 0
O.forceMove(src)
src.updateUsrDialog()
updateUsrDialog()
return 0
/obj/machinery/juicer/attack_ai(mob/user as mob)
/obj/machinery/juicer/attack_ai(mob/user)
return 0
/obj/machinery/juicer/attack_hand(mob/user as mob)
/obj/machinery/juicer/attack_hand(mob/user)
user.set_machine(src)
interact(user)
/obj/machinery/juicer/interact(mob/user as mob) // The microwave Menu
/obj/machinery/juicer/interact(mob/user) // The microwave Menu
var/is_chamber_empty = 0
var/is_beaker_ready = 0
var/processing_chamber = ""
var/beaker_contents = ""
for(var/i in allowed_items)
for(var/obj/item/O in src.contents)
for(var/obj/item/O in contents)
if(!istype(O,i))
continue
processing_chamber+= "some <B>[O]</B><BR>"
@@ -119,7 +119,7 @@
if("detach")
detach()
src.updateUsrDialog()
updateUsrDialog()
return
/obj/machinery/juicer/verb/detach()
@@ -130,8 +130,8 @@
return
if(!beaker)
return
src.verbs -= /obj/machinery/juicer/verb/detach
beaker.forceMove(src.loc)
verbs -= /obj/machinery/juicer/verb/detach
beaker.forceMove(loc)
beaker = null
update_icon()
@@ -159,8 +159,8 @@
return
if(!beaker || beaker.reagents.total_volume >= beaker.reagents.maximum_volume)
return
playsound(src.loc, 'sound/machines/juicer.ogg', 50, 1)
for(var/obj/item/weapon/reagent_containers/food/snacks/O in src.contents)
playsound(loc, 'sound/machines/juicer.ogg', 50, 1)
for(var/obj/item/weapon/reagent_containers/food/snacks/O in contents)
var/r_id = get_juice_id(O)
beaker.reagents.add_reagent(r_id,get_juice_amount(O))
qdel(O)
@@ -56,7 +56,7 @@
* Item Adding
********************/
/obj/machinery/kitchen_machine/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
/obj/machinery/kitchen_machine/attackby(obj/item/O, mob/user, params)
if(operating)
return
if(!broken && dirty < 100)
@@ -77,8 +77,8 @@
default_deconstruction_crowbar(O)
if(src.broken > 0)
if(src.broken == 2 && istype(O, /obj/item/weapon/screwdriver)) // If it's broken and they're using a screwdriver
if(broken > 0)
if(broken == 2 && istype(O, /obj/item/weapon/screwdriver)) // If it's broken and they're using a screwdriver
user.visible_message( \
"<span class='notice'>[user] starts to fix part of \the [src].</span>", \
"<span class='notice'>You start to fix part of \the [src].</span>" \
@@ -88,8 +88,8 @@
"<span class='notice'>[user] fixes part of \the [src].</span>", \
"<span class='notice'>You have fixed part of \the [src].</span>" \
)
src.broken = 1 // Fix it a bit
else if(src.broken == 1 && istype(O, /obj/item/weapon/wrench)) // If it's broken and they're doing the wrench
broken = 1 // Fix it a bit
else if(broken == 1 && istype(O, /obj/item/weapon/wrench)) // If it's broken and they're doing the wrench
user.visible_message( \
"<span class='notice'>[user] starts to fix part of \the [src].</span>", \
"<span class='notice'>You start to fix part of \the [src].</span>" \
@@ -99,14 +99,14 @@
"<span class='notice'>[user] fixes \the [src].</span>", \
"<span class='notice'>You have fixed \the [src].</span>" \
)
src.icon_state = off_icon
src.broken = 0 // Fix it!
src.dirty = 0 // just to be sure
src.flags = OPENCONTAINER
icon_state = off_icon
broken = 0 // Fix it!
dirty = 0 // just to be sure
flags = OPENCONTAINER
else
to_chat(user, "<span class='alert'>It's broken!</span>")
return 1
else if(src.dirty==100) // The machine is all dirty so can't be used!
else if(dirty==100) // The machine is all dirty so can't be used!
if(istype(O, /obj/item/weapon/reagent_containers/spray/cleaner) || istype(O, /obj/item/weapon/soap)) // If they're trying to clean it then let them
user.visible_message( \
"<span class='notice'>[user] starts to clean \the [src].</span>", \
@@ -117,10 +117,10 @@
"<span class='notice'>[user] has cleaned \the [src].</span>", \
"<span class='notice'>You have cleaned \the [src].</span>" \
)
src.dirty = 0 // It's clean!
src.broken = 0 // just to be sure
src.icon_state = off_icon
src.flags = OPENCONTAINER
dirty = 0 // It's clean!
broken = 0 // just to be sure
icon_state = off_icon
flags = OPENCONTAINER
else //Otherwise bad luck!!
to_chat(user, "<span class='alert'>It's dirty!</span>")
return 1
@@ -161,12 +161,12 @@
else
to_chat(user, "<span class='alert'>You have no idea what you can cook with this [O].</span>")
return 1
src.updateUsrDialog()
updateUsrDialog()
/obj/machinery/kitchen_machine/attack_ai(mob/user as mob)
/obj/machinery/kitchen_machine/attack_ai(mob/user)
return 0
/obj/machinery/kitchen_machine/attack_hand(mob/user as mob)
/obj/machinery/kitchen_machine/attack_hand(mob/user)
user.set_machine(src)
interact(user)
@@ -174,15 +174,15 @@
* Machine Menu *
********************/
/obj/machinery/kitchen_machine/interact(mob/user as mob) // The microwave Menu
/obj/machinery/kitchen_machine/interact(mob/user) // The microwave Menu
if(panel_open || !anchored)
return
var/dat = ""
if(src.broken > 0)
if(broken > 0)
dat = {"<TT>Bzzzzttttt</TT>"}
else if(src.operating)
dat = {"<TT>[pick(src.cook_verbs)] in progress!<BR>Please wait...!</TT>"}
else if(src.dirty==100)
else if(operating)
dat = {"<TT>[pick(cook_verbs)] in progress!<BR>Please wait...!</TT>"}
else if(dirty==100)
dat = {"<TT>This [src] is dirty!<BR>Please clean it before use!</TT>"}
else
var/list/items_counts = new
@@ -237,7 +237,7 @@
var/datum/browser/popup = new(user, name, name, 400, 400)
popup.set_content(dat)
popup.open(0)
onclose(user, "[src.name]")
onclose(user, "[name]")
return
@@ -298,14 +298,14 @@
byproduct = recipe.get_byproduct()
stop()
if(cooked)
cooked.forceMove(src.loc)
cooked.forceMove(loc)
for(var/i=1,i<efficiency,i++)
cooked = new cooked.type(loc)
if(byproduct)
new byproduct(loc)
return
/obj/machinery/kitchen_machine/proc/wzhzhzh(var/seconds as num)
/obj/machinery/kitchen_machine/proc/wzhzhzh(seconds)
for(var/i=1 to seconds)
if(stat & (NOPOWER|BROKEN))
return 0
@@ -323,54 +323,54 @@
return 0
/obj/machinery/kitchen_machine/proc/start()
src.visible_message("<span class='notice'>\The [src] turns on.</span>", "<span class='notice'>You hear \a [src].</span>")
src.operating = 1
src.icon_state = on_icon
src.updateUsrDialog()
visible_message("<span class='notice'>\The [src] turns on.</span>", "<span class='notice'>You hear \a [src].</span>")
operating = 1
icon_state = on_icon
updateUsrDialog()
/obj/machinery/kitchen_machine/proc/abort()
src.operating = 0 // Turn it off again aferwards
src.icon_state = off_icon
src.updateUsrDialog()
operating = 0 // Turn it off again aferwards
icon_state = off_icon
updateUsrDialog()
/obj/machinery/kitchen_machine/proc/stop()
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1)
src.operating = 0 // Turn it off again aferwards
src.icon_state = off_icon
src.updateUsrDialog()
playsound(loc, 'sound/machines/ding.ogg', 50, 1)
operating = 0 // Turn it off again aferwards
icon_state = off_icon
updateUsrDialog()
/obj/machinery/kitchen_machine/proc/dispose()
for(var/obj/O in contents)
O.forceMove(src.loc)
if(src.reagents.total_volume)
src.dirty++
src.reagents.clear_reagents()
O.forceMove(loc)
if(reagents.total_volume)
dirty++
reagents.clear_reagents()
to_chat(usr, "<span class='notice'>You dispose of \the [src]'s contents.</span>")
src.updateUsrDialog()
updateUsrDialog()
/obj/machinery/kitchen_machine/proc/muck_start()
playsound(src.loc, 'sound/effects/splat.ogg', 50, 1) // Play a splat sound
src.icon_state = dirty_icon // Make it look dirty!!
playsound(loc, 'sound/effects/splat.ogg', 50, 1) // Play a splat sound
icon_state = dirty_icon // Make it look dirty!!
/obj/machinery/kitchen_machine/proc/muck_finish()
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1)
src.visible_message("<span class='alert'>\The [src] gets covered in muck!</span>")
src.dirty = 100 // Make it dirty so it can't be used util cleaned
src.flags = null //So you can't add condiments
src.icon_state = dirty_icon // Make it look dirty too
src.operating = 0 // Turn it off again aferwards
src.updateUsrDialog()
playsound(loc, 'sound/machines/ding.ogg', 50, 1)
visible_message("<span class='alert'>\The [src] gets covered in muck!</span>")
dirty = 100 // Make it dirty so it can't be used util cleaned
flags = null //So you can't add condiments
icon_state = dirty_icon // Make it look dirty too
operating = 0 // Turn it off again aferwards
updateUsrDialog()
/obj/machinery/kitchen_machine/proc/broke()
var/datum/effect/system/spark_spread/s = new
s.set_up(2, 1, src)
s.start()
src.icon_state = broken_icon // Make it look all busted up and shit
src.visible_message("<span class='alert'>The [src] breaks!</span>") //Let them know they're stupid
src.broken = 2 // Make it broken so it can't be used util fixed
src.flags = null //So you can't add condiments
src.operating = 0 // Turn it off again aferwards
src.updateUsrDialog()
icon_state = broken_icon // Make it look all busted up and shit
visible_message("<span class='alert'>The [src] breaks!</span>") //Let them know they're stupid
broken = 2 // Make it broken so it can't be used util fixed
flags = null //So you can't add condiments
operating = 0 // Turn it off again aferwards
updateUsrDialog()
/obj/machinery/kitchen_machine/proc/fail()
var/obj/item/weapon/reagent_containers/food/snacks/badrecipe/ffuu = new(src)
@@ -382,7 +382,7 @@
if(id)
amount+=O.reagents.get_reagent_amount(id)
qdel(O)
src.reagents.clear_reagents()
reagents.clear_reagents()
ffuu.reagents.add_reagent("carbon", amount)
ffuu.reagents.add_reagent("????", amount/10)
ffuu.forceMove(get_turf(src))
@@ -392,8 +392,8 @@
return
usr.set_machine(src)
if(src.operating)
src.updateUsrDialog()
if(operating)
updateUsrDialog()
return
switch(href_list["action"])
@@ -33,7 +33,7 @@
cube_production = cubes_made
required_grind = req_grind
/obj/machinery/monkey_recycler/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
/obj/machinery/monkey_recycler/attackby(obj/item/O, mob/user, params)
if(default_deconstruction_screwdriver(user, "grinder_open", "grinder", O))
return
@@ -62,7 +62,7 @@
cycle_through = 0
to_chat(user, "<span class='notice'>You change the monkeycube type to [initial(cube_type.name)].</span>")
if(src.stat != 0) //NOPOWER etc
if(stat != 0) //NOPOWER etc
return
if(istype(O, /obj/item/weapon/grab))
var/obj/item/weapon/grab/G = O
@@ -76,11 +76,11 @@
user.drop_item()
qdel(target)
to_chat(user, "<span class='notice'>You stuff the monkey in the machine.</span>")
playsound(src.loc, 'sound/machines/juicer.ogg', 50, 1)
playsound(loc, 'sound/machines/juicer.ogg', 50, 1)
var/offset = prob(50) ? -2 : 2
animate(src, pixel_x = pixel_x + offset, time = 0.2, loop = 200) //start shaking
use_power(500)
src.grinded++
grinded++
sleep(50)
pixel_x = initial(pixel_x)
to_chat(user, "<span class='notice'>The machine now has [grinded] monkey\s worth of material stored.</span>")
@@ -90,15 +90,15 @@
to_chat(user, "<span class='warning'>The machine only accepts monkeys!</span>")
return
/obj/machinery/monkey_recycler/attack_hand(var/mob/user as mob)
if(src.stat != 0) //NOPOWER etc
/obj/machinery/monkey_recycler/attack_hand(mob/user)
if(stat != 0) //NOPOWER etc
return
if(grinded >= required_grind)
to_chat(user, "<span class='notice'>The machine hisses loudly as it condenses the grinded monkey meat. After a moment, it dispenses a brand new monkey cube.</span>")
playsound(src.loc, 'sound/machines/hiss.ogg', 50, 1)
playsound(loc, 'sound/machines/hiss.ogg', 50, 1)
grinded -= required_grind
for(var/i = 0, i < cube_production, i++) // Forgot to fix this bit the first time through
new cube_type(src.loc)
new cube_type(loc)
to_chat(user, "<span class='notice'>The machine's display flashes that it has [grinded] monkey\s worth of material left.</span>")
else // I'm not sure if the \s macro works with a word in between; I'll play it safe
to_chat(user, "<span class='warning'>The machine needs at least [required_grind] monkey\s worth of material to compress [cube_production] monkey\s. It only has [grinded].</span>")
@@ -60,7 +60,7 @@
food_choices.Remove(U)
for(var/U in subtypesof(/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
food_choices += V
return
/obj/machinery/cooking/candy
@@ -75,5 +75,5 @@
food_choices.Remove(U)
for(var/U in subtypesof(/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
food_choices += V
return
@@ -58,9 +58,9 @@
var/time = 40
/datum/food_processor_process/proc/process_food(loc, what, obj/machinery/processor/processor)
if(src.output && loc && processor)
if(output && loc && processor)
for(var/i = 0, i < processor.rating_amount, i++)
new src.output(loc)
new output(loc)
if(what)
qdel(what)
@@ -154,9 +154,9 @@
return P
return 0
/obj/machinery/processor/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
/obj/machinery/processor/attackby(obj/item/O, mob/user, params)
if(src.processing)
if(processing)
to_chat(user, "<span class='warning'>\the [src] is already processing something!</span>")
return 1
@@ -191,25 +191,25 @@
what.loc = src
return
/obj/machinery/processor/attack_hand(var/mob/user as mob)
/obj/machinery/processor/attack_hand(mob/user)
if(stat & (NOPOWER|BROKEN)) //no power or broken
return
if(src.processing)
if(processing)
to_chat(user, "<span class='warning'>\the [src] is already processing something!</span>")
return 1
if(src.contents.len == 0)
if(contents.len == 0)
to_chat(user, "<span class='warning'>\the [src] is empty.</span>")
return 1
src.processing = 1
processing = 1
user.visible_message("[user] turns on [src].", \
"<span class='notice'>You turn on [src].</span>", \
"<span class='italics'>You hear a food processor.</span>")
playsound(src.loc, 'sound/machines/blender.ogg', 50, 1)
playsound(loc, 'sound/machines/blender.ogg', 50, 1)
use_power(500)
var/total_time = 0
for(var/O in src.contents)
for(var/O in contents)
var/datum/food_processor_process/P = select_recipe(O)
if(!P)
log_debug("The [O] in processor([src]) does not have a suitable recipe, but it was somehow put inside of the processor anyways.")
@@ -217,14 +217,14 @@
total_time += P.time
sleep(total_time / rating_speed)
for(var/O in src.contents)
for(var/O in contents)
var/datum/food_processor_process/P = select_recipe(O)
if(!P)
log_debug("The [O] in processor([src]) does not have a suitable recipe, but it was somehow put inside of the processor anyways.")
continue
P.process_food(src.loc, O, src)
src.processing = 0
P.process_food(loc, O, src)
processing = 0
src.visible_message("<span class='notice'>\the [src] has finished processing.</span>", \
visible_message("<span class='notice'>\the [src] has finished processing.</span>", \
"<span class='notice'>\the [src] has finished processing.</span>", \
"<span class='notice'>You hear a food processor stopping.</span>")
@@ -53,7 +53,7 @@
A.forceMove(loc)
return ..()
/obj/machinery/smartfridge/proc/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/proc/accept_check(obj/item/O)
if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/grown/) || istype(O,/obj/item/seeds/))
return 1
return 0
@@ -66,7 +66,7 @@
icon_on = "seeds"
icon_off = "seeds-off"
/obj/machinery/smartfridge/seeds/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/seeds/accept_check(obj/item/O)
if(istype(O,/obj/item/seeds/))
return 1
return 0
@@ -77,7 +77,7 @@
icon_state = "smartfridge" //To fix the icon in the map editor.
icon_on = "smartfridge_chem"
/obj/machinery/smartfridge/medbay/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/medbay/accept_check(obj/item/O)
if(istype(O,/obj/item/weapon/reagent_containers/glass/))
return 1
if(istype(O,/obj/item/weapon/storage/pill_bottle/))
@@ -91,7 +91,7 @@
desc = "A refrigerated storage unit for slime extracts"
req_access_txt = "47"
/obj/machinery/smartfridge/secure/extract/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/secure/extract/accept_check(obj/item/O)
if(istype(O,/obj/item/slime_extract))
return 1
return 0
@@ -103,7 +103,7 @@
icon_on = "smartfridge_chem"
req_one_access_txt = "5;33"
/obj/machinery/smartfridge/secure/medbay/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/secure/medbay/accept_check(obj/item/O)
if(istype(O,/obj/item/weapon/reagent_containers/glass/))
return 1
if(istype(O,/obj/item/weapon/storage/pill_bottle/))
@@ -134,7 +134,7 @@
nanomanager.update_uis(src)
amount--
/obj/machinery/smartfridge/chemistry/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/chemistry/accept_check(obj/item/O)
if(istype(O,/obj/item/weapon/storage/pill_bottle) || istype(O,/obj/item/weapon/reagent_containers))
return 1
return 0
@@ -154,7 +154,7 @@
/obj/item/weapon/reagent_containers/glass/bottle/plasma = 1,
/obj/item/weapon/reagent_containers/glass/bottle/diphenhydramine = 1)
/obj/machinery/smartfridge/secure/chemistry/virology/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/secure/chemistry/virology/accept_check(obj/item/O)
if(istype(O, /obj/item/weapon/reagent_containers/syringe) || istype(O, /obj/item/weapon/reagent_containers/glass/bottle) || istype(O, /obj/item/weapon/reagent_containers/glass/beaker))
return 1
return 0
@@ -163,17 +163,17 @@
name = "\improper Drink Showcase"
desc = "A refrigerated storage unit for tasty tasty alcohol."
/obj/machinery/smartfridge/drinks/accept_check(var/obj/item/O as obj)
/obj/machinery/smartfridge/drinks/accept_check(obj/item/O)
if(istype(O,/obj/item/weapon/reagent_containers/glass) || istype(O,/obj/item/weapon/reagent_containers/food/drinks) || istype(O,/obj/item/weapon/reagent_containers/food/condiment))
return 1
/obj/machinery/smartfridge/process()
if(stat & (BROKEN|NOPOWER))
return
if(src.seconds_electrified > 0)
src.seconds_electrified--
if(src.shoot_inventory && prob(2))
src.throw_item()
if(seconds_electrified > 0)
seconds_electrified--
if(shoot_inventory && prob(2))
throw_item()
/obj/machinery/smartfridge/power_change()
var/old_stat = stat
@@ -192,9 +192,9 @@
* Item Adding
********************/
/obj/machinery/smartfridge/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/smartfridge/attackby(obj/item/O, mob/user)
if(istype(O, /obj/item/weapon/screwdriver) && anchored)
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
panel_open = !panel_open
to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.")
overlays.Cut()
@@ -271,20 +271,20 @@
return 1
return 0
/obj/machinery/smartfridge/attack_ai(mob/user as mob)
/obj/machinery/smartfridge/attack_ai(mob/user)
return 0
/obj/machinery/smartfridge/attack_ghost(mob/user as mob)
return src.attack_hand(user)
/obj/machinery/smartfridge/attack_ghost(mob/user)
return attack_hand(user)
/obj/machinery/smartfridge/attack_hand(mob/user as mob)
/obj/machinery/smartfridge/attack_hand(mob/user)
if(stat & (NOPOWER|BROKEN))
return
wires.Interact(user)
ui_interact(user)
//Drag pill bottle to fridge to empty it into the fridge
/obj/machinery/smartfridge/MouseDrop_T(obj/over_object as obj, mob/user as mob)
/obj/machinery/smartfridge/MouseDrop_T(obj/over_object, mob/user)
if(!istype(over_object, /obj/item/weapon/storage/pill_bottle)) //Only pill bottles, please
return
@@ -305,7 +305,7 @@
to_chat(user, "<span class='notice'>Some items are refused.</span>")
nanomanager.update_uis(src)
/obj/machinery/smartfridge/secure/emag_act(user as mob)
/obj/machinery/smartfridge/secure/emag_act(user)
emagged = 1
locked = -1
to_chat(user, "You short out the product lock on [src].")
@@ -314,7 +314,7 @@
* SmartFridge Menu
********************/
/obj/machinery/smartfridge/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
/obj/machinery/smartfridge/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = 1)
user.set_machine(src)
var/data[0]
@@ -336,7 +336,7 @@
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if(!ui)
ui = new(user, src, ui_key, "smartfridge.tmpl", src.name, 400, 500)
ui = new(user, src, ui_key, "smartfridge.tmpl", name, 400, 500)
ui.set_initial_data(data)
ui.open()
@@ -346,7 +346,7 @@
var/mob/user = usr
var/datum/nanoui/ui = nanomanager.get_open_ui(user, src, "main")
src.add_fingerprint(user)
add_fingerprint(user)
if(href_list["close"])
user.unset_machine()
@@ -387,7 +387,7 @@
item_quants[O]--
for(var/obj/T in contents)
if(T.name == O)
T.forceMove(src.loc)
T.forceMove(loc)
throw_item = T
break
break
@@ -395,7 +395,7 @@
return 0
spawn(0)
throw_item.throw_at(target,16,3,src)
src.visible_message("<span class='warning'>[src] launches [throw_item.name] at [target.name]!</span>")
visible_message("<span class='warning'>[src] launches [throw_item.name] at [target.name]!</span>")
return 1
/************************
@@ -78,6 +78,11 @@
items = list(/obj/item/weapon/reagent_containers/food/snacks/egg)
result = /obj/item/weapon/reagent_containers/food/snacks/candy/nougat
/datum/recipe/candy/nougat/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/candy/nougat/being_cooked = ..()
being_cooked.reagents.del_reagent("egg")
return being_cooked
// ***********************************************************
// Base Candy Recipes (unflavored / plain)
// ***********************************************************
@@ -89,6 +89,11 @@
)
result = /obj/item/weapon/reagent_containers/food/snacks/fishfingers
/datum/recipe/grill/fishfingers/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/fishfingers/being_cooked = ..()
being_cooked.reagents.del_reagent("egg")
return being_cooked
/datum/recipe/grill/cutlet
items = list(
/obj/item/weapon/reagent_containers/food/snacks/rawcutlet
@@ -205,10 +205,11 @@
reagents = list("water" = 5, "vodka" = 5)
fruit = list("amanita" = 3)
result = /obj/item/weapon/reagent_containers/food/snacks/amanitajelly
make_food(var/obj/container as obj)
var/obj/item/weapon/reagent_containers/food/snacks/amanitajelly/being_cooked = ..(container)
being_cooked.reagents.del_reagent("amanitin")
return being_cooked
/datum/recipe/microwave/amanitajelly/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/amanitajelly/being_cooked = ..()
being_cooked.reagents.del_reagent("amanitin")
return being_cooked
/datum/recipe/microwave/meatballsoup
reagents = list("water" = 10)
@@ -538,10 +539,11 @@ datum/recipe/microwave/slimesandwich
/datum/recipe/microwave/herbsalad
fruit = list("ambrosia" = 3, "apple" = 1)
result = /obj/item/weapon/reagent_containers/food/snacks/herbsalad
make_food(var/obj/container as obj)
var/obj/item/weapon/reagent_containers/food/snacks/herbsalad/being_cooked = ..(container)
being_cooked.reagents.del_reagent("toxin")
return being_cooked
/datum/recipe/microwave/herbsalad/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/herbsalad/being_cooked = ..()
being_cooked.reagents.del_reagent("toxin")
return being_cooked
/datum/recipe/microwave/aesirsalad
fruit = list("ambrosiadeus" = 3, "goldapple" = 1)
@@ -553,10 +555,11 @@ datum/recipe/microwave/slimesandwich
/obj/item/weapon/reagent_containers/food/snacks/meatball,
)
result = /obj/item/weapon/reagent_containers/food/snacks/validsalad
make_food(var/obj/container as obj)
var/obj/item/weapon/reagent_containers/food/snacks/validsalad/being_cooked = ..(container)
being_cooked.reagents.del_reagent("toxin")
return being_cooked
/datum/recipe/microwave/validsalad/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/validsalad/being_cooked = ..()
being_cooked.reagents.del_reagent("toxin")
return being_cooked
////////////////////////////FOOD ADDITTIONS///////////////////////////////
@@ -176,20 +176,22 @@
/obj/item/weapon/paper,
)
result = /obj/item/weapon/reagent_containers/food/snacks/fortunecookie
make_food(var/obj/container as obj)
/datum/recipe/oven/fortunecookie/make_food(obj/container)
var/obj/item/weapon/paper/paper = locate() in container
paper.loc = null //prevent deletion
var/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/being_cooked = ..()
paper.loc = being_cooked
being_cooked.trash = paper //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn
return being_cooked
/datum/recipe/oven/fortunecookie/check_items(obj/container)
. = ..()
if(.)
var/obj/item/weapon/paper/paper = locate() in container
paper.loc = null //prevent deletion
var/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/being_cooked = ..(container)
paper.loc = being_cooked
being_cooked.trash = paper //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn
return being_cooked
check_items(var/obj/container as obj)
. = ..()
if(.)
var/obj/item/weapon/paper/paper = locate() in container
if(!paper || !paper.info)
return -1
return .
if(!paper || !paper.info)
return -1
return .
/datum/recipe/oven/pizzamargherita
fruit = list("tomato" = 1)
@@ -293,6 +295,11 @@
)
result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/bread
/datum/recipe/oven/bread/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/sliceable/bread/being_cooked = ..()
being_cooked.reagents.del_reagent("egg")
return being_cooked
/datum/recipe/oven/applepie
fruit = list("apple" = 1)
items = list(
@@ -377,6 +384,11 @@
)
result = /obj/item/weapon/reagent_containers/food/snacks/appletart
/datum/recipe/oven/appletart/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/appletart/being_cooked = ..()
being_cooked.reagents.del_reagent("egg")
return being_cooked
/datum/recipe/oven/cracker
reagents = list("sodiumchloride" = 1)
items = list(
@@ -392,6 +404,11 @@
)
result = /obj/item/weapon/reagent_containers/food/snacks/sugarcookie
/datum/recipe/oven/sugarcookie/make_food(obj/container)
var/obj/item/weapon/reagent_containers/food/snacks/sugarcookie/being_cooked = ..()
being_cooked.reagents.del_reagent("egg")
return being_cooked
/datum/recipe/oven/flatbread
items = list(
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
@@ -80,12 +80,6 @@
icon_state = "pill8"
list_reagents = list("haloperidol" = 15)
/obj/item/weapon/reagent_containers/food/pill/paroxetine
name = "Paroxetine pill"
desc = "Heavy anti-depressant."
icon_state = "pill8"
list_reagents = list("paroxetine" = 15)
/obj/item/weapon/reagent_containers/food/pill/happy
name = "Happy pill"
desc = "Happy happy joy joy!"