diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm
index 4a70729d7e9..9f3829a8277 100644
--- a/code/game/objects/structures/false_walls.dm
+++ b/code/game/objects/structures/false_walls.dm
@@ -97,12 +97,9 @@
else
icon_state = "fwall_open"
-/obj/structure/falsewall/proc/ChangeToWall(delete = 1)
+/obj/structure/falsewall/proc/ChangeToWall(delete = TRUE)
var/turf/T = get_turf(src)
- if(!walltype || walltype == "metal")
- T.ChangeTurf(/turf/simulated/wall)
- else
- T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[walltype]"))
+ T.ChangeTurf(walltype)
if(delete)
qdel(src)
return T
diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm
index 2ef4602d268..95cb958ae34 100644
--- a/code/game/turfs/simulated/floor/plating.dm
+++ b/code/game/turfs/simulated/floor/plating.dm
@@ -7,6 +7,8 @@
broken_states = list("damaged1", "damaged2", "damaged3", "damaged4", "damaged5")
burnt_states = list("floorscorched1", "floorscorched2")
+ var/plating_unscrewed = FALSE
+
footstep_sounds = list(
"human" = list('sound/effects/footstep/plating_human.ogg'),
"xeno" = list('sound/effects/footstep/plating_xeno.ogg')
@@ -31,6 +33,12 @@
if(!broken && !burnt)
icon_state = icon_plating //Because asteroids are 'platings' too.
+/turf/simulated/floor/plating/examine(mob/user)
+ . = ..()
+
+ if(plating_unscrewed)
+ to_chat(user, "It has been unfastened.")
+
/turf/simulated/floor/plating/attackby(obj/item/C, mob/user, params)
if(..())
return TRUE
@@ -64,7 +72,16 @@
to_chat(user, "This section is too damaged to support a tile! Use a welder to fix the damage.")
return TRUE
- else if(iswelder(C))
+ else if(isscrewdriver(C))
+ var/obj/item/screwdriver/screwdriver = C
+ to_chat(user, "You start [plating_unscrewed ? "fastening" : "unfastening"] [src].")
+ playsound(src, screwdriver.usesound, 50, 1)
+ if(do_after(user, 20 * screwdriver.toolspeed, target = src) && screwdriver)
+ to_chat(user, "You [plating_unscrewed ? "fasten" : "unfasten"] [src].")
+ plating_unscrewed = !plating_unscrewed
+ return TRUE
+
+ else if(iswelder(C) && plating_unscrewed)
var/obj/item/weldingtool/welder = C
if(welder.isOn())
if(!welder.remove_fuel(0, user))