diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm index 7e3febcc482c0..1cb54e0292149 100644 --- a/code/game/machinery/doors/poddoor.dm +++ b/code/game/machinery/doors/poddoor.dm @@ -22,6 +22,8 @@ /obj/machinery/door/poddoor/attackby(obj/item/W, mob/user, params) . = ..() + if(resistance_flags & INDESTRUCTIBLE) + return FALSE if((resistance_flags & INDESTRUCTIBLE) && W.tool_behaviour == TOOL_SCREWDRIVER) // This makes it so ERT members cannot cheese by opening their blast doors. to_chat(user, span_warning("You can't find the panel!")) return @@ -56,6 +58,15 @@ else if(W.use_tool(src, user, 10 SECONDS, volume=50)) deconstruct(TRUE) + if(W.tool_behaviour == TOOL_DECONSTRUCT) + if(!(machine_stat & NOPOWER)) + do_sparks(5, TRUE, src) + electrocute_mob(user, get_area(src), src, 1, TRUE) //zorp + close() + to_chat(user, span_notice("You start to cut [src] apart")) + if (W.use_tool(src, user, 15 SECONDS, volume = 75)) + deconstruct(TRUE) + /obj/machinery/door/poddoor/examine(mob/user) . = ..() . += span_notice("The maintenance panel is [panel_open ? "opened" : "closed"].") diff --git a/code/game/objects/structures/poddoor_assembly.dm b/code/game/objects/structures/poddoor_assembly.dm index 5909e0f666b2c..f06610ddbc5d6 100644 --- a/code/game/objects/structures/poddoor_assembly.dm +++ b/code/game/objects/structures/poddoor_assembly.dm @@ -56,6 +56,14 @@ return created_name = new_name + else if(item_used.tool_behaviour == TOOL_DECONSTRUCT) + if(!item_used.tool_start_check(user, amount=0)) + return + user.visible_message(span_notice("[user] cuts apart [src]."), span_notice("You start to slice apart [src]...")) + if(item_used.use_tool(src, user, 4 SECONDS, volume=50)) + to_chat(user, span_notice("You disassemble [src].")) + deconstruct(TRUE) + else if(item_used.tool_behaviour == TOOL_WELDER) if(!item_used.tool_start_check(user, amount=0)) return diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 3873a48423d20..308d5e120f715 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -27,7 +27,7 @@ var/real_explosion_block //ignore this, just use explosion_block var/breaksound = "shatter" var/hitsound = 'sound/effects/Glasshit.ogg' - var/decon_time = 5 SECONDS + var/decon_time = 3 SECONDS flags_ricochet = RICOCHET_HARD ricochet_chance_mod = 0.4 @@ -409,7 +409,7 @@ glass_type = /obj/item/stack/sheet/rglass rad_insulation = RAD_HEAVY_INSULATION ricochet_chance_mod = 0.8 - decon_time = 20 SECONDS + decon_time = 6 SECONDS //this is shitcode but all of construction is shitcode and needs a refactor, it works for now //If you find this like 4 years later and construction still hasn't been refactored, I'm so sorry for this @@ -542,7 +542,7 @@ damage_deflection = 11 //WS Edit - Weakens R-Windows explosion_block = 2 glass_type = /obj/item/stack/sheet/plasmarglass - decon_time = 25 SECONDS + decon_time = 15 SECONDS //entirely copypasted code //take this out when construction is made a component or otherwise modularized in some way @@ -758,7 +758,7 @@ glass_type = /obj/item/stack/sheet/plastitaniumglass glass_amount = 2 rad_insulation = RAD_HEAVY_INSULATION - decon_time = 30 SECONDS + decon_time = 10 SECONDS /obj/structure/window/plasma/reinforced/plastitanium/unanchored anchored = FALSE diff --git a/code/modules/mining/equipment/angle_grinder.dm b/code/modules/mining/equipment/angle_grinder.dm index 290cf0d153d7a..7110fd2c42f75 100644 --- a/code/modules/mining/equipment/angle_grinder.dm +++ b/code/modules/mining/equipment/angle_grinder.dm @@ -7,6 +7,8 @@ lefthand_file = 'icons/mob/inhands/equipment/backpack_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/backpack_righthand.dmi' gear_handle_type = /obj/item/gear_handle/anglegrinder + slowdown = 0.3 + drag_slowdown = 0.3 /obj/item/gear_handle/anglegrinder name = "angle grinder" @@ -26,7 +28,7 @@ usesound = 'sound/weapons/anglegrinder.ogg' tool_behaviour = null // is set to TOOL_DECONSTRUCT once wielded toolspeed = 1 - wall_decon_damage = 200 + wall_decon_damage = 250 usecost = 5 pack = /obj/item/gear_pack/anglegrinder var/startsound = 'sound/weapons/chainsawhit.ogg' @@ -68,7 +70,7 @@ . = ..() AddComponent(/datum/component/butchering, 30, 100, 0, startsound, TRUE) AddComponent(/datum/component/two_handed, force_unwielded=force, force_wielded=two_hand_force, wieldsound=startsound) - AddElement(/datum/element/tool_bang, 2) + AddElement(/datum/element/tool_bang, 1) /// triggered on wield of two handed item /obj/item/gear_handle/anglegrinder/proc/on_wield(obj/item/source, mob/user) diff --git a/sound/weapons/anglegrinder.ogg b/sound/weapons/anglegrinder.ogg index c0bc5b593a189..ceed497e17cf6 100644 Binary files a/sound/weapons/anglegrinder.ogg and b/sound/weapons/anglegrinder.ogg differ