From 79c084450a9f3fdcc8fe24556ed83c5fdc7a9977 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Fri, 1 May 2015 17:54:30 +0100 Subject: [PATCH] Various fixes --- code/game/machinery/cloning.dm | 7 +++++-- code/game/machinery/computer/cloning.dm | 2 +- code/modules/mob/living/silicon/robot/robot.dm | 14 +++++++------- .../reagents/reagent_containers/syringes.dm | 6 +++++- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 43311ce8eb7..8391118d1f6 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -201,6 +201,11 @@ break return 0 + if(biomass >= CLONE_BIOMASS) + src.biomass -= CLONE_BIOMASS + else + return 0 + src.attempting = 1 //One at a time!! src.locked = 1 @@ -446,8 +451,6 @@ src.occupant.add_side_effect("Bad Stomach") // Give them an extra side-effect for free. src.occupant = null - src.biomass -= CLONE_BIOMASS - return /obj/machinery/clonepod/proc/malfunction() diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index bf28014c6e9..d818d5fd574 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -144,7 +144,7 @@ if(pod1 && pod1.biomass >= CLONE_BIOMASS) data["enoughbiomass"] = 1 else - data["enougbiomass"] = 0 + data["enoughbiomass"] = 0 // Set up the Nano UI ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 7d9c71f337d..9c84a9f87c2 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -819,9 +819,9 @@ var/list/robot_verbs_default = list( return ..() /mob/living/silicon/robot/emag_act(user as mob) - if(!ishuman(user)) + if(!ishuman(user) && !issilicon(user)) return - var/mob/living/carbon/human/H = user + var/mob/living/M = user if(!opened)//Cover is closed if(locked) if(prob(90)) @@ -844,8 +844,8 @@ var/list/robot_verbs_default = list( sleep(6) if(prob(50)) emagged = 1 - if(H.hud_used) - H.hud_used.update_robot_modules_display() //Shows/hides the emag item if the inventory screen is already open. + if(src.hud_used) + src.hud_used.update_robot_modules_display() //Shows/hides the emag item if the inventory screen is already open. lawupdate = 0 connected_ai = null user << "You emag [src]'s interface." @@ -855,8 +855,8 @@ var/list/robot_verbs_default = list( clear_inherent_laws() laws = new /datum/ai_laws/syndicate_override var/time = time2text(world.realtime,"hh:mm:ss") - lawchanges.Add("[time] : [H.name]([H.key]) emagged [name]([key])") - set_zeroth_law("Only [H.real_name] and people he designates as being such are Syndicate Agents.") + lawchanges.Add("[time] : [M.name]([M.key]) emagged [name]([key])") + set_zeroth_law("Only [M.real_name] and people he designates as being such are Syndicate Agents.") src << "\red ALERT: Foreign software detected." sleep(5) src << "\red Initiating diagnostics..." @@ -872,7 +872,7 @@ var/list/robot_verbs_default = list( src << "\red ERRORERRORERROR" src << "Obey these laws:" laws.show_laws(src) - src << "\red \b ALERT: [H.real_name] is your new master. Obey your new laws and his commands." + src << "\red \b ALERT: [M.real_name] is your new master. Obey your new laws and his commands." if(src.module && istype(src.module, /obj/item/weapon/robot_module/miner)) for(var/obj/item/weapon/pickaxe/borgdrill/D in src.module.modules) del(D) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 1235ad4d1c7..e3e8bfe4e0a 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -86,7 +86,6 @@ user << "\red There is already a blood sample in this syringe" return if(istype(target, /mob/living/carbon))//maybe just add a blood reagent to all mobs. Then you can suck them dry...With hundreds of syringes. Jolly good idea. - var/amount = src.reagents.maximum_volume - src.reagents.total_volume var/mob/living/carbon/T = target if(!T.dna) usr << "You are unable to locate any blood. (To be specific, your target seems to be missing their DNA datum)" @@ -112,6 +111,11 @@ if(!do_mob(user, target, time)) return + var/amount = src.reagents.maximum_volume - src.reagents.total_volume + if(amount == 0) + usr << "The syringe is full!" + return + var/datum/reagent/B if(istype(T,/mob/living/carbon/human)) var/mob/living/carbon/human/H = T