Merge branch 'dev' into ofChemistryAndStuff

Conflicts:
	code/datums/recipe.dm
	code/game/machinery/bots/farmbot.dm
	code/game/machinery/bots/medbot.dm
	code/game/mecha/equipment/tools/tools.dm
	code/game/objects/effects/chem/chemsmoke.dm
	code/game/objects/effects/effect_system.dm
	code/game/objects/items/toys.dm
	code/game/objects/items/weapons/extinguisher.dm
	code/game/objects/items/weapons/mop.dm
	code/modules/mob/living/carbon/human/human.dm
	code/modules/organs/organ_internal.dm
	code/modules/reagents/Chemistry-Holder.dm
	code/modules/reagents/Chemistry-Reagents.dm
	code/modules/reagents/Chemistry-Recipes.dm
	code/modules/reagents/reagent_containers/food/snacks.dm
	code/modules/reagents/reagent_containers/pill.dm
	code/modules/reagents/reagent_containers/spray.dm
	maps/exodus-1.dmm
This commit is contained in:
Kelenius
2015-04-28 10:49:26 +03:00
999 changed files with 26502 additions and 23206 deletions

View File

@@ -29,7 +29,7 @@
processing_objects.Add(src)
/obj/item/weapon/reagent_containers/borghypo/Del()
/obj/item/weapon/reagent_containers/borghypo/Destroy()
processing_objects.Remove(src)
..()

View File

@@ -108,8 +108,7 @@
center_of_mass = list("x"=16, "y"=10)
New()
..()
reagents.add_reagent("cola", 15)
reagents.add_reagent("orangejuice", 15)
reagents.add_reagent("brownstar", 30)
/obj/item/weapon/reagent_containers/food/drinks/cans/space_up
name = "Space-Up"

View File

@@ -50,7 +50,7 @@
user << "<span class='notice'>You swallow some of contents of \the [src].</span>"
on_reagent_change()
if(icon_state == "saltshakersmall" || icon_state == "peppermillsmall")
if(icon_state == "saltshakersmall" || icon_state == "peppermillsmall" || icon_state == "flour")
return
if(reagents.reagent_list.len > 0)
switch(reagents.get_master_reagent_id())
@@ -146,4 +146,16 @@
volume = 20
New()
..()
reagents.add_reagent("blackpepper", 20)
reagents.add_reagent("blackpepper", 20)
/obj/item/weapon/reagent_containers/food/condiment/flour
name = "flour sack"
desc = "A big bag of flour. Good for baking!"
icon = 'icons/obj/food.dmi'
icon_state = "flour"
item_state = "flour"
New()
..()
reagents.add_reagent("flour", 30)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)

View File

@@ -28,7 +28,7 @@
user.put_in_active_hand(B)
src.transfer_fingerprints_to(B)
del(src)
qdel(src)
/obj/item/weapon/reagent_containers/food/drinks/bottle/attack(mob/living/target as mob, mob/living/user as mob)
@@ -80,7 +80,7 @@
user.visible_message("<span class='notice'>The contents of the [src] splash all over [target]!</span>")
reagents.splash_mob(target, reagents.total_volume)
//Finally, smash the bottle. This kills (del) the bottle.
//Finally, smash the bottle. This kills (qdel) the bottle.
src.smash(target, user)
return

View File

@@ -3,7 +3,7 @@
if(istype(W,/obj/item/weapon/shard) || istype(W,/obj/item/weapon/reagent_containers/food/snacks))
var/obj/item/weapon/reagent_containers/food/snacks/csandwich/S = new(get_turf(src))
S.attackby(W,user)
del(src)
qdel(src)
..()
/obj/item/weapon/reagent_containers/food/snacks/csandwich
@@ -73,9 +73,9 @@
if(length(name) > 80) name = "[pick(list("absurd","colossal","enormous","ridiculous"))] sandwich"
w_class = n_ceil(Clamp((ingredients.len/2),2,4))
/obj/item/weapon/reagent_containers/food/snacks/csandwich/Del()
/obj/item/weapon/reagent_containers/food/snacks/csandwich/Destroy()
for(var/obj/item/O in ingredients)
del(O)
qdel(O)
..()
/obj/item/weapon/reagent_containers/food/snacks/csandwich/examine(mob/user)

View File

