From 5cd8786154be9deb218183a3a74c22bb03989b60 Mon Sep 17 00:00:00 2001 From: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com> Date: Sun, 26 Jan 2025 12:03:04 -0700 Subject: [PATCH] Constructable Directional Firelocks (#89061) ## About The Pull Request Gone are the days of these turning into big fulltile firelocks. ![image](https://github.com/user-attachments/assets/85e49c57-0691-41f0-b0ba-e7ce72eea554) Pretty simple PR conceptually, makes a border_only firelock frame, constructable with 2 iron (as opposed to the full 3) ![image](https://github.com/user-attachments/assets/1ea866ff-8a6d-4ecb-8bb0-23f0907d0897) They function just like any other border object, rotatable and so on. Direction is properly shared between frame and completed firelock. Firelocks can't ever share a tile (so you can't make a 90 degree angle) but even if we wanted to remove that limitation it will have to stay until somebody smarter comes along. ![image](https://github.com/user-attachments/assets/6e410b27-af75-41a7-9e80-1a9a04a7130f) ![image](https://github.com/user-attachments/assets/da4aa515-60a2-42fc-90fd-4ebdc63118d2) Construction steps are identical to any other firelock, except these can **not** be reinforced with plasteel. Deconstruction is the same. ![image](https://github.com/user-attachments/assets/e4539bda-551c-405e-87c7-73d0a0ca4e32) ![image](https://github.com/user-attachments/assets/cafd069e-f52f-424f-9cb7-13d59e06eab7) Also I discovered that the firelock icons just didn't work correctly during construction so those are fixed now too ![image](https://github.com/user-attachments/assets/a2d4bec9-a2d8-4137-a3f1-3035fc0388bc) ## Why It's Good For The Game Crew should be capable of repairing damages caused during a round, and items like this that had no means of replacement leave a sour taste to an aspiring engineer. Plus turning into full tile ones the second they're damaged is really jarring. ## Changelog :cl: add: Added Directional Firelock Frames, making the tile-edge firelocks properly repairable/deconstructable. fix: fixed firelock construction not properly updating icons /:cl: --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> --- code/game/machinery/doors/firedoor.dm | 63 ++++++++++++++++-- .../items/stacks/sheets/sheet_types.dm | 1 + icons/obj/doors/edge_Doorfire.dmi | Bin 20141 -> 22966 bytes 3 files changed, 58 insertions(+), 6 deletions(-) diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 5de6b4d61d3..c3c7f2bb2b6 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -1,5 +1,5 @@ -#define CONSTRUCTION_PANEL_OPEN 1 //Maintenance panel is open, still functioning -#define CONSTRUCTION_NO_CIRCUIT 2 //Circuit board removed, can safely weld apart +#define CONSTRUCTION_NO_CIRCUIT 1 //Empty frame, can safely weld apart or install circuit +#define CONSTRUCTION_PANEL_OPEN 2 //Circuit panel exposed for removal or securing #define DEFAULT_STEP_TIME 20 /// default time for each step #define REACTIVATION_DELAY (3 SECONDS) // Delay on reactivation, used to prevent dumb crowbar things. Just trust me @@ -709,6 +709,7 @@ else unbuilt_lock.constructionStep = CONSTRUCTION_NO_CIRCUIT unbuilt_lock.update_integrity(unbuilt_lock.max_integrity * 0.5) + unbuilt_lock.setDir(dir) unbuilt_lock.update_appearance() else new /obj/item/electronics/firelock (targetloc) @@ -728,6 +729,7 @@ can_crush = FALSE flags_1 = ON_BORDER_1 can_atmos_pass = ATMOS_PASS_PROC + assemblytype = /obj/structure/firelock_frame/border_only /obj/machinery/door/firedoor/border_only/closed icon_state = "door_closed" @@ -810,13 +812,15 @@ density = TRUE var/constructionStep = CONSTRUCTION_NO_CIRCUIT var/reinforced = 0 + /// Is this a border_only firelock? Used in several checks during construction + var/directional = FALSE /obj/structure/firelock_frame/examine(mob/user) . = ..() switch(constructionStep) if(CONSTRUCTION_PANEL_OPEN) . += span_notice("It is unbolted from the floor. The circuit could be removed with a crowbar.") - if(!reinforced) + if(!reinforced && !directional) . += span_notice("It could be reinforced with plasteel.") if(CONSTRUCTION_NO_CIRCUIT) . += span_notice("There are no firelock electronics in the frame. The frame could be welded apart .") @@ -859,11 +863,18 @@ playsound(get_turf(src), 'sound/items/deconstruct.ogg', 50, TRUE) if(reinforced) new /obj/machinery/door/firedoor/heavy(get_turf(src)) + else if(directional) + var/obj/machinery/door/firedoor/border_only/new_firedoor = new /obj/machinery/door/firedoor/border_only(get_turf(src)) + new_firedoor.setDir(dir) + new_firedoor.adjust_lights_starting_offset() else new /obj/machinery/door/firedoor(get_turf(src)) qdel(src) return if(istype(attacking_object, /obj/item/stack/sheet/plasteel)) + if(directional) + to_chat(user, span_warning("[src] can not be reinforced.")) + return var/obj/item/stack/sheet/plasteel/plasteel_sheet = attacking_object if(reinforced) to_chat(user, span_warning("[src] is already reinforced.")) @@ -897,6 +908,7 @@ span_notice("You insert and secure [attacking_object].")) playsound(get_turf(src), 'sound/items/deconstruct.ogg', 50, TRUE) constructionStep = CONSTRUCTION_PANEL_OPEN + update_appearance() return if(attacking_object.tool_behaviour == TOOL_WELDER) if(!attacking_object.tool_start_check(user, amount=1)) @@ -909,10 +921,10 @@ return user.visible_message(span_notice("[user] cuts apart [src]!"), \ span_notice("You cut [src] into metal.")) - var/turf/tagetloc = get_turf(src) - new /obj/item/stack/sheet/iron(tagetloc, 3) + var/turf/targetloc = get_turf(src) + new /obj/item/stack/sheet/iron(targetloc, directional ? 2 : 3) if(reinforced) - new /obj/item/stack/sheet/plasteel(tagetloc, 2) + new /obj/item/stack/sheet/plasteel(targetloc, 2) qdel(src) return if(istype(attacking_object, /obj/item/electroadaptive_pseudocircuit)) @@ -949,6 +961,45 @@ name = "heavy firelock frame" reinforced = TRUE +/obj/structure/firelock_frame/border_only + icon = 'icons/obj/doors/edge_Doorfire.dmi' + flags_1 = ON_BORDER_1 + obj_flags = CAN_BE_HIT | IGNORE_DENSITY + directional = TRUE + +/obj/structure/firelock_frame/border_only/Initialize(mapload) + . = ..() + AddComponent(/datum/component/simple_rotation, ROTATION_NEEDS_ROOM) + + var/static/list/loc_connections = list( + COMSIG_ATOM_EXIT = PROC_REF(on_exit), + ) + AddElement(/datum/element/connect_loc, loc_connections) + +/obj/structure/firelock_frame/border_only/proc/on_exit(datum/source, atom/movable/leaving, direction) + SIGNAL_HANDLER + + if(leaving == src) + return // Let's not block ourselves. + + if(!(direction & dir)) + return + + if (!density) + return + + if (leaving.movement_type & (PHASING)) + return + + if (leaving.move_force >= MOVE_FORCE_EXTREMELY_STRONG) + return + + leaving.Bump(src) + return COMPONENT_ATOM_BLOCK_EXIT + +/obj/structure/firelock_frame/border_only/CanPass(atom/movable/mover, border_dir) + return border_dir & dir ? ..() : TRUE + #undef CONSTRUCTION_PANEL_OPEN #undef CONSTRUCTION_NO_CIRCUIT #undef REACTIVATION_DELAY diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 3ccb06c3c01..f24833ac5fd 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -113,6 +113,7 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ )), \ null, \ new/datum/stack_recipe("firelock frame", /obj/structure/firelock_frame, 3, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ + new/datum/stack_recipe("directional firelock frame", /obj/structure/firelock_frame/border_only, 2, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_CHECK_DIRECTION, category = CAT_DOORS), \ new/datum/stack_recipe("turret frame", /obj/machinery/porta_turret_construct, 5, time = 2.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_STRUCTURE), \ new/datum/stack_recipe("meatspike frame", /obj/structure/kitchenspike_frame, 5, time = 2.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_STRUCTURE), \ new/datum/stack_recipe("reflector frame", /obj/structure/reflector, 5, time = 2.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_STRUCTURE), \ diff --git a/icons/obj/doors/edge_Doorfire.dmi b/icons/obj/doors/edge_Doorfire.dmi index bb6bee3fc8712a334fe022edbc74d8c8bb5f2956..b4866a0951b5bf1e7c78cc7fa5dce2685bb82f15 100644 GIT binary patch literal 22966 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 literal 20141 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