Instant Patch Features

This commit is contained in:
Fox-McCloud
2016-06-30 09:55:35 -04:00
parent 7e9ff08ceb
commit cf1a584995
4 changed files with 36 additions and 2 deletions
+22 -1
View File
@@ -398,6 +398,7 @@
var/pillsprite = "1"
var/client/has_sprites = list()
var/printing = null
var/safety_override = 0
/obj/machinery/chem_master/New()
var/datum/reagents/R = new/datum/reagents(100)
@@ -426,6 +427,14 @@
spawn(rand(0, 15))
stat |= NOPOWER
/obj/machinery/chem_master/emag_act(mob/user)
if(!safety_override)
to_chat(user, "<span class='notice'>You disable the safeties on the [src].</span>")
safety_override = 1
else
to_chat(user, "<span class='notice'>You re-enable the safeties on the [src].</span>")
safety_override = 0
/obj/machinery/chem_master/attackby(var/obj/item/weapon/B as obj, var/mob/user as mob, params)
if(istype(B, /obj/item/weapon/reagent_containers/glass) || istype(B, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass))
@@ -625,13 +634,17 @@
if(!name)
return
name = reject_bad_text(name)
while (count--)
var/is_medical_patch = chemical_safety_check(reagents)
while(count--)
var/obj/item/weapon/reagent_containers/food/pill/patch/P = new/obj/item/weapon/reagent_containers/food/pill/patch(src.loc)
if(!name) name = reagents.get_master_reagent_name()
P.name = "[name] patch"
P.pixel_x = rand(-7, 7) //random position
P.pixel_y = rand(-7, 7)
reagents.trans_to(P,amount_per_patch)
if(is_medical_patch)
P.instant_application = 1
P.icon_state = "bandaid_med"
else if (href_list["createbottle"])
if(!condi)
var/name = input(usr,"Name:","Name your bottle!",reagents.get_master_reagent_name()) as text|null
@@ -757,6 +770,14 @@
else
return 0
/obj/machinery/chem_master/proc/chemical_safety_check(datum/reagents/R)
if(safety_override)
return 1
var/all_safe = 1
for(var/datum/reagent/A in R.reagent_list)
if(!safe_chem_list.Find(A.id))
all_safe = 0
return all_safe
/obj/machinery/chem_master/condimaster
name = "\improper CondiMaster 3000"
+8
View File
@@ -10,6 +10,13 @@
apply_method = "apply"
transfer_efficiency = 0.5 //patches aren't as effective at getting chemicals into the bloodstream.
/obj/item/weapon/reagent_containers/food/pill/patch/emag_act(mob/user)
if(instant_application)
to_chat(user, "<span class='warning'>The patch is sealed already.</span>")
else
to_chat(user, "<span class='notice'>You press the emag onto the patch. The current from the emag closes the tamper-proof seal.</span>")
instant_application = 1
/obj/item/weapon/reagent_containers/food/pill/patch/afterattack(obj/target, mob/user , proximity)
return // thanks inheritance again
@@ -36,6 +43,7 @@
/obj/item/weapon/reagent_containers/food/pill/patch/synthflesh
name = "syntheflesh patch"
desc = "Helps with burn injuries."
icon_state = "bandaid_med"
instant_application = 1
/obj/item/weapon/reagent_containers/food/pill/patch/synthflesh/New()