@@ -27,7 +27,7 @@
usr.put_in_hands(TrashItem)
else if(istype(trash,/obj/item))
usr.put_in_hands(trash)
del(src)
qdel(src)
return
/obj/item/weapon/reagent_containers/food/snacks/attack_self(mob/user as mob)
@@ -37,7 +37,7 @@
if(!reagents.total_volume)
user << "<span class='danger'>None of [src] left!</span>"
user.drop_from_inventory(src)
del(src)
qdel(src)
return 0
if(istype(M, /mob/living/carbon))
@@ -145,7 +145,7 @@
reagents.trans_to_obj(U, min(reagents.total_volume,5))
if (reagents.total_volume <= 0)
del(src)
qdel(src)
return
if (is_sliceable())
@@ -178,15 +178,15 @@
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)
var/obj/slice = new slice_path (src.loc)
reagents.trans_to_obj(slice, reagents_per_slice)
del(src)
qdel(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()
/obj/item/weapon/reagent_containers/food/snacks/Destroy()
if(contents)
for(var/atom/movable/something in contents)
something.loc = get_turf(src)
@@ -205,7 +205,7 @@
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)
qdel(src)
On_Consume(user)
//////////////////////////////////////////////////
@@ -470,14 +470,14 @@
user << "You crack \the [src] into \the [O]."
reagents.trans_to(O, reagents.total_volume)
user.drop_from_inventory(src)
del(src)
qdel(src)
/obj/item/weapon/reagent_containers/food/snacks/egg/throw_impact(atom/hit_atom)
..()
new/obj/effect/decal/cleanable/egg_smudge(src.loc)
src.reagents.trans_to(hit_atom, reagents.total_volume)
src.visible_message("\red [src.name] has been squashed.","\red You hear a smack.")
del(src)
qdel(src)
/obj/item/weapon/reagent_containers/food/snacks/egg/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype( W, /obj/item/toy/crayon ))
@@ -490,41 +490,32 @@
usr << "\blue You color \the [src] [clr]"
icon_state = "egg-[clr]"
item_color = clr
else
..()
/obj/item/weapon/reagent_containers/food/snacks/egg/blue
icon_state = "egg-blue"
item_color = "blue"
/obj/item/weapon/reagent_containers/food/snacks/egg/green
icon_state = "egg-green"
item_color = "green"
/obj/item/weapon/reagent_containers/food/snacks/egg/mime
icon_state = "egg-mime"
item_color = "mime"
/obj/item/weapon/reagent_containers/food/snacks/egg/orange
icon_state = "egg-orange"
item_color = "orange"
/obj/item/weapon/reagent_containers/food/snacks/egg/purple
icon_state = "egg-purple"
item_color = "purple"
/obj/item/weapon/reagent_containers/food/snacks/egg/rainbow
icon_state = "egg-rainbow"
item_color = "rainbow"
/obj/item/weapon/reagent_containers/food/snacks/egg/red
icon_state = "egg-red"
item_color = "red"
/obj/item/weapon/reagent_containers/food/snacks/egg/yellow
icon_state = "egg-yellow"
item_color = "yellow"
/obj/item/weapon/reagent_containers/food/snacks/friedegg
name = "Fried egg"
@@ -549,18 +540,6 @@
..()
reagents.add_reagent("protein", 2)
/obj/item/weapon/reagent_containers/food/snacks/flour
name = "flour sack"
desc = "A big bag of flour. Good for baking!"
icon = 'icons/obj/food.dmi'
icon_state = "flour"
item_state = "flour"
New()
..()
reagents.add_reagent("flour", 30)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
/obj/item/weapon/reagent_containers/food/snacks/organ
name = "organ"
desc = "It's good for you."
@@ -929,7 +908,7 @@
..()
new/obj/effect/decal/cleanable/pie_smudge(src.loc)
src.visible_message("\red [src.name] splats.","\red You hear a splat.")
del(src)
qdel(src)
/obj/item/weapon/reagent_containers/food/snacks/berryclafoutis
name = "Berry Clafoutis"
@@ -1593,7 +1572,7 @@
M << "\red \The [src] expands!"
var/mob/living/carbon/human/H = new (src)
H.set_species(monkey_type)
del(src)
qdel(src)
proc/Unwrap(mob/user as mob)
icon_state = "monkeycube"
@@ -2835,7 +2814,7 @@
if(istype(W,/obj/item/weapon/kitchen/rollingpin))
new /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough(src)
user << "You flatten the dough."
del(src)
qdel(src)
// slicable into 3xdoughslices
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
@@ -2877,30 +2856,30 @@
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/meatball))
new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
user << "You make a burger."
del(W)
del(src)
qdel(W)
qdel(src)
// Bun + cutlet = hamburger
else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/cutlet))
new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
user << "You make a burger."
del(W)
del(src)
qdel(W)
qdel(src)
// Bun + sausage = hotdog
else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/sausage))
new /obj/item/weapon/reagent_containers/food/snacks/hotdog(src)
user << "You make a hotdog."
del(W)
del(src)
qdel(W)
qdel(src)
// Burger + cheese wedge = cheeseburger
/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
if(istype(W))// && !istype(src,/obj/item/weapon/reagent_containers/food/snacks/cheesewedge))
new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
user << "You make a cheeseburger."
del(W)
del(src)
qdel(W)
qdel(src)
return
else
..()
@@ -2910,8 +2889,8 @@
if(istype(W))
new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
user << "You make a cheeseburger."
del(W)
del(src)
qdel(W)
qdel(src)
return
else
..()
@@ -2980,7 +2959,7 @@
if(istype(W,/obj/item/weapon/kitchen/utensil/knife))
new /obj/item/weapon/reagent_containers/food/snacks/rawsticks(src)
user << "You cut the potato."
del(src)
qdel(src)
else
..()

