From a2bde2d187c9ddfdf303d03956fe749863c45e05 Mon Sep 17 00:00:00 2001 From: TullyBurnalot Date: Wed, 7 Dec 2016 10:51:43 +0000 Subject: [PATCH 1/4] Mining Vendor no longer gobbles up IDs - When unpowered, Mining Vendors no longer accept IDs --- code/modules/mining/equipment_locker.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index 56f71c94cb9..d59688d53b4 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -437,6 +437,8 @@ return /obj/machinery/mineral/equipment_vendor/attackby(obj/item/I as obj, mob/user as mob, params) + if(!powered()) + return if(istype(I, /obj/item/weapon/mining_voucher)) RedeemVoucher(I, user) return From d865b601d8ff57e226935b993526665c9ec2bc86 Mon Sep 17 00:00:00 2001 From: TullyBurnalot Date: Wed, 7 Dec 2016 11:17:34 +0000 Subject: [PATCH 2/4] Unpowered Mining Machine Deconstruction - Both the Mining Vendor and the ORM can now be deconstructed when unpowered --- code/modules/mining/equipment_locker.dm | 43 +++++++++++-------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index d59688d53b4..74d2fde901b 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -105,6 +105,18 @@ i++ /obj/machinery/mineral/ore_redemption/attackby(var/obj/item/weapon/W, var/mob/user, params) + if(default_deconstruction_screwdriver(user, "ore_redemption-open", "ore_redemption", W)) + updateUsrDialog() + return + if(exchange_parts(user, W)) + return + if(panel_open) + if(istype(W, /obj/item/weapon/crowbar)) + empty_content() + default_deconstruction_crowbar(W) + return + if(default_unfasten_wrench(user, W)) + return if(!powered()) return if(istype(W,/obj/item/weapon/card/id)) @@ -116,23 +128,6 @@ inserted_id = I interact(user) return - - if(default_deconstruction_screwdriver(user, "ore_redemption-open", "ore_redemption", W)) - updateUsrDialog() - return - - if(exchange_parts(user, W)) - return - - if(panel_open) - if(istype(W, /obj/item/weapon/crowbar)) - empty_content() - default_deconstruction_crowbar(W) - return - - if(default_unfasten_wrench(user, W)) - return - ..() /obj/machinery/mineral/ore_redemption/proc/SmeltMineral(var/obj/item/weapon/ore/O) @@ -437,6 +432,13 @@ return /obj/machinery/mineral/equipment_vendor/attackby(obj/item/I as obj, mob/user as mob, params) + if(default_deconstruction_screwdriver(user, "mining-open", "mining", I)) + updateUsrDialog() + return + if(panel_open) + if(istype(I, /obj/item/weapon/crowbar)) + default_deconstruction_crowbar(I) + return 1 if(!powered()) return if(istype(I, /obj/item/weapon/mining_voucher)) @@ -451,13 +453,6 @@ inserted_id = C interact(user) return - if(default_deconstruction_screwdriver(user, "mining-open", "mining", I)) - updateUsrDialog() - return - if(panel_open) - if(istype(I, /obj/item/weapon/crowbar)) - default_deconstruction_crowbar(I) - return 1 ..() /obj/machinery/mineral/equipment_vendor/proc/RedeemVoucher(obj/item/weapon/mining_voucher/voucher, mob/redeemer) From e23b10081ee4e4fc35defe28ff2975abfce4d20d Mon Sep 17 00:00:00 2001 From: TullyBurnalot Date: Wed, 7 Dec 2016 12:45:57 +0000 Subject: [PATCH 3/4] Maintanability of powered checks - Powered check no longer blanket bans everything but deconstruction --- code/modules/mining/equipment_locker.dm | 49 ++++++++++++++----------- 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index 74d2fde901b..c8eb4a8db1b 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -117,17 +117,18 @@ return if(default_unfasten_wrench(user, W)) return - if(!powered()) - return if(istype(W,/obj/item/weapon/card/id)) - var/obj/item/weapon/card/id/I = usr.get_active_hand() - if(istype(I) && !istype(inserted_id)) - if(!user.drop_item()) - return - I.loc = src - inserted_id = I - interact(user) - return + if(!powered()) + return + else + var/obj/item/weapon/card/id/I = usr.get_active_hand() + if(istype(I) && !istype(inserted_id)) + if(!user.drop_item()) + return + I.loc = src + inserted_id = I + interact(user) + return ..() /obj/machinery/mineral/ore_redemption/proc/SmeltMineral(var/obj/item/weapon/ore/O) @@ -439,20 +440,24 @@ if(istype(I, /obj/item/weapon/crowbar)) default_deconstruction_crowbar(I) return 1 - if(!powered()) - return if(istype(I, /obj/item/weapon/mining_voucher)) - RedeemVoucher(I, user) - return + if(!powered()) + return + else + RedeemVoucher(I, user) + return if(istype(I,/obj/item/weapon/card/id)) - var/obj/item/weapon/card/id/C = usr.get_active_hand() - if(istype(C) && !istype(inserted_id)) - if(!usr.drop_item()) - return - C.loc = src - inserted_id = C - interact(user) - return + if(!powered()) + return + else + var/obj/item/weapon/card/id/C = usr.get_active_hand() + if(istype(C) && !istype(inserted_id)) + if(!usr.drop_item()) + return + C.loc = src + inserted_id = C + interact(user) + return ..() /obj/machinery/mineral/equipment_vendor/proc/RedeemVoucher(obj/item/weapon/mining_voucher/voucher, mob/redeemer) From 1afdfe3933396edb1a70874cb309929316321b80 Mon Sep 17 00:00:00 2001 From: TullyBurnalot Date: Wed, 7 Dec 2016 18:03:45 +0000 Subject: [PATCH 4/4] Adresses the forceMove(src) - See above title --- code/modules/mining/equipment_locker.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index c8eb4a8db1b..fb98f3a8c15 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -125,7 +125,7 @@ if(istype(I) && !istype(inserted_id)) if(!user.drop_item()) return - I.loc = src + I.forceMove(src) inserted_id = I interact(user) return @@ -454,7 +454,7 @@ if(istype(C) && !istype(inserted_id)) if(!usr.drop_item()) return - C.loc = src + C.forceMove(src) inserted_id = C interact(user) return