This commit is contained in:
Asanadas
2013-04-04 01:15:03 -04:00
52 changed files with 1255 additions and 900 deletions
@@ -340,6 +340,9 @@
P.pixel_y = rand(-7, 7)
P.icon_state = "pill"+pillsprite
reagents.trans_to(P,50)
if(src.loaded_pill_bottle)
P.loc = src.loaded_pill_bottle
src.updateUsrDialog()
else if (href_list["createbottle"])
if(!condi)
var/name = reject_bad_text(input(usr,"Name:","Name your bottle!",reagents.get_master_reagent_name()))
+12 -2
View File
@@ -103,7 +103,7 @@ datum
blood
data = new/list("donor"=null,"viruses"=null,"blood_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null)
data = new/list("donor"=null,"viruses"=null,"blood_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null, "antibodies" = null)
name = "Blood"
id = "blood"
reagent_state = LIQUID
@@ -122,11 +122,14 @@ datum
M.contract_disease(D)
else //injected
M.contract_disease(D, 1, 0)
if(self.data && self.data["virus2"])
if(self.data && self.data["virus2"] && istype(M, /mob/living/carbon))//infecting...
if(method == TOUCH)
infect_virus2(M,self.data["virus2"])
else
infect_virus2(M,self.data["virus2"],1)
if(self.data && self.data["antibodies"] && istype(M, /mob/living/carbon))//... and curing
var/mob/living/carbon/C = M
C.antibodies |= self.data["antibodies"]
@@ -1693,6 +1696,13 @@ datum
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
holywater
name = "Holy Water"
id = "holywater"
description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen."
reagent_state = LIQUID
color = "#535E66" // rgb: 83, 94, 102
nanites
name = "Nanomachines"
id = "nanites"
@@ -11,10 +11,12 @@
var/slices_num
//Placeholder for effect that trigger on eating that aren't tied to reagents.
/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume()
/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M)
if(!usr) return
if(!reagents.total_volume)
usr.visible_message("<span class='notice'>[usr] finishes eating [src].</span>","<span class='notice'>You finish eating [src].</span>")
if(M == usr)
usr << "<span class='notice'>You finish eating \the [src].</span>"
usr.visible_message("<span class='notice'>[usr] finishes eating \the [src].</span>")
usr.drop_from_inventory(src) //so icons update :[
if(trash)
@@ -90,7 +92,7 @@
else
reagents.trans_to(M, reagents.total_volume)
bitecount++
On_Consume()
On_Consume(M)
return 1
return 0
@@ -207,15 +207,15 @@
if (target != user && target.getarmor(target_zone, "melee") > 5 && prob(50))
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)
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.u_equip(src)
del(src)
return
for(var/mob/O in viewers(world.view, user))
O.show_message(text("\red <B>[user] stabs [target] in the [hit_area] with [src.name]!</B>"), 1)
O.show_message(text("\red <B>[user] stabs [target] in \the [hit_area] with [src.name]!</B>"), 1)
if(affecting.take_damage(7))
if(affecting.take_damage(3))
target:UpdateDamageIcon()
else
+12 -8
View File
@@ -22,16 +22,20 @@
usr << "\blue [syringes.len] / [max_syringes] syringes."
attackby(obj/item/I as obj, mob/user as mob)
if(istype(I, /obj/item/weapon/reagent_containers/syringe))
if(syringes.len < max_syringes)
user.drop_item()
I.loc = src
syringes += I
user << "\blue You put the syringe in [src]."
user << "\blue [syringes.len] / [max_syringes] syringes."
var/obj/item/weapon/reagent_containers/syringe/S = I
if(S.mode != 2)//SYRINGE_BROKEN in syringes.dm
if(syringes.len < max_syringes)
user.drop_item()
I.loc = src
syringes += I
user << "\blue You put the syringe in [src]."
user << "\blue [syringes.len] / [max_syringes] syringes."
else
usr << "\red [src] cannot hold more syringes."
else
usr << "\red [src] cannot hold more syringes."
usr << "\red This syringe is broken!"
afterattack(obj/target, mob/user , flag)
if(!isturf(target.loc) || target == user) return