diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm
index 188911cc2a0..23c6db2d478 100644
--- a/code/game/objects/structures/false_walls.dm
+++ b/code/game/objects/structures/false_walls.dm
@@ -261,3 +261,12 @@
mineral = "wood"
walltype = "wood"
canSmoothWith = list(/obj/structure/falsewall/wood, /turf/simulated/wall/mineral/wood)
+
+/obj/structure/falsewall/iron
+ name = "rough metal wall"
+ desc = "A wall with rough metal plating."
+ icon = 'icons/turf/walls/iron_wall.dmi'
+ icon_state = ""
+ mineral = "metal"
+ walltype = "iron"
+ canSmoothWith = list(/obj/structure/falsewall/iron, /turf/simulated/wall/mineral/iron)
diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm
index 28a1970eb95..5b1b6e07594 100644
--- a/code/game/objects/structures/girders.dm
+++ b/code/game/objects/structures/girders.dm
@@ -84,7 +84,7 @@
transfer_fingerprints_to(G)
qdel(src)
- else if(istype(W, /obj/item/stack/sheet))
+ else if(istype(W, /obj/item/stack))
if (istype(src.loc, /turf/simulated/wall))
user << "There is already a wall present!"
return
@@ -95,6 +95,40 @@
user << "There is already a false wall present!"
return
+ if(istype(W,/obj/item/stack/rods))
+ var/obj/item/stack/rods/S = W
+ if(state == GIRDER_DISPLACED)
+ if(S.amount < 2)
+ user << "You need at least two rods to create a false wall!"
+ return
+ user << "You start building a reinforced false wall..."
+ if(do_after(user, 20, target = src))
+ if(!src.loc || !S || S.amount < 2)
+ return
+ S.use(2)
+ user << "You create a false wall. Push on it to open or close the passage."
+ var/obj/structure/falsewall/iron/FW = new (loc)
+ transfer_fingerprints_to(FW)
+ qdel(src)
+ else
+ if(S.amount < 5)
+ user << "You need at least five rods to add plating!"
+ return
+ user << "You start adding plating..."
+ if (do_after(user, 40, target = src))
+ if(!src.loc || !S || S.amount < 5)
+ return
+ S.use(5)
+ user << "You add the plating."
+ var/turf/T = get_turf(src)
+ T.ChangeTurf(/turf/simulated/wall/mineral/iron)
+ transfer_fingerprints_to(T)
+ qdel(src)
+ return
+
+ if(!istype(W,/obj/item/stack/sheet))
+ return
+
var/obj/item/stack/sheet/S = W
switch(S.type)
diff --git a/code/game/turfs/simulated/walls_mineral.dm b/code/game/turfs/simulated/walls_mineral.dm
index 9c6b823bd77..b3686d1d000 100644
--- a/code/game/turfs/simulated/walls_mineral.dm
+++ b/code/game/turfs/simulated/walls_mineral.dm
@@ -7,10 +7,6 @@
canSmoothWith = null
smooth = SMOOTH_TRUE
-/turf/simulated/wall/mineral/New()
- sheet_type = text2path("/obj/item/stack/sheet/mineral/[mineral]")
- ..()
-
/turf/simulated/wall/mineral/gold
name = "gold wall"
desc = "A wall with gold plating. Swag!"
@@ -18,6 +14,7 @@
icon_state = "gold"
walltype = "gold"
mineral = "gold"
+ sheet_type = /obj/item/stack/sheet/mineral/gold
//var/electro = 1
//var/shocked = null
explosion_block = 0 //gold is a soft metal you dingus.
@@ -30,6 +27,7 @@
icon_state = "silver"
walltype = "silver"
mineral = "silver"
+ sheet_type = /obj/item/stack/sheet/mineral/silver
//var/electro = 0.75
//var/shocked = null
canSmoothWith = list(/turf/simulated/wall/mineral/silver, /obj/structure/falsewall/silver)
@@ -41,6 +39,7 @@
icon_state = "diamond"
walltype = "diamond"
mineral = "diamond"
+ sheet_type = /obj/item/stack/sheet/mineral/diamond
slicing_duration = 200 //diamond wall takes twice as much time to slice
explosion_block = 3
canSmoothWith = list(/turf/simulated/wall/mineral/diamond, /obj/structure/falsewall/diamond)
@@ -55,6 +54,7 @@
icon_state = "bananium"
walltype = "bananium"
mineral = "bananium"
+ sheet_type = /obj/item/stack/sheet/mineral/bananium
canSmoothWith = list(/turf/simulated/wall/mineral/clown, /obj/structure/falsewall/clown)
/turf/simulated/wall/mineral/sandstone
@@ -64,6 +64,7 @@
icon_state = "sandstone"
walltype = "sandstone"
mineral = "sandstone"
+ sheet_type = /obj/item/stack/sheet/mineral/sandstone
explosion_block = 0
canSmoothWith = list(/turf/simulated/wall/mineral/sandstone, /obj/structure/falsewall/sandstone)
@@ -74,6 +75,7 @@
icon_state = "uranium"
walltype = "uranium"
mineral = "uranium"
+ sheet_type = /obj/item/stack/sheet/mineral/uranium
canSmoothWith = list(/turf/simulated/wall/mineral/uranium, /obj/structure/falsewall/uranium)
/turf/simulated/wall/mineral/uranium/proc/radiate()
@@ -107,6 +109,7 @@
icon_state = "plasma"
walltype = "plasma"
mineral = "plasma"
+ sheet_type = /obj/item/stack/sheet/mineral/plasma
thermal_conductivity = 0.04
canSmoothWith = list(/turf/simulated/wall/mineral/plasma, /obj/structure/falsewall/plasma)
@@ -146,6 +149,17 @@
icon_state = "wood"
walltype = "wood"
mineral = "wood"
+ sheet_type = /obj/item/stack/sheet/mineral/wood
hardness = 70
explosion_block = 0
- canSmoothWith = list(/turf/simulated/wall/mineral/wood, /obj/structure/falsewall/wood)
\ No newline at end of file
+ canSmoothWith = list(/turf/simulated/wall/mineral/wood, /obj/structure/falsewall/wood)
+
+/turf/simulated/wall/mineral/iron
+ name = "rough metal wall"
+ desc = "A wall with rough metal plating."
+ icon = 'icons/turf/walls/iron_wall.dmi'
+ icon_state = "iron"
+ walltype = "iron"
+ mineral = "rods"
+ sheet_type = /obj/item/stack/rods
+ canSmoothWith = list(/turf/simulated/wall/mineral/iron, /obj/structure/falsewall/iron)
\ No newline at end of file
diff --git a/icons/turf/walls/iron_wall.dmi b/icons/turf/walls/iron_wall.dmi
index 6fa4202373d..86bed015f15 100644
Binary files a/icons/turf/walls/iron_wall.dmi and b/icons/turf/walls/iron_wall.dmi differ