From 5024b2977c421a86aa971e2a2cb7e586dd6fa846 Mon Sep 17 00:00:00 2001 From: Verkister Date: Mon, 10 Apr 2023 12:26:30 +0300 Subject: [PATCH] Couple more recycling tweaks Added a button for garbage grinder that can be pressed without needing to open the windoor. Fixed AI/borg interaction with the grinder. Added a var to toggle the recycling crusher's manual feeding, which the grinder will toggle off for it. (borg modules will no longer be eaten out of their slots) Made the crusher start upgraded to full efficiency. Also fixed the funned up poster near the entrance. --- code/modules/recycling/recycling.dm | 4 +++- maps/southern_cross/southern_cross-2.dmm | 13 +++++++---- .../code/modules/recycling/v_garbosystem.dm | 23 +++++++++++++++++-- 3 files changed, 32 insertions(+), 8 deletions(-) diff --git a/code/modules/recycling/recycling.dm b/code/modules/recycling/recycling.dm index 8d92958b6f..ff299eaa5d 100644 --- a/code/modules/recycling/recycling.dm +++ b/code/modules/recycling/recycling.dm @@ -6,6 +6,7 @@ var/working = FALSE var/negative_dir = null //VOREStation Addition + var/hand_fed = TRUE //CHOMPAdd /obj/machinery/recycling/process() return PROCESS_KILL // these are all stateful @@ -33,7 +34,8 @@ return if(default_part_replacement(user, O)) return - + if(!hand_fed) //CHOMPAdd + return var/mob/living/M = user if(can_accept_item(O)) M.drop_from_inventory(O) diff --git a/maps/southern_cross/southern_cross-2.dmm b/maps/southern_cross/southern_cross-2.dmm index 53330aadfd..e39ce7fbd0 100644 --- a/maps/southern_cross/southern_cross-2.dmm +++ b/maps/southern_cross/southern_cross-2.dmm @@ -51254,10 +51254,6 @@ }, /turf/simulated/floor/carpet/sblucarpet, /area/medical/medbay2) -"gRP" = ( -/obj/structure/sign/poster, -/turf/simulated/wall, -/area/quartermaster/delivery) "gSn" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -55497,6 +55493,10 @@ /obj/structure/sign/warning/moving_parts{ pixel_x = -32 }, +/obj/machinery/button/garbosystem{ + pixel_y = 17; + pixel_x = 10 + }, /turf/simulated/floor/plating, /area/quartermaster/warehouse) "jfz" = ( @@ -77788,6 +77788,9 @@ d2 = 2; icon_state = "1-2" }, +/obj/structure/sign/poster{ + dir = 8 + }, /turf/simulated/floor/tiled/steel_grid, /area/quartermaster/delivery) "vXB" = ( @@ -103066,7 +103069,7 @@ gpI gck bud bud -gRP +bud bGn xlj aXQ diff --git a/modular_chomp/code/modules/recycling/v_garbosystem.dm b/modular_chomp/code/modules/recycling/v_garbosystem.dm index f76471e5d3..cbcddc9e57 100644 --- a/modular_chomp/code/modules/recycling/v_garbosystem.dm +++ b/modular_chomp/code/modules/recycling/v_garbosystem.dm @@ -10,6 +10,7 @@ active_power_usage = 100 var/operating = FALSE var/obj/machinery/recycling/crusher/crusher //Connects to regular crusher + var/obj/machinery/button/garbosystem/button var/list/affecting var/voracity = 5 //How much stuff is swallowed at once. @@ -17,13 +18,20 @@ . = ..() for(var/dir in cardinal) src.crusher = locate(/obj/machinery/recycling/crusher, get_step(src, dir)) - if(src.crusher) break + src.button = locate(/obj/machinery/button/garbosystem, get_step(src, dir)) + if(crusher) + crusher.hand_fed = FALSE + if(button) + button.grinder = src return /obj/machinery/v_garbosystem/attack_hand(mob/living/user as mob) operating = !operating update() +/obj/machinery/v_garbosystem/attack_ai(mob/user as mob) + return attack_hand(user) + /obj/machinery/v_garbosystem/power_change() if((. = ..())) update() @@ -115,4 +123,15 @@ return else to_chat(user, "Unable to empty filter while the machine is running.") - return ..() \ No newline at end of file + return ..() + +/obj/machinery/button/garbosystem + name = "garbage grinder switch" + desc = "A power button for the big grinder." + icon = 'icons/obj/machines/doorbell_vr.dmi' + icon_state = "doorbell-standby" + var/obj/machinery/v_garbosystem/grinder + +/obj/machinery/button/garbosystem/attack_hand(mob/living/user as mob) + if(grinder) + return grinder.attack_hand(user)