From 16c8fde869fadfe4e978b4c913a2d40df9be8fa1 Mon Sep 17 00:00:00 2001 From: clusterfack Date: Sun, 3 Jan 2016 05:01:21 -0600 Subject: [PATCH] Robodropper No longer has a specizlied afterattack proc that functioned identically except for the fact it was far inferior and buggy. Fixes #7293 --- .../mob/living/silicon/robot/robot_modules.dm | 4 +- .../reagents/reagent_containers/dropper.dm | 10 +- .../reagent_containers/robodropper.dm | 107 ------------------ .../artifact/artifact_unknown.dm | 3 +- vgstation13.dme | 1 - 5 files changed, 12 insertions(+), 113 deletions(-) delete mode 100644 code/modules/reagents/reagent_containers/robodropper.dm diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index d711a104e37..72efd522fb2 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -122,7 +122,7 @@ src.modules += new /obj/item/device/healthanalyzer(src) src.modules += new /obj/item/weapon/reagent_containers/borghypo(src) src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large/cyborg(src,src) - src.modules += new /obj/item/weapon/reagent_containers/robodropper(src) + src.modules += new /obj/item/weapon/reagent_containers/dropper/robodropper(src) src.modules += new /obj/item/weapon/reagent_containers/syringe(src) src.modules += new /obj/item/weapon/storage/bag/chem(src) src.modules += new /obj/item/weapon/extinguisher/mini(src) @@ -312,7 +312,7 @@ src.modules += new /obj/item/device/rcd/borg/rsf(src) - src.modules += new /obj/item/weapon/reagent_containers/robodropper(src) + src.modules += new /obj/item/weapon/reagent_containers/dropper/robodropper(src) var/obj/item/weapon/lighter/zippo/L = new /obj/item/weapon/lighter/zippo(src) L.lit = 1 diff --git a/code/modules/reagents/reagent_containers/dropper.dm b/code/modules/reagents/reagent_containers/dropper.dm index 45ea2c6d306..109d78d71b0 100644 --- a/code/modules/reagents/reagent_containers/dropper.dm +++ b/code/modules/reagents/reagent_containers/dropper.dm @@ -33,7 +33,6 @@ return var/list/bad_reagents = reagents.get_bad_reagent_names() // Used for logging if(reagents.total_volume) - if(target.reagents.total_volume >= target.reagents.maximum_volume) to_chat(user, "[target] is full.") @@ -117,6 +116,15 @@ /obj/item/weapon/reagent_containers/dropper/baster/update_icon() return +/obj/item/weapon/reagent_containers/dropper/robodropper + name = "Industrial Dropper" + desc = "A larger dropper. Transfers 10 units." + icon = 'icons/obj/chemical.dmi' + icon_state = "dropper0" + amount_per_transfer_from_this = 10 + possible_transfer_amounts = list(1,2,3,4,5,6,7,8,9,10) + volume = 10 + //////////////////////////////////////////////////////////////////////////////// /// Droppers. END //////////////////////////////////////////////////////////////////////////////// diff --git a/code/modules/reagents/reagent_containers/robodropper.dm b/code/modules/reagents/reagent_containers/robodropper.dm deleted file mode 100644 index d9bfd1604ce..00000000000 --- a/code/modules/reagents/reagent_containers/robodropper.dm +++ /dev/null @@ -1,107 +0,0 @@ - -/obj/item/weapon/reagent_containers/robodropper - name = "Industrial Dropper" - desc = "A larger dropper. Transfers 10 units." - icon = 'icons/obj/chemical.dmi' - icon_state = "dropper0" - amount_per_transfer_from_this = 10 - possible_transfer_amounts = list(1,2,3,4,5,6,7,8,9,10) - volume = 10 - var/filled = 0 - - afterattack(obj/target, mob/user , flag) - if(!user.Adjacent(target)) - return - - if(!target.reagents) return - - if(filled) - - if(target.reagents.total_volume >= target.reagents.maximum_volume) - to_chat(user, "[target] is full.") - return - - if(!target.is_open_container() && !ismob(target) && !istype(target,/obj/item/weapon/reagent_containers/food)) //You can inject humans and food but you cant remove the shit. - to_chat(user, "You cannot directly fill this object.") - return - - - var/trans - - if(isobj(target)) - // /vg/: Logging transfers of bad things - if(istype(reagents_to_log) && reagents_to_log.len && target.log_reagents) - var/list/badshit=list() - for(var/bad_reagent in reagents_to_log) - if(reagents.has_reagent(bad_reagent)) - badshit += reagents_to_log[bad_reagent] - - if(badshit.len) - var/hl="([english_list(badshit)])" - message_admins("[user.name] ([user.ckey]) added [trans]U to \a [target] with [src].[hl] (JMP)") - log_game("[user.name] ([user.ckey]) added [trans]U to \a [target] with [src].") - trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - to_chat(user, "You transfer [trans] units of the solution.") - if (src.reagents.total_volume<=0) - filled = 0 - icon_state = "dropper[filled]" - - else if(ismob(target)) - if(istype(target , /mob/living/carbon/human)) - var/mob/living/carbon/human/victim = target - - var/obj/item/safe_thing = victim.get_body_part_coverage(EYES) - - if(safe_thing) - if(!safe_thing.reagents) - safe_thing.create_reagents(100) - trans = src.reagents.trans_to(safe_thing, amount_per_transfer_from_this) - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("[] tries to squirt something into []'s eyes, but fails!", user, target), 1) - spawn(5) - src.reagents.reaction(safe_thing, TOUCH) - - - to_chat(user, "You transfer [trans] units of the solution.") - if (src.reagents.total_volume<=0) - filled = 0 - icon_state = "dropper[filled]" - return - - - for(var/mob/O in viewers(world.view, user)) - O.show_message(text("[] squirts something into []'s eyes!", user, target), 1) - src.reagents.reaction(target, TOUCH) - - var/mob/M = target - var/list/injected = list() - for(var/datum/reagent/R in src.reagents.reagent_list) - injected += R.name - var/contained = english_list(injected) - M.attack_log += text("\[[time_stamp()]\] Has been squirted with [src.name] by [user.name] ([user.ckey]). Reagents: [contained]") - user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to squirt [M.name] ([M.key]). Reagents: [contained]") - msg_admin_attack("[user.name] ([user.ckey]) squirted [M.name] ([M.key]) with [src.name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)") - if(!iscarbon(user)) - M.LAssailant = null - else - M.LAssailant = user - - else - - if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers)) - to_chat(user, "You cannot directly remove reagents from [target].") - return - - if(!target.reagents.total_volume) - to_chat(user, "[target] is empty.") - return - - var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) - - to_chat(user, "You fill the dropper with [trans] units of the solution.") - - filled = 1 - icon_state = "dropper[filled]" - - return \ No newline at end of file diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm b/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm index 35bf93a2b27..e2f6d194ba8 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm @@ -264,8 +264,7 @@ var/list/valid_secondary_effect_types = list(\ /obj/machinery/artifact/attackby(obj/item/weapon/W as obj, mob/living/user as mob) if (istype(W, /obj/item/weapon/reagent_containers/glass) && W.is_open_container() ||\ - istype(W, /obj/item/weapon/reagent_containers/dropper) ||\ - istype(W, /obj/item/weapon/reagent_containers/robodropper)) + istype(W, /obj/item/weapon/reagent_containers/dropper)) if(W.reagents.has_reagent("hydrogen", 1) || W.reagents.has_reagent("water", 1)) if(my_effect.trigger == TRIGGER_WATER) my_effect.ToggleActivate() diff --git a/vgstation13.dme b/vgstation13.dme index b046a05cbd5..c38636d1434 100644 --- a/vgstation13.dme +++ b/vgstation13.dme @@ -1598,7 +1598,6 @@ #include "code\modules\reagents\reagent_containers\glass.dm" #include "code\modules\reagents\reagent_containers\hypospray.dm" #include "code\modules\reagents\reagent_containers\pill.dm" -#include "code\modules\reagents\reagent_containers\robodropper.dm" #include "code\modules\reagents\reagent_containers\spray.dm" #include "code\modules\reagents\reagent_containers\syringes.dm" #include "code\modules\reagents\reagent_containers\food\condiment.dm"