From 0f67b3a451317e0709e5be54817bc3ba33245ba1 Mon Sep 17 00:00:00 2001 From: HumiliatedGoblin <87675952+HumiliatedGoblin@users.noreply.github.com> Date: Wed, 1 May 2024 18:41:59 +1200 Subject: [PATCH] Deconstructing walls without repairing them (#6094) # About the pull request You now need to have disarm or above to slice through walls, and help intent to repair walls. # Explain why it's good for the game Comtechs now don't need to spend 30 seconds repairing a wall, waste like 5 units of welding fuel only to deconstruct it. Now you can have choice in what you do! :D # Testing Photographs and Procedure
Screenshots & Videos it works trust
# Changelog :cl: qol: Now needs help intent to repair walls qol: Now needs disarm, grab and harm intent to deconstruct walls /:cl: --------- Co-authored-by: ihatethisengine <115417687+ihatethisengine@users.noreply.github.com> --- code/game/turfs/walls/walls.dm | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/code/game/turfs/walls/walls.dm b/code/game/turfs/walls/walls.dm index 251b23ad9c57..1781739176b7 100644 --- a/code/game/turfs/walls/walls.dm +++ b/code/game/turfs/walls/walls.dm @@ -9,7 +9,7 @@ var/hull = 0 var/walltype = WALL_METAL /// when walls smooth with one another, the type of junction each wall is. - var/junctiontype + var/junctiontype var/thermite = 0 var/melting = FALSE var/claws_minimum = CLAW_TYPE_SHARP @@ -24,7 +24,7 @@ var/damage = 0 /// Wall will break down to girders if damage reaches this point - var/damage_cap = HEALTH_WALL + var/damage_cap = HEALTH_WALL var/damage_overlay var/global/damage_overlays[8] @@ -38,7 +38,7 @@ var/d_state = 0 //Normal walls are now as difficult to remove as reinforced walls /// the acid hole inside the wall - var/obj/effect/acid_hole/acided_hole + var/obj/effect/acid_hole/acided_hole var/acided_hole_dir = SOUTH var/special_icon = 0 @@ -178,7 +178,7 @@ switch(d_state) if(WALL_STATE_WELD) - . += SPAN_INFO("The outer plating is intact. A blowtorch should slice it open.") + . += SPAN_INFO("The outer plating is intact. If you are not on help intent, a blowtorch should slice it open.") if(WALL_STATE_SCREW) . += SPAN_INFO("The outer plating has been sliced open. A screwdriver should remove the support lines.") if(WALL_STATE_WIRECUTTER) @@ -482,6 +482,8 @@ /turf/closed/wall/proc/try_weldingtool_usage(obj/item/W, mob/user) if(!damage || !iswelder(W)) return FALSE + if(user.a_intent != INTENT_HELP) + return FALSE var/obj/item/tool/weldingtool/WT = W if(WT.remove_fuel(0, user)) @@ -504,6 +506,8 @@ if(!(WT.remove_fuel(0, user))) to_chat(user, SPAN_WARNING("You need more welding fuel!")) return + if(user.a_intent == INTENT_HELP) + return playsound(src, 'sound/items/Welder.ogg', 25, 1) user.visible_message(SPAN_NOTICE("[user] begins slicing through the outer plating."),