View File

@@ -15,7 +15,7 @@
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
user << "You cut the meat into thin strips."
del(src)
qdel(src)
else
..()

View File

@@ -28,7 +28,7 @@
/obj/machinery/atmospherics/unary/cryo_cell,
/obj/machinery/dna_scannernew,
/obj/item/weapon/grenade/chem_grenade,
/obj/machinery/bot/medbot,
/mob/living/bot/medbot,
/obj/machinery/computer/pandemic,
/obj/item/weapon/storage/secure/safe,
/obj/machinery/iv_drip,
@@ -224,10 +224,10 @@
attackby(var/obj/D, mob/user as mob)
if(isprox(D))
user << "You add [D] to [src]."
del(D)
qdel(D)
user.put_in_hands(new /obj/item/weapon/bucket_sensor)
user.drop_from_inventory(src)
del(src)
qdel(src)
update_icon()
overlays.Cut()

View File

@@ -27,9 +27,9 @@
M << "<span class='notice'>You swallow \the [src].</span>"
M.drop_from_inventory(src) //icon update
if(reagents.total_volume)
if(reagents.total_volume)
reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST)
del(src)
qdel(src)
return 1
else if(istype(M, /mob/living/carbon/human))
@@ -52,9 +52,9 @@
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Fed [name] by [M.name] ([M.ckey]) Reagents: [contained]</font>")
msg_admin_attack("[user.name] ([user.ckey]) fed [M.name] ([M.ckey]) with [name] Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
if(reagents.total_volume)
if(reagents.total_volume)
reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST)
del(src)
qdel(src)
return 1
@@ -75,8 +75,8 @@
reagents.trans_to(target, reagents.total_volume)
for(var/mob/O in viewers(2, user))
O.show_message("<span class='warning'>[user] puts something in \the [target].</span>", 1)
del(src)
qdel(src)
return

View File

@@ -24,7 +24,7 @@
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
if(istype(A, /obj/effect/proc_holder/spell))
if(istype(A, /spell))
return
if(proximity)
@@ -52,7 +52,7 @@
/obj/item/weapon/reagent_containers/spray/proc/Spray_at(atom/A as mob|obj, mob/user as mob, proximity)
if (A.density && proximity)
A.visible_message("[usr] sprays [A] with [src].")
A.visible_message("[usr] sprays [A] with [src].")
reagents.trans_to(A, amount_per_transfer_from_this)
else
spawn(0)
@@ -64,7 +64,6 @@
reagents.trans_to_obj(D, amount_per_transfer_from_this)
D.set_color()
D.set_up(my_target, spray_size, 10)
return
/obj/item/weapon/reagent_containers/spray/attack_self(var/mob/user)
@@ -159,12 +158,12 @@
volume = 600
origin_tech = "combat=3;materials=3;engineering=3"
/obj/item/weapon/reagent_containers/spray/chemsprayer/Spray_at(atom/A as mob|obj)
/obj/item/weapon/reagent_containers/spray/chemsprayer/Spray_at(atom/A as mob|obj)
var/direction = get_dir(src, A)
var/turf/T = get_turf(A)
var/turf/T1 = get_step(T,turn(direction, 90))
var/turf/T2 = get_step(T,turn(direction, -90))
var/list/the_targets = list(T, T1, T2)
var/turf/T2 = get_step(T,turn(direction, -90))
var/list/the_targets = list(T, T1, T2)
for(var/a = 1 to 3)
spawn(0)

View File

@@ -243,7 +243,7 @@
for(var/mob/O in viewers(world.view, user))
O.show_message(text("\red <B>[user] tries to stab [target] in \the [hit_area] with [src.name], but the attack is deflected by armor!</B>"), 1)
user.remove_from_mob(src)
del(src)
qdel(src)
return
user.visible_message("<span class='danger'>[user] stabs [target] in \the [hit_area] with [src.name]!</span>")