diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm
index cfe8a20cce7..1d950e8ea83 100644
--- a/code/game/objects/structures/window.dm
+++ b/code/game/objects/structures/window.dm
@@ -88,11 +88,8 @@ GLOBAL_LIST_INIT(wcCommon, pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e",
shards++
setDir()
- if(decon_speed == null)
- if(fulltile)
- decon_speed = 20
- else
- decon_speed = 1
+ if(decon_speed == null && fulltile)
+ decon_speed = 2 SECONDS
var/rods = 0
if(reinf)
@@ -253,7 +250,8 @@ GLOBAL_LIST_INIT(wcCommon, pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e",
. = TRUE
if(!can_be_reached(user))
return
- to_chat(user, "You begin to lever the window [state == WINDOW_OUT_OF_FRAME ? "into":"out of"] the frame...")
+ if(decon_speed) // Only show this if it actually takes time
+ to_chat(user, "You begin to lever the window [state == WINDOW_OUT_OF_FRAME ? "into":"out of"] the frame...")
if(!I.use_tool(src, user, decon_speed, volume = I.tool_volume, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored)))
return
state = (state == WINDOW_OUT_OF_FRAME ? WINDOW_IN_FRAME : WINDOW_OUT_OF_FRAME)
@@ -267,20 +265,25 @@ GLOBAL_LIST_INIT(wcCommon, pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e",
return
if(reinf)
if(state == WINDOW_SCREWED_TO_FRAME || state == WINDOW_IN_FRAME)
- to_chat(user, "You begin to [state == WINDOW_SCREWED_TO_FRAME ? "unscrew the window from":"screw the window to"] the frame...")
+ if(decon_speed)
+ to_chat(user, "You begin to [state == WINDOW_SCREWED_TO_FRAME ? "unscrew the window from":"screw the window to"] the frame...")
if(!I.use_tool(src, user, decon_speed, volume = I.tool_volume, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored)))
return
state = (state == WINDOW_IN_FRAME ? WINDOW_SCREWED_TO_FRAME : WINDOW_IN_FRAME)
to_chat(user, "You [state == WINDOW_IN_FRAME ? "unfasten the window from":"fasten the window to"] the frame.")
+
else if(state == WINDOW_OUT_OF_FRAME)
- to_chat(user, "You begin to [anchored ? "unscrew the frame from":"screw the frame to"] the floor...")
+ if(decon_speed)
+ to_chat(user, "You begin to [anchored ? "unscrew the frame from":"screw the frame to"] the floor...")
if(!I.use_tool(src, user, decon_speed, volume = I.tool_volume, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored)))
return
anchored = !anchored
update_nearby_icons()
to_chat(user, "You [anchored ? "fasten the frame to":"unfasten the frame from"] the floor.")
+
else //if we're not reinforced, we don't need to check or update state
- to_chat(user, "You begin to [anchored ? "unscrew the window from":"screw the window to"] the floor...")
+ if(decon_speed)
+ to_chat(user, "You begin to [anchored ? "unscrew the window from":"screw the window to"] the floor...")
if(!I.use_tool(src, user, decon_speed, volume = I.tool_volume, extra_checks = CALLBACK(src, .proc/check_anchored, anchored)))
return
anchored = !anchored
@@ -296,7 +299,8 @@ GLOBAL_LIST_INIT(wcCommon, pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e",
. = TRUE
if(!can_be_reached(user))
return
- TOOL_ATTEMPT_DISMANTLE_MESSAGE
+ if(decon_speed)
+ TOOL_ATTEMPT_DISMANTLE_MESSAGE
if(!I.use_tool(src, user, decon_speed, volume = I.tool_volume, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored)))
return
var/obj/item/stack/sheet/G = new glass_type(user.loc, glass_amount)