The Over 9000 Food + Misc Update:

* Private meeting room attached to cafe!
* Starkist was somehow set to 0 in the vending machine. Fixed.
* Sleepy pen has been modified, it now puts people to sleep *near* instantly but only once. Cost increased slightly. Holds a signficantly lower amount of reagents. Might have to tone down the amount based on playtesting.
* Changed/removed some station radios that weren't loading properly (station radio frequencies cannot be set lower then 144.1 by default, FYI).
* Sodium now available from Chem Dispenser.
* New Condiment: Olive Oil (Graphic By Thedoorman). A bottle of it added to the kitchen (use wisely, there's only one).
* Minor food reagent tweaks. Now drinking too much soda will make you fat as well.
* New Device: Blender. It turns food items into reagents (Soybeans => Soy Milk, Berries => Berry Juice, Most grown items => Nutriment + Whatever, etc.) and acts as a container. Just stick the food items in, and select the "blend" option from the right-click menu.
* New Reagents: Universal Enzyme (Used in food production, a single bottle of it is in the kitchen), Soy Milk (Used in cooking, 

can be made from a blender or obtained from a carton in the food locker), Berry Juice (used to make wine and jelly donuts), Chloral Hydrate (a powerful sedative, treat it with anti-toxin. Won't always wake instantly but you up but you'll wake up faster)
* New food/drink items: Tofu
* New Reactions: Create Tofu (10 soy milk + 2 universal enzyme), Create Wine (5 Berry Juice + 2 Universal Enzyme), Create Moonshine (5 nutriment + 2 universal enzyme), Create Cheese Wheel (40 milk + 2 universal enzyme), Create Chloral Hydrate (3 chlorine + 1 water + 1 ethanol), Create Soysauce (1 soymilk + 1 sulfuric acid)
* Condiment containers now transfer 1 unit rather then 2. Beaker added to kitchen (to aid in mixing).
* Condiment bottles now work similarly to drinking glasses: They change based on their contents. A box of blank/empty ones can be found in the kitchen backroom and more can be ordered from the QM.
* Processor no longer produces hotsauce, coldsauce, or soysauce. Use a blender to make them instead. Because of this change, it now takes multiples of a particular item to fill a bottle. PROTIP: High potency chilis/icepeppers produce more condiment then low potency ones.
* ChemMaster added to kitchen backroom to "purify" blender mixtures, door to kitchen backroom from cafe room removed.
* New recipe: Tofu Bread (3 tofu + 3 flour + 3 cheese). Can be sliced just like meatbread.
* Microwave recipe changes: Instead adding entire containers full (or empty!) of reagents to the microwave, you instead just add a specific amount. For milk and sauces (berryjuice/ketchup/soy/hot/cold), it's 5 unit of the milk/sauce instead of 1 container. It's lenient with reagents so if you put in too much you'll be fine.
* Processor Change: No longer makes cheese wheels.
* Berry Jam replaced with berry juice in Jelly Donut recipes. Berry Jam removed entirely.

Note: Sorry if my new icons look like ass. Microwave/processor changes kind of half-assed. Intend to overhaul them next (more ROBUST!). Since a lot of kichen stuff is mess around, i'll update the wiki... soon.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@490 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
morikou@gmail.com
2010-11-24 23:49:45 +00:00
parent e23e3244b8
commit 34360b919f
19 changed files with 5627 additions and 5292 deletions
+1 -1
View File
@@ -10,7 +10,7 @@
icon_state = "dispenser"
var/energy = 25
var/max_energy = 25
var/list/dispensable_reagents = list("water","oxygen","nitrogen","hydrogen","potassium","mercury","sulfur","carbon","chlorine","fluorine","phosphorus","lithium","acid","radium","iron","aluminium","silicon","plasma","sugar","ethanol")
var/list/dispensable_reagents = list("water","oxygen","nitrogen","hydrogen","potassium","sodium","mercury","sulfur","carbon","chlorine","fluorine","phosphorus","lithium","acid","radium","iron","aluminium","silicon","plasma","sugar","ethanol")
proc
recharge()
+95 -11
View File
@@ -240,6 +240,8 @@ datum
holder.remove_reagent("cyanide", 1)
if(holder.has_reagent("amatoxin"))
holder.remove_reagent("amatoxin", 2)
if(holder.has_reagent("chloralhydrate"))
holder.remove_reagent("chloralhydrate", 5)
M:toxloss = max(M:toxloss-2,0)
..()
return
@@ -1035,12 +1037,30 @@ datum
..()
return
chloralhydrate //Otherwise known as a "Mickey Finn"
name = "Chloral Hydrate"
id = "chloralhydrate"
description = "A powerful sedative."
reagent_state = SOLID
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
if(!data) data = 1
switch(data)
if(1 to 50)
M:sleeping += 1
if(51 to INFINITY)
M:sleeping += 1
M:toxloss += (data - 50)
data++
..()
return
/////////////////////////Food Reagents////////////////////////////
// Part of the food code. It is used instead of the old "heal_amt" code. Also is where all the food
// condiments, additives, and such go.
nutriment
name = "Nutrition"
name = "Nutriment"
id = "nutriment"
description = "All the vitamins, minerals, and carbohydrates the body needs in pure form."
reagent_state = SOLID
@@ -1051,16 +1071,6 @@ datum
..()
return
berryjam
name = "Berry Jam"
id = "berryjam"
description = "A delightfully sweat flavor of some indescernible berry... you think."
reagent_state = LIQUID
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
M:nutrition++
..()
soysauce
name = "Soysauce"
id = "soysauce"
@@ -1141,9 +1151,61 @@ datum
if(!M) M = holder.my_atom
M:bruteloss--
M:fireloss--
M:nutrition++
..()
return
oliveoil
name = "Olive Oil"
id = "oliveoil"
description = "An oil derived from various types of olives. A famous export of Space Italy."
reagent_state = LIQUID
on_mob_life(var/mob/M)
M:nutrition += 20
..()
return
reaction_turf(var/turf/T, var/volume)
src = null
if(volume >= 3)
if(T:wet >= 1) return
T:wet = 1
if(T:wet_overlay)
T:overlays -= T:wet_overlay
T:wet_overlay = null
T:wet_overlay = image('water.dmi',T,"wet_floor")
T:overlays += T:wet_overlay
spawn(800)
if(T:wet >= 2) return
T:wet = 0
if(T:wet_overlay)
T:overlays -= T:wet_overlay
T:wet_overlay = null
var/hotspot = (locate(/obj/hotspot) in T)
if(hotspot)
var/datum/gas_mixture/lowertemp = T.remove_air( T:air:total_moles() )
lowertemp.temperature = max( min(lowertemp.temperature-2000,lowertemp.temperature / 2) ,0)
lowertemp.react()
T.assume_air(lowertemp)
del(hotspot)
enzyme
name = "Universal Enzyme"
id = "enzyme"
description = "A universal enzyme used in the preperation of certain chemicals and foods."
reagent_state = LIQUID
berryjuice
name = "Berry Juice"
id = "berryjuice"
description = "A delicious blend of several different kinds of berries."
reagent_state = LIQUID
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
M:nutrition++
..()
return
/////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////// DRINKS BELOW, Beer is up there though, along with cola. Cap'n Pete's Cuban Spiced Rum////////////////////////////////
@@ -1156,6 +1218,19 @@ datum
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
if(M:bruteloss && prob(10)) M:bruteloss--
M:nutrition++
..()
return
soymilk
name = "Soy Milk"
id = "soymilk"
description = "An opaque white liquid made from soybeans."
reagent_state = LIQUID
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
if(M:bruteloss && prob(10)) M:bruteloss--
M:nutrition++
..()
return
@@ -1183,6 +1258,7 @@ datum
on_mob_life(var/mob/M)
M:drowsyness = max(0,M:drowsyness-5)
M.bodytemperature = max(310, M.bodytemperature-5) //310 is the normal bodytemp. 310.055
M:nutrition += 5
..()
return
@@ -1196,6 +1272,7 @@ datum
M:sleeping = 0
M.bodytemperature = max(310, M.bodytemperature-5)
M.make_jittery(5)
M:nutrition += 3
..()
return
@@ -1209,6 +1286,7 @@ datum
M:sleeping = 0
M.bodytemperature = max(310, M.bodytemperature-5)
M.make_jittery(5)
M:nutrition += 2
if(!data) data = 1
data++
M.dizziness +=4
@@ -1228,6 +1306,7 @@ datum
on_mob_life(var/mob/M)
M:drowsyness = max(0,M:drowsyness-6)
M.bodytemperature = max(310, M.bodytemperature-5) //310 is the normal bodytemp. 310.055
M:nutrition += 5
..()
return
@@ -1238,6 +1317,7 @@ datum
reagent_state = LIQUID
on_mob_life(var/mob/M)
M.bodytemperature = max(310, M.bodytemperature-8) //310 is the normal bodytemp. 310.055
M:nutrition += 2
..()
return
@@ -1257,6 +1337,7 @@ datum
if(data >= 40 && prob(33))
if (!M:confused) M:confused = 1
M:confused += 2
M:nutrition += 2
..()
return
@@ -1421,6 +1502,7 @@ datum
if(M:bruteloss && prob(30)) M:bruteloss--
if(M:fireloss && prob(30)) M:fireloss--
if(M:toxloss && prob(30)) M:toxloss--
M:nutrition++
..()
return
@@ -1435,6 +1517,7 @@ datum
if(M:bruteloss && prob(20)) M:bruteloss--
if(M:fireloss && prob(20)) M:fireloss--
if(M:toxloss && prob(20)) M:toxloss--
M:nutrition++
..()
return
@@ -1449,6 +1532,7 @@ datum
if(M:bruteloss && prob(20)) M:bruteloss--
if(M:fireloss && prob(20)) M:fireloss--
if(M:toxloss && prob(20)) M:toxloss--
M:nutrition++
..()
return
+50
View File
@@ -304,6 +304,13 @@ datum
S.start()
return
chloralhydrate
name = "Chloral Hydrate"
id = "chloralhydrate"
result = "chloralhydrate"
required_reagents = list("ethanol" = 1, "chlorine" = 3, "water" = 1)
result_amount = 1
///////////////////////////////////////////////////////////////////////////////////
// foam and foam precursor
@@ -418,10 +425,53 @@ datum
result_amount = 5
//////////////////////////////////////////FOOD MIXTURES////////////////////////////////////
tofu
name = "Tofu"
id = "tofu"
result = null
required_reagents = list("soymilk" = 10, "enzyme" = 2)
result_amount = 1
on_reaction(var/datum/reagents/holder, var/created_volume)
var/location = get_turf(holder.my_atom)
new /obj/item/weapon/reagent_containers/food/snacks/tofu(location)
return
soysauce
name = "Soy Sauce"
id = "soysauce"
result = "soysauce"
required_reagents = list("soymilk" = 1, "acid" = 1)
result_amount = 2
cheesewheel
name = "Cheesewheel"
id = "cheesewheel"
result = null
required_reagents = list("milk" = 40, "enzyme" = 2)
result_amount = 1
on_reaction(var/datum/reagents/holder, var/created_volume)
var/location = get_turf(holder.my_atom)
new /obj/item/weapon/reagent_containers/food/snacks/cheesewheel(location)
return
////////////////////////////////////////// COCKTAILS //////////////////////////////////////
moonshine
name = "Moonshine"
id = "moonshine"
result = "moonshine"
required_reagents = list("nutriment" = 10, "enzyme" = 2)
result_amount = 5
wine
name = "Wine"
id = "wine"
result = "wine"
required_reagents = list("berryjuice" = 10, "enzyme" = 2)
result_amount = 5
gin_tonic
name = "Gin and Tonic"
id = "gintonic"
+148 -61
View File
@@ -1,5 +1,5 @@
// Bottles transfer 50 units
// Beakers transfer 30 units
// Beakers transfer 50 units
// Syringes transfer 15 units
// Droppers transfer 5 units
@@ -646,12 +646,14 @@
var/datum/reagents/R = new/datum/reagents(50) // if you want a food item with a different capacity
reagents = R // then just redefine it in the code for the specific food item.
R.my_atom = src
src.pixel_x = rand(-5.0, 5) //Randomizes postion slightly.
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment //Food items that aren't eaten normally and leave an empty container behind.
name = "condiment"
desc = "yummy"
name = "Condiment Container"
desc = "Just your average condiment container."
icon = 'food.dmi'
icon_state = null
icon_state = "emptycondiment"
flags = FPRINT | TABLEPASS | OPENCONTAINER
attackby(obj/item/weapon/W as obj, mob/user as mob)
@@ -719,7 +721,7 @@
user << "\red you can't add anymore to [target]."
return
var/trans = src.reagents.trans_to(target, 2)
var/trans = src.reagents.trans_to(target, 1)
user << "\blue You transfer [trans] units of the condiment to [target]."
@@ -754,7 +756,7 @@
reagents.reaction(M, INGEST)
spawn(5)
if(reagents.total_volume > bitesize)
var/temp_bitesize = max(reagents.total_volume /2, 1)
var/temp_bitesize = max(reagents.total_volume /2, bitesize)
reagents.trans_to(M, temp_bitesize)
else
reagents.trans_to(M, reagents.total_volume)
@@ -1014,6 +1016,26 @@
else
icon_state = "beaker0"
/obj/item/weapon/reagent_containers/glass/blender_jug
name = "Blender Jug"
desc = "A blender jug, part of a blender."
icon = 'kitchen.dmi'
icon_state = "blender_jug_e"
New()
var/datum/reagents/R = new/datum/reagents(100)
reagents = R
R.my_atom = src
on_reagent_change()
switch(src.reagents.total_volume)
if(0)
icon_state = "blender_jug_e"
if(1 to 75)
icon_state = "blender_jug_h"
if(76 to 100)
icon_state = "blender_jug_f"
/obj/item/weapon/reagent_containers/glass/large
name = "large reagent glass"
desc = "A large reagent glass."
@@ -1071,6 +1093,17 @@
..()
reagents.add_reagent("stoxin", 30)
/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate
name = "Chloral Hydrate Bottle"
desc = "A small bottle."
icon = 'chemical.dmi'
icon_state = "bottle20"
amount_per_transfer_from_this = 5
New()
..()
reagents.add_reagent("chloralhydrate", 15) //Intentionally low since it is so strong. Still enough to knock someone out.
/obj/item/weapon/reagent_containers/glass/bottle/antitoxin
name = "anti-toxin bottle"
desc = "A small bottle."
@@ -1653,6 +1686,15 @@
reagents.add_reagent("sugar", 4)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/tofu
name = "Tofu"
icon_state = "tofu"
desc = "We all love tofu."
New()
..()
reagents.add_reagent("nutriment", 6)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers
name = "Cheesie Honkers"
icon_state = "cheesie_honkers"
@@ -1662,62 +1704,88 @@
reagents.add_reagent("nutriment", 4)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/tofubread
name = "Tofubread"
icon_state = "Like meatbread but for vegans. Not guaranteed to give superpowers."
icon_state = "tofubread"
New()
..()
reagents.add_reagent("nutriment", 40)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/tofubreadslice
name = "Tofubread slice"
desc = "A slice of delicious tofubread."
icon_state = "tofubreadslice"
New()
..()
reagents.add_reagent("nutriment", 8)
bitesize = 2
///////////////////////////////////////////////Condiments
//Notes by Darem: The condiments food-subtype is for stuff you don't actually eat but you use to modify existing food. They all
// leave empty containers when used up and can be filled/re-filled with other items. However, they start already full with
// whatever substance they are designed for. Formatting almost identical to snacks except you don't have to worry about bite size.
// and such. Condiments should be either Liquids or Solids.
// leave empty containers when used up and can be filled/re-filled with other items. Formatting for first section is identical
// to mixed-drinks code. If you want an object that starts pre-loaded, you need to make it in addition to the other code.
/obj/item/weapon/reagent_containers/food/condiment/ketchup
name = "Ketchup"
desc = "You feel more American already."
icon_state = "ketchup"
/obj/item/weapon/reagent_containers/food/condiment
on_reagent_change()
if(icon_state == "saltshakersmall" || icon_state == "peppermillsmall")
return
if(reagents.reagent_list.len > 0)
switch(reagents.get_master_reagent_id())
if("ketchup")
name = "Ketchup"
desc = "You feel more American already."
icon_state = "ketchup"
if("capsaicin")
name = "Hotsauce"
desc = "You can almost TASTE the stomach ulcers now!"
icon_state = "hotsauce"
if("enzyme")
name = "Universal Enzyme"
desc = "Used in cooking various dishes."
icon_state = "enzyme"
if("soysauce")
name = "Soy Sauce"
desc = "A salty soy-based flavoring."
icon_state = "soysauce"
if("frostoil")
name = "Coldsauce"
desc = "Leaves the tongue numb in it's passage."
icon_state = "coldsauce"
if("sodiumchloride")
name = "Salt Shaker"
desc = "Salt. From space oceans, presumably."
icon_state = "saltshaker"
if("blackpepper")
name = "Pepper Mill"
desc = "Often used to flavor food or make people sneeze."
icon_state = "peppermillsmall"
if("oliveoil")
name = "Olive Oil"
desc = "A delicious oil used in cooking. Possibly made from space olives."
icon_state = "oliveoil"
else
name = "Misc Condiment Bottle"
desc = "A mixture of various condiments"
icon_state = "mixedcondiments"
else
icon_state = "emptycondiment"
name = "Condiment Bottle"
desc = "An empty condiment bottle."
return
/obj/item/weapon/reagent_containers/food/condiment/enzyme
name = "Universal Enzyme"
desc = "Used in cooking various dishes."
icon_state = "enzyme"
New()
..()
reagents.add_reagent("ketchup", 50)
reagents.add_reagent("enzyme", 50)
/obj/item/weapon/reagent_containers/food/condiment/hotsauce
name = "Hotsauce"
desc = "You can almost TASTE the stomach ulcers now!"
icon_state = "hotsauce"
New()
..()
reagents.add_reagent("capsaicin", 50)
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment/berryjam
name = "Berry Jam"
desc = "A delightfully sweat flavor of some indescernible berry... you think."
icon_state = "berryjam"
New()
..()
reagents.add_reagent("berryjam", 50)
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment/soysauce
name = "Soy Sauce"
desc = "A salty soy-based flavoring."
icon_state = "soysauce"
New()
..()
reagents.add_reagent("soysauce", 50)
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment/coldsauce
name = "Coldsauce"
desc = "Leaves the tongue numb in it's passage."
icon_state = "coldsauce"
New()
..()
reagents.add_reagent("frostoil", 50)
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment/saltshaker
name = "Salt Shaker"
/obj/item/weapon/reagent_containers/food/condiment/saltshaker //Seperate from above since it's a small shaker rather then
name = "Salt Shaker" // a large one.
desc = "Salt. From space oceans, presumably."
icon_state = "saltshakersmall"
New()
@@ -1725,8 +1793,6 @@
reagents = R
R.my_atom = src
reagents.add_reagent("sodiumchloride", 20)
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment/peppermill
name = "Pepper Mill"
@@ -1737,14 +1803,21 @@
reagents = R
R.my_atom = src
reagents.add_reagent("blackpepper", 20)
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
/obj/item/weapon/reagent_containers/food/condiment/oliveoil //Will remove this as soon as there is a way to make olive oil.
name = "Olive Oil"
desc = "A delicious oil used in cooking. Possibly made from space olives."
icon_state = "oliveoil" //redundant but added so it looks nicer on the map.
New()
..()
reagents.add_reagent("oliveoil", 50)
///////////////////////////////////////////////Drinks
//Notes by Darem: Drinks are simply containers that start preloaded. Unlike condiments, the contents can be ingested directly
// rather then having to add it to something else first. They should only contain liquids. They have a default container size of 50.
// Formatting is the same as condiments.
// Formatting is the same as food.
/obj/item/weapon/reagent_containers/food/drinks/milk
name = "Space Milk"
desc = "It's milk. White and nutritious goodness!"
@@ -1755,6 +1828,16 @@
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
/obj/item/weapon/reagent_containers/food/drinks/soymilk
name = "SoyMilk"
desc = "It's soy milk. White and nutritious goodness!"
icon_state = "soymilk"
New()
..()
reagents.add_reagent("soymilk", 50)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
/obj/item/weapon/reagent_containers/food/drinks/coffee
name = "Robust Coffee"
desc = "Careful, the beverage you're about to enjoy is extremely hot."
@@ -2325,6 +2408,10 @@
icon_state = "glass_clear"
name = "Glass of Water"
desc = "Are you really that boring?"
if("moonshine")
icon_state = "glass_clear"
name = "Moonshine"
desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
else
icon_state ="glass_brown"
name = "Glass of ..what?"