mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-26 01:52:15 +00:00
Merge resolution.
This commit is contained in:
@@ -72,6 +72,16 @@ datum
|
||||
handle_reactions()
|
||||
return total_transfered
|
||||
|
||||
get_master_reagent()
|
||||
var/the_reagent = null
|
||||
var/the_volume = 0
|
||||
for(var/datum/reagent/A in reagent_list)
|
||||
if(A.volume > the_volume)
|
||||
the_volume = A.volume
|
||||
the_reagent = A
|
||||
|
||||
return the_reagent
|
||||
|
||||
get_master_reagent_name()
|
||||
var/the_name = null
|
||||
var/the_volume = 0
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
#define LIQUID 2
|
||||
#define GAS 3
|
||||
|
||||
#define CHEM_DISPENSER_ENERGY_COST 0.1 //How many energy points do we use per unit of chemical?
|
||||
|
||||
/obj/machinery/chem_dispenser
|
||||
name = "chem dispenser"
|
||||
density = 1
|
||||
@@ -28,7 +30,7 @@
|
||||
var/oldenergy = energy
|
||||
energy = min(energy + addenergy, max_energy)
|
||||
if(energy != oldenergy)
|
||||
use_power(1500) // This thing uses up alot of power (this is still low as shit for creating reagents from thin air)
|
||||
use_power(CHEM_SYNTH_ENERGY / CHEM_DISPENSER_ENERGY_COST) // This thing uses up "alot" of power (this is still low as shit for creating reagents from thin air)
|
||||
nanomanager.update_uis(src) // update all UIs attached to src
|
||||
|
||||
/obj/machinery/chem_dispenser/power_change()
|
||||
@@ -137,8 +139,10 @@
|
||||
var/datum/reagents/R = B.reagents
|
||||
var/space = R.maximum_volume - R.total_volume
|
||||
|
||||
R.add_reagent(href_list["dispense"], min(amount, energy * 10, space))
|
||||
energy = max(energy - min(amount, energy * 10, space) / 10, 0)
|
||||
//uses 1 energy per 10 units.
|
||||
var/added_amount = min(amount, energy / CHEM_DISPENSER_ENERGY_COST, space)
|
||||
R.add_reagent(href_list["dispense"], added_amount)
|
||||
energy = max(energy - added_amount * CHEM_DISPENSER_ENERGY_COST, 0)
|
||||
|
||||
if(href_list["ejectBeaker"])
|
||||
if(beaker)
|
||||
@@ -168,9 +172,6 @@
|
||||
/obj/machinery/chem_dispenser/attack_ai(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/chem_dispenser/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/chem_dispenser/attack_hand(mob/user as mob)
|
||||
if(stat & BROKEN)
|
||||
return
|
||||
@@ -226,6 +227,24 @@
|
||||
dispensable_reagents -= list("goldschlager","patron","watermelonjuice","berryjuice")
|
||||
hackedcheck = 0
|
||||
return
|
||||
|
||||
/obj/machinery/chem_dispenser/meds
|
||||
name = "chem dispenser magic"
|
||||
density = 1
|
||||
anchored = 1
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "dispenser"
|
||||
use_power = 0
|
||||
idle_power_usage = 40
|
||||
ui_title = "Chem Dispenser 9000"
|
||||
energy = 100
|
||||
max_energy = 100
|
||||
amount = 30
|
||||
accept_glass = 0 //At 0 ONLY accepts glass containers. Kinda misleading varname.
|
||||
beaker = null
|
||||
recharged = 0
|
||||
hackedcheck = 0
|
||||
dispensable_reagents = list("inaprovaline","ryetalyn","paracetamol","tramadol","oxycodone","sterilizine","leporazine","kelotane","dermaline","dexalin","dexalinp","tricordrazine","anti_toxin","synaptizine","hyronalin","arithrazine","alkysine","imidazoline","peridaxon","bicaridine","hyperzine","rezadone","spaceacillin","ethylredoxrazine","stoxin","chloralhydrate","cryoxadone","clonexadone")
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -456,9 +475,6 @@
|
||||
/obj/machinery/chem_master/attack_ai(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/chem_master/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/chem_master/attack_hand(mob/user as mob)
|
||||
if(stat & BROKEN)
|
||||
return
|
||||
@@ -682,9 +698,6 @@
|
||||
/obj/machinery/computer/pandemic/attack_ai(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/pandemic/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/pandemic/attack_hand(mob/user as mob)
|
||||
if(stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
@@ -918,9 +931,6 @@
|
||||
src.updateUsrDialog()
|
||||
return 0
|
||||
|
||||
/obj/machinery/reagentgrinder/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/reagentgrinder/attack_ai(mob/user as mob)
|
||||
return 0
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
id = "methylphenidate"
|
||||
description = "Improves the ability to concentrate."
|
||||
reagent_state = LIQUID
|
||||
color = "#C8A5DC"
|
||||
color = "#BF80BF"
|
||||
custom_metabolism = 0.01
|
||||
data = 0
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
id = "citalopram"
|
||||
description = "Stabilizes the mind a little."
|
||||
reagent_state = LIQUID
|
||||
color = "#C8A5DC"
|
||||
color = "#FF80FF"
|
||||
custom_metabolism = 0.01
|
||||
data = 0
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
id = "paroxetine"
|
||||
description = "Stabilizes the mind greatly, but has a chance of adverse effects."
|
||||
reagent_state = LIQUID
|
||||
color = "#C8A5DC"
|
||||
color = "#FF80BF"
|
||||
custom_metabolism = 0.01
|
||||
data = 0
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -57,18 +57,16 @@
|
||||
cartridge = new /obj/item/weapon/dart_cartridge(src)
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/gun/dartgun/examine()
|
||||
set src in view()
|
||||
/obj/item/weapon/gun/dartgun/examine(mob/user)
|
||||
update_icon()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc)
|
||||
if (!..(user, 2))
|
||||
return
|
||||
if (beakers.len)
|
||||
usr << "\blue [src] contains:"
|
||||
user << "\blue [src] contains:"
|
||||
for(var/obj/item/weapon/reagent_containers/glass/beaker/B in beakers)
|
||||
if(B.reagents && B.reagents.reagent_list.len)
|
||||
for(var/datum/reagent/R in B.reagents.reagent_list)
|
||||
usr << "\blue [R.volume] units of [R.name]"
|
||||
user << "\blue [R.volume] units of [R.name]"
|
||||
|
||||
/obj/item/weapon/gun/dartgun/attackby(obj/item/I as obj, mob/user as mob)
|
||||
if(istype(I, /obj/item/weapon/dart_cartridge))
|
||||
|
||||
@@ -13,12 +13,9 @@
|
||||
var/max_grenades = 3
|
||||
matter = list("metal" = 2000)
|
||||
|
||||
examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
usr << "\icon [src] Grenade launcher:"
|
||||
usr << "\blue [grenades] / [max_grenades] Grenades."
|
||||
examine(mob/user)
|
||||
if(..(user, 2))
|
||||
user << "\blue [grenades] / [max_grenades] Grenades."
|
||||
|
||||
attackby(obj/item/I as obj, mob/user as mob)
|
||||
|
||||
|
||||
@@ -1,3 +1,17 @@
|
||||
/obj/item/weapon/storage/box/bloodpacks
|
||||
name = "blood packs bags"
|
||||
desc = "This box contains blood packs."
|
||||
icon_state = "sterile"
|
||||
New()
|
||||
..()
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
new /obj/item/weapon/reagent_containers/blood/empty(src)
|
||||
|
||||
/obj/item/weapon/reagent_containers/blood
|
||||
name = "BloodPack"
|
||||
desc = "Contains blood used for transfusion."
|
||||
|
||||
@@ -97,18 +97,17 @@
|
||||
user << "\blue Synthesizer is now producing '[R.name]'."
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/borghypo/examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
/obj/item/weapon/reagent_containers/borghypo/examine(mob/user)
|
||||
if(!..(user, 2))
|
||||
return
|
||||
|
||||
var/empty = 1
|
||||
|
||||
for(var/datum/reagents/RS in reagent_list)
|
||||
var/datum/reagent/R = locate() in RS.reagent_list
|
||||
if(R)
|
||||
usr << "\blue It currently has [R.volume] units of [R.name] stored."
|
||||
user << "\blue It currently has [R.volume] units of [R.name] stored."
|
||||
empty = 0
|
||||
|
||||
if(empty)
|
||||
usr << "\blue It is currently empty. Allow some time for the internal syntheszier to produce more."
|
||||
user << "\blue It is currently empty. Allow some time for the internal syntheszier to produce more."
|
||||
|
||||
@@ -84,20 +84,19 @@
|
||||
|
||||
return ..()
|
||||
|
||||
/* examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in range(0)) && usr!=src.loc) return
|
||||
/* examine(mob/user)
|
||||
if(!..(user, 1))
|
||||
return
|
||||
if(!reagents || reagents.total_volume==0)
|
||||
usr << "\blue \The [src] is empty!"
|
||||
user << "\blue \The [src] is empty!"
|
||||
else if (reagents.total_volume<=src.volume/4)
|
||||
usr << "\blue \The [src] is almost empty!"
|
||||
user << "\blue \The [src] is almost empty!"
|
||||
else if (reagents.total_volume<=src.volume*0.66)
|
||||
usr << "\blue \The [src] is half full!"
|
||||
user << "\blue \The [src] is half full!"
|
||||
else if (reagents.total_volume<=src.volume*0.90)
|
||||
usr << "\blue \The [src] is almost full!"
|
||||
user << "\blue \The [src] is almost full!"
|
||||
else
|
||||
usr << "\blue \The [src] is full!"*/
|
||||
user << "\blue \The [src] is full!"*/
|
||||
|
||||
|
||||
//DRINKS
|
||||
|
||||
@@ -122,20 +122,19 @@
|
||||
|
||||
return ..()
|
||||
|
||||
examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in range(0)) && usr!=src.loc) return
|
||||
examine(mob/user)
|
||||
if(!..(user, 1))
|
||||
return
|
||||
if(!reagents || reagents.total_volume==0)
|
||||
usr << "\blue \The [src] is empty!"
|
||||
user << "\blue \The [src] is empty!"
|
||||
else if (reagents.total_volume<=src.volume/4)
|
||||
usr << "\blue \The [src] is almost empty!"
|
||||
user << "\blue \The [src] is almost empty!"
|
||||
else if (reagents.total_volume<=src.volume*0.66)
|
||||
usr << "\blue \The [src] is half full!"
|
||||
user << "\blue \The [src] is half full!"
|
||||
else if (reagents.total_volume<=src.volume*0.90)
|
||||
usr << "\blue \The [src] is almost full!"
|
||||
user << "\blue \The [src] is almost full!"
|
||||
else
|
||||
usr << "\blue \The [src] is full!"
|
||||
user << "\blue \The [src] is full!"
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -16,593 +16,28 @@
|
||||
/*else if(reagents.reagent_list.len == 1)
|
||||
for(var/datum/reagent/R in reagents.reagent_list)
|
||||
switch(R.id)*/
|
||||
if (reagents.reagent_list.len > 0)
|
||||
//mrid = R.get_master_reagent_id()
|
||||
switch(reagents.get_master_reagent_id())
|
||||
if("beer")
|
||||
icon_state = "beerglass"
|
||||
name = "Beer glass"
|
||||
desc = "A freezing pint of beer"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("beer2")
|
||||
icon_state = "beerglass"
|
||||
name = "Beer glass"
|
||||
desc = "A freezing pint of beer"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("ale")
|
||||
icon_state = "aleglass"
|
||||
name = "Ale glass"
|
||||
desc = "A freezing pint of delicious Ale"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("milk")
|
||||
icon_state = "glass_white"
|
||||
name = "Glass of milk"
|
||||
desc = "White and nutritious goodness!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("cream")
|
||||
icon_state = "glass_white"
|
||||
name = "Glass of cream"
|
||||
desc = "Ewwww..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("chocolate")
|
||||
icon_state = "chocolateglass"
|
||||
name = "Glass of chocolate"
|
||||
desc = "Tasty"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("lemonjuice")
|
||||
icon_state = "lemonglass"
|
||||
name = "Glass of lemonjuice"
|
||||
desc = "Sour..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("cola")
|
||||
icon_state = "glass_brown"
|
||||
name = "Glass of Space Cola"
|
||||
desc = "A glass of refreshing Space Cola"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("nuka_cola")
|
||||
icon_state = "nuka_colaglass"
|
||||
name = "Nuka Cola"
|
||||
desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if("orangejuice")
|
||||
icon_state = "glass_orange"
|
||||
name = "Glass of Orange juice"
|
||||
desc = "Vitamins! Yay!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("tomatojuice")
|
||||
icon_state = "glass_red"
|
||||
name = "Glass of Tomato juice"
|
||||
desc = "Are you sure this is tomato juice?"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("blood")
|
||||
icon_state = "glass_red"
|
||||
name = "Glass of Tomato juice"
|
||||
desc = "Are you sure this is tomato juice?"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("limejuice")
|
||||
icon_state = "glass_green"
|
||||
name = "Glass of Lime juice"
|
||||
desc = "A glass of sweet-sour lime juice."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("whiskey")
|
||||
icon_state = "whiskeyglass"
|
||||
name = "Glass of whiskey"
|
||||
desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy."
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("gin")
|
||||
icon_state = "ginvodkaglass"
|
||||
name = "Glass of gin"
|
||||
desc = "A crystal clear glass of Griffeater gin."
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("vodka")
|
||||
icon_state = "ginvodkaglass"
|
||||
name = "Glass of vodka"
|
||||
desc = "The glass contain wodka. Xynta."
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("sake")
|
||||
icon_state = "ginvodkaglass"
|
||||
name = "Glass of Sake"
|
||||
desc = "A glass of Sake."
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("goldschlager")
|
||||
icon_state = "ginvodkaglass"
|
||||
name = "Glass of goldschlager"
|
||||
desc = "100 proof that teen girls will drink anything with gold in it."
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("wine")
|
||||
icon_state = "wineglass"
|
||||
name = "Glass of wine"
|
||||
desc = "A very classy looking drink."
|
||||
center_of_mass = list("x"=15, "y"=7)
|
||||
if("cognac")
|
||||
icon_state = "cognacglass"
|
||||
name = "Glass of cognac"
|
||||
desc = "Damn, you feel like some kind of French aristocrat just by holding this."
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
if ("kahlua")
|
||||
icon_state = "kahluaglass"
|
||||
name = "Glass of RR coffee Liquor"
|
||||
desc = "DAMN, THIS THING LOOKS ROBUST"
|
||||
center_of_mass = list("x"=15, "y"=7)
|
||||
if("vermouth")
|
||||
icon_state = "vermouthglass"
|
||||
name = "Glass of Vermouth"
|
||||
desc = "You wonder why you're even drinking this straight."
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("tequilla")
|
||||
icon_state = "tequillaglass"
|
||||
name = "Glass of Tequilla"
|
||||
desc = "Now all that's missing is the weird colored shades!"
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("patron")
|
||||
icon_state = "patronglass"
|
||||
name = "Glass of Patron"
|
||||
desc = "Drinking patron in the bar, with all the subpar ladies."
|
||||
center_of_mass = list("x"=7, "y"=8)
|
||||
if("rum")
|
||||
icon_state = "rumglass"
|
||||
name = "Glass of Rum"
|
||||
desc = "Now you want to Pray for a pirate suit, don't you?"
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("gintonic")
|
||||
icon_state = "gintonicglass"
|
||||
name = "Gin and Tonic"
|
||||
desc = "A mild but still great cocktail. Drink up, like a true Englishman."
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
if("whiskeycola")
|
||||
icon_state = "whiskeycolaglass"
|
||||
name = "Whiskey Cola"
|
||||
desc = "An innocent-looking mixture of cola and Whiskey. Delicious."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("whiterussian")
|
||||
icon_state = "whiterussianglass"
|
||||
name = "White Russian"
|
||||
desc = "A very nice looking drink. But that's just, like, your opinion, man."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("screwdrivercocktail")
|
||||
icon_state = "screwdriverglass"
|
||||
name = "Screwdriver"
|
||||
desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer."
|
||||
center_of_mass = list("x"=15, "y"=10)
|
||||
if("bloodymary")
|
||||
icon_state = "bloodymaryglass"
|
||||
name = "Bloody Mary"
|
||||
desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("martini")
|
||||
icon_state = "martiniglass"
|
||||
name = "Classic Martini"
|
||||
desc = "Damn, the bartender even stirred it, not shook it."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("vodkamartini")
|
||||
icon_state = "martiniglass"
|
||||
name = "Vodka martini"
|
||||
desc ="A bastardisation of the classic martini. Still great."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("gargleblaster")
|
||||
icon_state = "gargleblasterglass"
|
||||
name = "Pan-Galactic Gargle Blaster"
|
||||
desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy."
|
||||
center_of_mass = list("x"=17, "y"=6)
|
||||
if("bravebull")
|
||||
icon_state = "bravebullglass"
|
||||
name = "Brave Bull"
|
||||
desc = "Tequilla and Coffee liquor, brought together in a mouthwatering mixture. Drink up."
|
||||
center_of_mass = list("x"=15, "y"=8)
|
||||
if("tequillasunrise")
|
||||
icon_state = "tequillasunriseglass"
|
||||
name = "Tequilla Sunrise"
|
||||
desc = "Oh great, now you feel nostalgic about sunrises back on Terra..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("phoronspecial")
|
||||
icon_state = "toxinsspecialglass"
|
||||
name = "Toxins Special"
|
||||
desc = "Whoah, this thing is on FIRE"
|
||||
if("beepskysmash")
|
||||
icon_state = "beepskysmashglass"
|
||||
name = "Beepsky Smash"
|
||||
desc = "Heavy, hot and strong. Just like the Iron fist of the LAW."
|
||||
center_of_mass = list("x"=18, "y"=10)
|
||||
if("doctorsdelight")
|
||||
icon_state = "doctorsdelightglass"
|
||||
name = "Doctor's Delight"
|
||||
desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("manlydorf")
|
||||
icon_state = "manlydorfglass"
|
||||
name = "The Manly Dorf"
|
||||
desc = "A manly concotion made from Ale and Beer. Intended for true men only."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("irishcream")
|
||||
icon_state = "irishcreamglass"
|
||||
name = "Irish Cream"
|
||||
desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("cubalibre")
|
||||
icon_state = "cubalibreglass"
|
||||
name = "Cuba Libre"
|
||||
desc = "A classic mix of rum and cola."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("b52")
|
||||
icon_state = "b52glass"
|
||||
name = "B-52"
|
||||
desc = "Kahlua, Irish Cream, and congac. You will get bombed."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("atomicbomb")
|
||||
icon_state = "atomicbombglass"
|
||||
name = "Atomic Bomb"
|
||||
desc = "Nanotrasen cannot take legal responsibility for your actions after imbibing."
|
||||
center_of_mass = list("x"=15, "y"=7)
|
||||
if("longislandicedtea")
|
||||
icon_state = "longislandicedteaglass"
|
||||
name = "Long Island Iced Tea"
|
||||
desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("threemileisland")
|
||||
icon_state = "threemileislandglass"
|
||||
name = "Three Mile Island Ice Tea"
|
||||
desc = "A glass of this is sure to prevent a meltdown."
|
||||
center_of_mass = list("x"=16, "y"=2)
|
||||
if("margarita")
|
||||
icon_state = "margaritaglass"
|
||||
name = "Margarita"
|
||||
desc = "On the rocks with salt on the rim. Arriba~!"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("blackrussian")
|
||||
icon_state = "blackrussianglass"
|
||||
name = "Black Russian"
|
||||
desc = "For the lactose-intolerant. Still as classy as a White Russian."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("vodkatonic")
|
||||
icon_state = "vodkatonicglass"
|
||||
name = "Vodka and Tonic"
|
||||
desc = "For when a gin and tonic isn't russian enough."
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
if("manhattan")
|
||||
icon_state = "manhattanglass"
|
||||
name = "Manhattan"
|
||||
desc = "The Detective's undercover drink of choice. He never could stomach gin..."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("manhattan_proj")
|
||||
icon_state = "proj_manhattanglass"
|
||||
name = "Manhattan Project"
|
||||
desc = "A scienitst drink of choice, for thinking how to blow up the station."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("ginfizz")
|
||||
icon_state = "ginfizzglass"
|
||||
name = "Gin Fizz"
|
||||
desc = "Refreshingly lemony, deliciously dry."
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
if("irishcoffee")
|
||||
icon_state = "irishcoffeeglass"
|
||||
name = "Irish Coffee"
|
||||
desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning."
|
||||
center_of_mass = list("x"=15, "y"=10)
|
||||
if("hooch")
|
||||
icon_state = "glass_brown2"
|
||||
name = "Hooch"
|
||||
desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("whiskeysoda")
|
||||
icon_state = "whiskeysodaglass2"
|
||||
name = "Whiskey Soda"
|
||||
desc = "Ultimate refreshment."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("tonic")
|
||||
icon_state = "glass_clear"
|
||||
name = "Glass of Tonic Water"
|
||||
desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("sodawater")
|
||||
icon_state = "glass_clear"
|
||||
name = "Glass of Soda Water"
|
||||
desc = "Soda water. Why not make a scotch and soda?"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("water")
|
||||
icon_state = "glass_clear"
|
||||
name = "Glass of Water"
|
||||
desc = "The father of all refreshments."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("spacemountainwind")
|
||||
icon_state = "Space_mountain_wind_glass"
|
||||
name = "Glass of Space Mountain Wind"
|
||||
desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("thirteenloko")
|
||||
icon_state = "thirteen_loko_glass"
|
||||
name = "Glass of Thirteen Loko"
|
||||
desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("dr_gibb")
|
||||
icon_state = "dr_gibb_glass"
|
||||
name = "Glass of Dr. Gibb"
|
||||
desc = "Dr. Gibb. Not as dangerous as the name might imply."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("space_up")
|
||||
icon_state = "space-up_glass"
|
||||
name = "Glass of Space-up"
|
||||
desc = "Space-up. It helps keep your cool."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
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."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("soymilk")
|
||||
icon_state = "glass_white"
|
||||
name = "Glass of soy milk"
|
||||
desc = "White and nutritious soy goodness!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("berryjuice")
|
||||
icon_state = "berryjuice"
|
||||
name = "Glass of berry juice"
|
||||
desc = "Berry juice. Or maybe its jam. Who cares?"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("poisonberryjuice")
|
||||
icon_state = "poisonberryjuice"
|
||||
name = "Glass of poison berry juice"
|
||||
desc = "A glass of deadly juice."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("carrotjuice")
|
||||
icon_state = "carrotjuice"
|
||||
name = "Glass of carrot juice"
|
||||
desc = "It is just like a carrot but without crunching."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("banana")
|
||||
icon_state = "banana"
|
||||
name = "Glass of banana juice"
|
||||
desc = "The raw essence of a banana. HONK"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("bahama_mama")
|
||||
icon_state = "bahama_mama"
|
||||
name = "Bahama Mama"
|
||||
desc = "Tropic cocktail"
|
||||
center_of_mass = list("x"=16, "y"=5)
|
||||
if("singulo")
|
||||
icon_state = "singulo"
|
||||
name = "Singulo"
|
||||
desc = "A blue-space beverage."
|
||||
center_of_mass = list("x"=17, "y"=4)
|
||||
if("alliescocktail")
|
||||
icon_state = "alliescocktail"
|
||||
name = "Allies cocktail"
|
||||
desc = "A drink made from your allies."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("antifreeze")
|
||||
icon_state = "antifreeze"
|
||||
name = "Anti-freeze"
|
||||
desc = "The ultimate refreshment."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("barefoot")
|
||||
icon_state = "b&p"
|
||||
name = "Barefoot"
|
||||
desc = "Barefoot and pregnant"
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("demonsblood")
|
||||
icon_state = "demonsblood"
|
||||
name = "Demons Blood"
|
||||
desc = "Just looking at this thing makes the hair at the back of your neck stand up."
|
||||
center_of_mass = list("x"=16, "y"=2)
|
||||
if("booger")
|
||||
icon_state = "booger"
|
||||
name = "Booger"
|
||||
desc = "Ewww..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("snowwhite")
|
||||
icon_state = "snowwhite"
|
||||
name = "Snow White"
|
||||
desc = "A cold refreshment."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("aloe")
|
||||
icon_state = "aloe"
|
||||
name = "Aloe"
|
||||
desc = "Very, very, very good."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("andalusia")
|
||||
icon_state = "andalusia"
|
||||
name = "Andalusia"
|
||||
desc = "A nice, strange named drink."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("sbiten")
|
||||
icon_state = "sbitenglass"
|
||||
name = "Sbiten"
|
||||
desc = "A spicy mix of Vodka and Spice. Very hot."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("red_mead")
|
||||
icon_state = "red_meadglass"
|
||||
name = "Red Mead"
|
||||
desc = "A True Vikings Beverage, though its color is strange."
|
||||
center_of_mass = list("x"=17, "y"=10)
|
||||
if("mead")
|
||||
icon_state = "meadglass"
|
||||
name = "Mead"
|
||||
desc = "A Vikings Beverage, though a cheap one."
|
||||
center_of_mass = list("x"=17, "y"=10)
|
||||
if("iced_beer")
|
||||
icon_state = "iced_beerglass"
|
||||
name = "Iced Beer"
|
||||
desc = "A beer so frosty, the air around it freezes."
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
if("grog")
|
||||
icon_state = "grogglass"
|
||||
name = "Grog"
|
||||
desc = "A fine and cepa drink for Space."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("soy_latte")
|
||||
icon_state = "soy_latte"
|
||||
name = "Soy Latte"
|
||||
desc = "A nice and refrshing beverage while you are reading."
|
||||
center_of_mass = list("x"=15, "y"=9)
|
||||
if("cafe_latte")
|
||||
icon_state = "cafe_latte"
|
||||
name = "Cafe Latte"
|
||||
desc = "A nice, strong and refreshing beverage while you are reading."
|
||||
center_of_mass = list("x"=15, "y"=9)
|
||||
if("acidspit")
|
||||
icon_state = "acidspitglass"
|
||||
name = "Acid Spit"
|
||||
desc = "A drink from Nanotrasen. Made from live aliens."
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
if("amasec")
|
||||
icon_state = "amasecglass"
|
||||
name = "Amasec"
|
||||
desc = "Always handy before COMBAT!!!"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("neurotoxin")
|
||||
icon_state = "neurotoxinglass"
|
||||
name = "Neurotoxin"
|
||||
desc = "A drink that is guaranteed to knock you silly."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("hippiesdelight")
|
||||
icon_state = "hippiesdelightglass"
|
||||
name = "Hippie's Delight"
|
||||
desc = "A drink enjoyed by people during the 1960's."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("bananahonk")
|
||||
icon_state = "bananahonkglass"
|
||||
name = "Banana Honk"
|
||||
desc = "A drink from Banana Heaven."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("silencer")
|
||||
icon_state = "silencerglass"
|
||||
name = "Silencer"
|
||||
desc = "A drink from mime Heaven."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("nothing")
|
||||
icon_state = "nothing"
|
||||
name = "Nothing"
|
||||
desc = "Absolutely nothing."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("devilskiss")
|
||||
icon_state = "devilskiss"
|
||||
name = "Devils Kiss"
|
||||
desc = "Creepy time!"
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("changelingsting")
|
||||
icon_state = "changelingsting"
|
||||
name = "Changeling Sting"
|
||||
desc = "A stingy drink."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("irishcarbomb")
|
||||
icon_state = "irishcarbomb"
|
||||
name = "Irish Car Bomb"
|
||||
desc = "An irish car bomb."
|
||||
center_of_mass = list("x"=16, "y"=8)
|
||||
if("syndicatebomb")
|
||||
icon_state = "syndicatebomb"
|
||||
name = "Syndicate Bomb"
|
||||
desc = "A syndicate bomb."
|
||||
center_of_mass = list("x"=16, "y"=4)
|
||||
if("erikasurprise")
|
||||
icon_state = "erikasurprise"
|
||||
name = "Erika Surprise"
|
||||
desc = "The surprise is, it's green!"
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("driestmartini")
|
||||
icon_state = "driestmartiniglass"
|
||||
name = "Driest Martini"
|
||||
desc = "Only for the experienced. You think you see sand floating in the glass."
|
||||
center_of_mass = list("x"=17, "y"=8)
|
||||
if("ice")
|
||||
icon_state = "iceglass"
|
||||
name = "Glass of ice"
|
||||
desc = "Generally, you're supposed to put something else in there too..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("icecoffee")
|
||||
icon_state = "icedcoffeeglass"
|
||||
name = "Iced Coffee"
|
||||
desc = "A drink to perk you up and refresh you!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("coffee")
|
||||
icon_state = "glass_brown"
|
||||
name = "Glass of coffee"
|
||||
desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("bilk")
|
||||
icon_state = "glass_brown"
|
||||
name = "Glass of bilk"
|
||||
desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("fuel")
|
||||
icon_state = "dr_gibb_glass"
|
||||
name = "Glass of welder fuel"
|
||||
desc = "Unless you are an industrial tool, this is probably not safe for consumption."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("brownstar")
|
||||
icon_state = "brownstar"
|
||||
name = "Brown Star"
|
||||
desc = "It's not what it sounds like..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("grapejuice")
|
||||
icon_state = "grapejuice"
|
||||
name = "Glass of grape juice"
|
||||
desc = "It's grrrrrape!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("grapesoda")
|
||||
icon_state = "grapesoda"
|
||||
name = "Can of Grape Soda"
|
||||
desc = "Looks like a delicious drank!"
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("icetea")
|
||||
icon_state = "icedteaglass"
|
||||
name = "Iced Tea"
|
||||
desc = "No relation to a certain rap artist/ actor."
|
||||
center_of_mass = list("x"=15, "y"=10)
|
||||
if("grenadine")
|
||||
icon_state = "grenadineglass"
|
||||
name = "Glass of grenadine syrup"
|
||||
desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks."
|
||||
center_of_mass = list("x"=17, "y"=6)
|
||||
if("milkshake")
|
||||
icon_state = "milkshake"
|
||||
name = "Milkshake"
|
||||
desc = "Glorious brainfreezing mixture."
|
||||
center_of_mass = list("x"=16, "y"=7)
|
||||
if("lemonade")
|
||||
icon_state = "lemonadeglass"
|
||||
name = "Lemonade"
|
||||
desc = "Oh the nostalgia..."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if("kiraspecial")
|
||||
icon_state = "kiraspecial"
|
||||
name = "Kira Special"
|
||||
desc = "Long live the guy who everyone had mistaken for a girl. Baka!"
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
if("rewriter")
|
||||
icon_state = "rewriter"
|
||||
name = "Rewriter"
|
||||
desc = "The secret of the sanctuary of the Libarian..."
|
||||
center_of_mass = list("x"=16, "y"=9)
|
||||
if("suidream")
|
||||
icon_state = "sdreamglass"
|
||||
name = "Sui Dream"
|
||||
desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame."
|
||||
center_of_mass = list("x"=16, "y"=5)
|
||||
if("melonliquor")
|
||||
icon_state = "emeraldglass"
|
||||
name = "Glass of Melon Liquor"
|
||||
desc = "A relatively sweet and fruity 46 proof liquor."
|
||||
center_of_mass = list("x"=16, "y"=5)
|
||||
if("bluecuracao")
|
||||
icon_state = "curacaoglass"
|
||||
name = "Glass of Blue Curacao"
|
||||
desc = "Exotically blue, fruity drink, distilled from oranges."
|
||||
center_of_mass = list("x"=16, "y"=5)
|
||||
if("absinthe")
|
||||
icon_state = "absintheglass"
|
||||
name = "Glass of Absinthe"
|
||||
desc = "Wormwood, anise, oh my."
|
||||
center_of_mass = list("x"=16, "y"=5)
|
||||
if("pwine")
|
||||
icon_state = "pwineglass"
|
||||
name = "Glass of ???"
|
||||
desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?"
|
||||
center_of_mass = list("x"=16, "y"=5)
|
||||
else
|
||||
icon_state ="glass_brown"
|
||||
name = "Glass of ..what?"
|
||||
desc = "You can't really tell what this is."
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
if (reagents.reagent_list.len > 0)
|
||||
var/datum/reagent/R = reagents.get_master_reagent()
|
||||
|
||||
if(R.glass_icon_state)
|
||||
icon_state = R.glass_icon_state
|
||||
else
|
||||
icon_state = "glass_brown"
|
||||
|
||||
if(R.glass_name)
|
||||
name = R.glass_name
|
||||
else
|
||||
name = "Glass of.. what?"
|
||||
|
||||
if(R.glass_desc)
|
||||
desc = R.glass_desc
|
||||
else
|
||||
desc = "You can't really tell what this is."
|
||||
|
||||
if(R.glass_center_of_mass)
|
||||
center_of_mass = R.glass_center_of_mass
|
||||
else
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
else
|
||||
icon_state = "glass_empty"
|
||||
name = "glass"
|
||||
|
||||
@@ -71,17 +71,17 @@
|
||||
|
||||
name = lowertext("[fullname] sandwich")
|
||||
if(length(name) > 80) name = "[pick(list("absurd","colossal","enormous","ridiculous"))] sandwich"
|
||||
w_class = n_ceil(Clamp((ingredients.len/2),1,3))
|
||||
w_class = n_ceil(Clamp((ingredients.len/2),2,4))
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/Del()
|
||||
for(var/obj/item/O in ingredients)
|
||||
del(O)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/examine()
|
||||
..()
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/examine(mob/user)
|
||||
..(user)
|
||||
var/obj/item/O = pick(contents)
|
||||
usr << "\blue You think you can see [O.name] in there."
|
||||
user << "\blue You think you can see [O.name] in there."
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/csandwich/attack(mob/M as mob, mob/user as mob, def_zone)
|
||||
|
||||
@@ -98,4 +98,4 @@
|
||||
if(H && shard && M == user) //This needs a check for feeding the food to other people, but that could be abusable.
|
||||
H << "\red You lacerate your mouth on a [shard.name] in the sandwich!"
|
||||
H.adjustBruteLoss(5) //TODO: Target head if human.
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -10,14 +10,13 @@
|
||||
var/slice_path
|
||||
var/slices_num
|
||||
center_of_mass = list("x"=15, "y"=15)
|
||||
w_class = 2
|
||||
|
||||
//Placeholder for effect that trigger on eating that aren't tied to reagents.
|
||||
/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M)
|
||||
if(!usr) return
|
||||
if(!reagents.total_volume)
|
||||
if(M == usr)
|
||||
usr << "<span class='notice'>You finish eating \the [src].</span>"
|
||||
M.visible_message("<span class='notice'>[M] finishes eating \the [src].</span>")
|
||||
M.visible_message("<span class='notice'>[M] finishes eating \the [src].</span>","<span class='notice'>You finish eating \the [src].</span>")
|
||||
usr.drop_from_inventory(src) //so icons update :[
|
||||
|
||||
if(trash)
|
||||
@@ -110,27 +109,25 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/afterattack(obj/target, mob/user, proximity)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in range(0)) && usr!=src.loc) return
|
||||
/obj/item/weapon/reagent_containers/food/snacks/examine(mob/user)
|
||||
if(!..(user, 1))
|
||||
return
|
||||
if (bitecount==0)
|
||||
return
|
||||
else if (bitecount==1)
|
||||
usr << "\blue \The [src] was bitten by someone!"
|
||||
user << "\blue \The [src] was bitten by someone!"
|
||||
else if (bitecount<=3)
|
||||
usr << "\blue \The [src] was bitten [bitecount] times!"
|
||||
user << "\blue \The [src] was bitten [bitecount] times!"
|
||||
else
|
||||
usr << "\blue \The [src] was bitten multiple times!"
|
||||
user << "\blue \The [src] was bitten multiple times!"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
..() // -> item/attackby()
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
..() // -> item/attackby()
|
||||
return
|
||||
|
||||
// Eating with forks
|
||||
if(istype(W,/obj/item/weapon/kitchen/utensil))
|
||||
|
||||
var/obj/item/weapon/kitchen/utensil/U = W
|
||||
|
||||
if(!U.reagents)
|
||||
@@ -158,64 +155,45 @@
|
||||
del(src)
|
||||
return
|
||||
|
||||
if((slices_num <= 0 || !slices_num) || !slice_path)
|
||||
return 0
|
||||
if (is_sliceable())
|
||||
//these are used to allow hiding edge items in food that is not on a table/tray
|
||||
var/can_slice_here = isturf(src.loc) && ((locate(/obj/structure/table) in src.loc) || (locate(/obj/machinery/optable) in src.loc) || (locate(/obj/item/weapon/tray) in src.loc))
|
||||
var/hide_item = !has_edge(W) || !can_slice_here
|
||||
|
||||
var/inaccurate = 0
|
||||
if( \
|
||||
istype(W, /obj/item/weapon/kitchenknife) || \
|
||||
istype(W, /obj/item/weapon/butch) || \
|
||||
istype(W, /obj/item/weapon/scalpel) || \
|
||||
istype(W, /obj/item/weapon/kitchen/utensil/knife) \
|
||||
)
|
||||
else if( \
|
||||
istype(W, /obj/item/weapon/circular_saw) || \
|
||||
istype(W, /obj/item/weapon/melee/energy/sword) && W:active || \
|
||||
istype(W, /obj/item/weapon/melee/energy/blade) || \
|
||||
istype(W, /obj/item/weapon/shovel) || \
|
||||
istype(W, /obj/item/weapon/hatchet) \
|
||||
)
|
||||
inaccurate = 1
|
||||
else if(W.w_class <= 2 && istype(src,/obj/item/weapon/reagent_containers/food/snacks/sliceable))
|
||||
if(!iscarbon(user))
|
||||
return 1
|
||||
user << "\red You slip [W] inside [src]."
|
||||
user.u_equip(W)
|
||||
if ((user.client && user.s_active != src))
|
||||
user.client.screen -= W
|
||||
W.dropped(user)
|
||||
add_fingerprint(user)
|
||||
contents += W
|
||||
return
|
||||
else
|
||||
return 1
|
||||
if ( \
|
||||
!isturf(src.loc) || \
|
||||
!(locate(/obj/structure/table) in src.loc) && \
|
||||
!(locate(/obj/machinery/optable) in src.loc) && \
|
||||
!(locate(/obj/item/weapon/tray) in src.loc) \
|
||||
)
|
||||
user << "\red You cannot slice [src] here! You need a table or at least a tray to do it."
|
||||
return 1
|
||||
var/slices_lost = 0
|
||||
if (!inaccurate)
|
||||
user.visible_message( \
|
||||
"\blue [user] slices \the [src]!", \
|
||||
"\blue You slice \the [src]!" \
|
||||
)
|
||||
else
|
||||
user.visible_message( \
|
||||
"\blue [user] crudely slices \the [src] with [W]!", \
|
||||
"\blue You crudely slice \the [src] with your [W]!" \
|
||||
)
|
||||
slices_lost = rand(1,min(1,round(slices_num/2)))
|
||||
var/reagents_per_slice = reagents.total_volume/slices_num
|
||||
for(var/i=1 to (slices_num-slices_lost))
|
||||
var/obj/slice = new slice_path (src.loc)
|
||||
reagents.trans_to(slice,reagents_per_slice)
|
||||
del(src)
|
||||
if (hide_item)
|
||||
if (W.w_class >= src.w_class || W.is_robot_module())
|
||||
return
|
||||
|
||||
return
|
||||
user << "\red You slip [W] inside [src]."
|
||||
user.u_equip(W)
|
||||
if ((user.client && user.s_active != src))
|
||||
user.client.screen -= W
|
||||
W.dropped(user)
|
||||
add_fingerprint(user)
|
||||
contents += W
|
||||
return
|
||||
|
||||
if (has_edge(W))
|
||||
if (!can_slice_here)
|
||||
user << "\red You cannot slice [src] here! You need a table or at least a tray to do it."
|
||||
return
|
||||
|
||||
var/slices_lost = 0
|
||||
if (W.w_class > 3)
|
||||
user.visible_message("\blue [user] crudely slices \the [src] with [W]!", "\blue You crudely slice \the [src] with your [W]!")
|
||||
slices_lost = rand(1,min(1,round(slices_num/2)))
|
||||
else
|
||||
user.visible_message("\blue [user] slices \the [src]!", "\blue You slice \the [src]!")
|
||||
|
||||
var/reagents_per_slice = reagents.total_volume/slices_num
|
||||
for(var/i=1 to (slices_num-slices_lost))
|
||||
var/obj/slice = new slice_path (src.loc)
|
||||
reagents.trans_to(slice,reagents_per_slice)
|
||||
del(src)
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/proc/is_sliceable()
|
||||
return (slices_num && slice_path && slices_num > 0)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/Del()
|
||||
if(contents)
|
||||
@@ -223,39 +201,21 @@
|
||||
something.loc = get_turf(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/attack_animal(var/mob/M)
|
||||
if(isanimal(M))
|
||||
if(iscorgi(M))
|
||||
if(bitecount == 0 || prob(50))
|
||||
M.emote("nibbles away at the [src]")
|
||||
bitecount++
|
||||
if(bitecount >= 5)
|
||||
var/sattisfaction_text = pick("burps from enjoyment", "yaps for more", "woofs twice", "looks at the area where the [src] was")
|
||||
if(sattisfaction_text)
|
||||
M.emote("[sattisfaction_text]")
|
||||
del(src)
|
||||
if(ismouse(M))
|
||||
var/mob/living/simple_animal/mouse/N = M
|
||||
N << text("\blue You nibble away at [src].")
|
||||
if(prob(50))
|
||||
N.visible_message("[N] nibbles away at [src].", "")
|
||||
//N.emote("nibbles away at the [src]")
|
||||
N.health = min(N.health + 1, N.maxHealth)
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// FOOD END
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/attack_generic(var/mob/living/user)
|
||||
if(!isanimal(user) && !isalien(user))
|
||||
return
|
||||
user.visible_message("<b>[user]</b> nibbles away at the [src].","You nibble away at the [src].")
|
||||
bitecount++
|
||||
if(reagents && user.reagents)
|
||||
reagents.trans_to_ingest(user, bitesize)
|
||||
spawn(5)
|
||||
if(!src && !user.client)
|
||||
user.custom_emote(1,"[pick("burps", "cries for more", "burps twice", "looks at the area where the food was")]")
|
||||
del(src)
|
||||
On_Consume(user)
|
||||
|
||||
//////////////////////////////////////////////////
|
||||
////////////////////////////////////////////Snacks
|
||||
@@ -705,7 +665,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/xenomeat
|
||||
name = "meat"
|
||||
desc = "A slab of meat"
|
||||
desc = "A slab of green meat. Smells like acid."
|
||||
icon_state = "xenomeat"
|
||||
filling_color = "#43DE18"
|
||||
|
||||
@@ -2153,6 +2113,9 @@
|
||||
|
||||
// sliceable is just an organization type path, it doesn't have any additional code or variables tied to it.
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable
|
||||
w_class = 3 //Whole pizzas and cakes shouldn't fit in a pocket, you can slice them if you want to do that.
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread
|
||||
name = "meatbread loaf"
|
||||
desc = "The culinary base of every self-respecting eloquen/tg/entleman."
|
||||
|
||||
@@ -313,7 +313,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/orange
|
||||
name = "orange"
|
||||
desc = "It's an tangy fruit."
|
||||
desc = "It's a tangy fruit."
|
||||
icon_state = "orange"
|
||||
potency = 20
|
||||
filling_color = "#FAAD28"
|
||||
@@ -428,16 +428,9 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/bluetomato/Crossed(AM as mob|obj)
|
||||
if (istype(AM, /mob/living/carbon))
|
||||
var/mob/M = AM
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP) || M.buckled)
|
||||
return
|
||||
|
||||
M.stop_pulling()
|
||||
M << "\blue You slipped on the [name]!"
|
||||
playsound(src.loc, 'sound/misc/slip.ogg', 50, 1, -3)
|
||||
M.Stun(8)
|
||||
M.Weaken(5)
|
||||
if (istype(AM, /mob/living))
|
||||
var/mob/living/M = AM
|
||||
M.slip("the [src]!")
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/wheat
|
||||
name = "wheat"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat
|
||||
name = "meat"
|
||||
desc = "A slab of meat"
|
||||
desc = "A slab of meat."
|
||||
icon_state = "meat"
|
||||
health = 180
|
||||
filling_color = "#FF1C1C"
|
||||
@@ -14,7 +14,7 @@
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
|
||||
user << "You cut the meat in thin strips."
|
||||
user << "You cut the meat into thin strips."
|
||||
del(src)
|
||||
else
|
||||
..()
|
||||
@@ -23,15 +23,13 @@
|
||||
name = "synthetic meat"
|
||||
desc = "A synthetic slab of flesh."
|
||||
|
||||
// Seperate definitions because some food likes to know if it's human.
|
||||
// TODO: rewrite kitchen code to check a var on the meat item so we can remove
|
||||
// all these sybtypes.
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/human
|
||||
name = "-meat"
|
||||
var/subjectname = ""
|
||||
var/subjectjob = null
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/monkey
|
||||
//same as plain meat
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/corgi
|
||||
name = "Corgi meat"
|
||||
desc = "Tastes like... well you know..."
|
||||
desc = "Tastes like... well, you know."
|
||||
@@ -40,22 +40,22 @@
|
||||
/obj/machinery/sleeper,
|
||||
/obj/machinery/smartfridge/,
|
||||
/obj/machinery/biogenerator,
|
||||
/obj/machinery/constructable_frame)
|
||||
/obj/machinery/constructable_frame
|
||||
)
|
||||
|
||||
New()
|
||||
..()
|
||||
base_name = name
|
||||
|
||||
examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
examine(mob/user)
|
||||
if(!..(user, 2))
|
||||
return
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
usr << "\blue It contains [src.reagents.total_volume] units of liquid."
|
||||
user << "\blue It contains [src.reagents.total_volume] units of liquid."
|
||||
else
|
||||
usr << "\blue It is empty."
|
||||
user << "\blue It is empty."
|
||||
if (!is_open_container())
|
||||
usr << "\blue Airtight lid seals it completely."
|
||||
user << "\blue Airtight lid seals it completely."
|
||||
|
||||
attack_self()
|
||||
..()
|
||||
@@ -120,10 +120,6 @@
|
||||
var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this)
|
||||
user << "\blue You transfer [trans] units of the solution to [target]."
|
||||
|
||||
//Safety for dumping stuff into a ninja suit. It handles everything through attackby() and this is unnecessary.
|
||||
else if(istype(target, /obj/item/clothing/suit/space/space_ninja))
|
||||
return
|
||||
|
||||
else if(istype(target, /obj/machinery/bunsen_burner))
|
||||
return
|
||||
|
||||
@@ -157,12 +153,16 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/beaker
|
||||
name = "beaker"
|
||||
desc = "A beaker. Can hold up to 50 units."
|
||||
desc = "A beaker."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "beaker"
|
||||
item_state = "beaker"
|
||||
matter = list("glass" = 500)
|
||||
|
||||
New()
|
||||
..()
|
||||
desc += " Can hold up to [volume] units."
|
||||
|
||||
on_reagent_change()
|
||||
update_icon()
|
||||
|
||||
@@ -203,7 +203,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/beaker/large
|
||||
name = "large beaker"
|
||||
desc = "A large beaker. Can hold up to 100 units."
|
||||
desc = "A large beaker."
|
||||
icon_state = "beakerlarge"
|
||||
matter = list("glass" = 5000)
|
||||
volume = 120
|
||||
@@ -213,7 +213,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/beaker/noreact
|
||||
name = "cryostasis beaker"
|
||||
desc = "A cryostasis beaker that allows for chemical storage without reactions. Can hold up to 60 units."
|
||||
desc = "A cryostasis beaker that allows for chemical storage without reactions."
|
||||
icon_state = "beakernoreact"
|
||||
matter = list("glass" = 500)
|
||||
volume = 60
|
||||
@@ -222,7 +222,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/beaker/bluespace
|
||||
name = "bluespace beaker"
|
||||
desc = "A bluespace beaker, powered by experimental bluespace technology. Can hold up to 300 units."
|
||||
desc = "A bluespace beaker, powered by experimental bluespace technology."
|
||||
icon_state = "beakerbluespace"
|
||||
matter = list("glass" = 5000)
|
||||
volume = 300
|
||||
@@ -233,7 +233,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/beaker/vial
|
||||
name = "vial"
|
||||
desc = "A small glass vial. Can hold up to 25 units."
|
||||
desc = "A small glass vial."
|
||||
icon_state = "vial"
|
||||
matter = list("glass" = 250)
|
||||
volume = 30
|
||||
|
||||
@@ -14,10 +14,6 @@
|
||||
flags = FPRINT | TABLEPASS | OPENCONTAINER
|
||||
slot_flags = SLOT_BELT
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/New() //comment this to make hypos start off empty
|
||||
..()
|
||||
reagents.add_reagent("tricordrazine", 30)
|
||||
@@ -77,9 +73,9 @@
|
||||
else
|
||||
icon_state = "[initial(icon_state)]0"
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/examine()
|
||||
..()
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/examine(mob/user)
|
||||
..(user)
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
usr << "\blue It is currently loaded."
|
||||
user << "\blue It is currently loaded."
|
||||
else
|
||||
usr << "\blue It is spent."
|
||||
user << "\blue It is spent."
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
src.verbs -= /obj/item/weapon/reagent_containers/verb/set_APTFT
|
||||
|
||||
/obj/item/weapon/reagent_containers/spray/afterattack(atom/A as mob|obj, mob/user as mob)
|
||||
if(istype(A, /obj/item/weapon/storage) || istype(A, /obj/structure/table) || istype(A, /obj/structure/rack) || istype(A, /obj/structure/closet) \
|
||||
if(istype(A, /obj/item/weapon/storage) || istype(A, /obj/structure/table) || istype(A, /obj/structure/closet) \
|
||||
|| istype(A, /obj/item/weapon/reagent_containers) || istype(A, /obj/structure/sink) || istype(A, /obj/structure/janitorialcart))
|
||||
return
|
||||
|
||||
@@ -94,10 +94,9 @@
|
||||
user << "<span class='notice'>You adjusted the pressure nozzle. You'll now use [amount_per_transfer_from_this] units per spray.</span>"
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/spray/examine()
|
||||
set src in usr
|
||||
..()
|
||||
usr << "[round(src.reagents.total_volume)] units left."
|
||||
/obj/item/weapon/reagent_containers/spray/examine(mob/user)
|
||||
if(..(user, 0) && user==src.loc)
|
||||
user << "[round(src.reagents.total_volume)] units left."
|
||||
return
|
||||
|
||||
/obj/item/weapon/reagent_containers/spray/verb/empty()
|
||||
@@ -142,10 +141,9 @@
|
||||
..()
|
||||
reagents.add_reagent("condensedcapsaicin", 40)
|
||||
|
||||
/obj/item/weapon/reagent_containers/spray/pepper/examine()
|
||||
..()
|
||||
if(get_dist(usr,src) <= 1)
|
||||
usr << "The safety is [safety ? "on" : "off"]."
|
||||
/obj/item/weapon/reagent_containers/spray/pepper/examine(mob/user)
|
||||
if(..(user, 1))
|
||||
user << "The safety is [safety ? "on" : "off"]."
|
||||
|
||||
/obj/item/weapon/reagent_containers/spray/pepper/attack_self(var/mob/user)
|
||||
safety = !safety
|
||||
|
||||
@@ -45,9 +45,6 @@
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
attack_paw()
|
||||
return attack_hand()
|
||||
|
||||
attackby(obj/item/I as obj, mob/user as mob)
|
||||
|
||||
return
|
||||
@@ -308,9 +305,6 @@
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
attack_paw()
|
||||
return attack_hand()
|
||||
|
||||
attackby(obj/item/I as obj, mob/user as mob)
|
||||
|
||||
return
|
||||
|
||||
@@ -24,16 +24,15 @@
|
||||
src.verbs -= /obj/structure/reagent_dispensers/verb/set_APTFT
|
||||
..()
|
||||
|
||||
examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
usr << "\blue It contains:"
|
||||
examine(mob/user)
|
||||
if(!..(user, 2))
|
||||
return
|
||||
user << "\blue It contains:"
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
for(var/datum/reagent/R in reagents.reagent_list)
|
||||
usr << "\blue [R.volume] units of [R.name]"
|
||||
user << "\blue [R.volume] units of [R.name]"
|
||||
else
|
||||
usr << "\blue Nothing."
|
||||
user << "\blue Nothing."
|
||||
|
||||
verb/set_APTFT() //set amount_per_transfer_from_this
|
||||
set name = "Set transfer amount"
|
||||
@@ -95,14 +94,13 @@
|
||||
..()
|
||||
reagents.add_reagent("fuel",1000)
|
||||
|
||||
/obj/structure/reagent_dispensers/fueltank/examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
/obj/structure/reagent_dispensers/fueltank/examine(mob/user)
|
||||
if(!..(user, 2))
|
||||
return
|
||||
if (modded)
|
||||
usr << "\red Fuel faucet is wrenched open, leaking the fuel!"
|
||||
user << "\red Fuel faucet is wrenched open, leaking the fuel!"
|
||||
if(rig)
|
||||
usr << "<span class='notice'>There is some kind of device rigged to the tank."
|
||||
user << "<span class='notice'>There is some kind of device rigged to the tank."
|
||||
|
||||
/obj/structure/reagent_dispensers/fueltank/attack_hand()
|
||||
if (rig)
|
||||
|
||||
@@ -15,11 +15,9 @@
|
||||
var/max_syringes = 1
|
||||
matter = list("metal" = 2000)
|
||||
|
||||
/obj/item/weapon/gun/syringe/examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
usr << "\blue [syringes.len] / [max_syringes] syringes."
|
||||
/obj/item/weapon/gun/syringe/examine(mob/user)
|
||||
if(..(user, 2))
|
||||
user << "\blue [syringes.len] / [max_syringes] syringes."
|
||||
|
||||
/obj/item/weapon/gun/syringe/attackby(obj/item/I as obj, mob/user as mob)
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/syringe))
|
||||
|
||||
Reference in New Issue
Block a user