diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index cd8100984eb..2cd8a122b37 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -130,80 +130,78 @@ return var/obj/item/stack/sheet/S = W - switch(S.type) + if(istype(S,/obj/item/stack/sheet/metal)) + if(state == GIRDER_DISPLACED) + if(S.get_amount() < 2) + user << "You need two sheets of metal to create a false wall!" + return + user << "You start building a false wall..." + if(do_after(user, 20, target = src)) + if(!src.loc || !S || S.get_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/F = new (loc) + transfer_fingerprints_to(F) + qdel(src) + else + if(S.get_amount() < 2) + user << "You need two sheets of metal to finish a wall!" + return + user << "You start adding plating..." + if (do_after(user, 40, target = src)) + if(loc == null || S.get_amount() < 2) + return + S.use(2) + user << "You add the plating." + var/turf/T = get_turf(src) + T.ChangeTurf(/turf/simulated/wall) + transfer_fingerprints_to(T) + qdel(src) + return - if(/obj/item/stack/sheet/metal, /obj/item/stack/sheet/metal/cyborg) - if(state == GIRDER_DISPLACED) - if(S.get_amount() < 2) - user << "You need two sheets of metal to create a false wall!" + if(istype(S,/obj/item/stack/sheet/plasteel)) + if(state == GIRDER_DISPLACED) + if(S.amount < 2) + user << "You need at least two sheets 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 - user << "You start building a false wall..." - if(do_after(user, 20, target = src)) - if(!src.loc || !S || S.get_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/F = new (loc) - transfer_fingerprints_to(F) - qdel(src) - else - if(S.get_amount() < 2) - user << "You need two sheets of metal to finish a wall!" + S.use(2) + user << "You create a reinforced false wall. Push on it to open or close the passage." + var/obj/structure/falsewall/reinforced/FW = new (loc) + transfer_fingerprints_to(FW) + qdel(src) + else + if(state == GIRDER_REINF) + if(S.amount < 1) return - user << "You start adding plating..." - if (do_after(user, 40, target = src)) - if(loc == null || S.get_amount() < 2) + user << "You start finalizing the reinforced wall..." + if(do_after(user, 50, target = src)) + if(!src.loc || !S || S.amount < 1) return - S.use(2) - user << "You add the plating." + S.use(1) + user << "You fully reinforce the wall." var/turf/T = get_turf(src) - T.ChangeTurf(/turf/simulated/wall) + T.ChangeTurf(/turf/simulated/wall/r_wall) transfer_fingerprints_to(T) qdel(src) return - - if(/obj/item/stack/sheet/plasteel) - if(state == GIRDER_DISPLACED) - if(S.amount < 2) - user << "You need at least two sheets 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 reinforced false wall. Push on it to open or close the passage." - var/obj/structure/falsewall/reinforced/FW = new (loc) - transfer_fingerprints_to(FW) - qdel(src) else - if(state == GIRDER_REINF) - if(S.amount < 1) - return - user << "You start finalizing the reinforced wall..." - if(do_after(user, 50, target = src)) - if(!src.loc || !S || S.amount < 1) - return - S.use(1) - user << "You fully reinforce the wall." - var/turf/T = get_turf(src) - T.ChangeTurf(/turf/simulated/wall/r_wall) - transfer_fingerprints_to(T) - qdel(src) + if(S.amount < 1) return - else - if(S.amount < 1) + user << "You start reinforcing the girder..." + if (do_after(user, 60, target = src)) + if(!src.loc || !S || S.amount < 1) return - user << "You start reinforcing the girder..." - if (do_after(user, 60, target = src)) - if(!src.loc || !S || S.amount < 1) - return - S.use(1) - user << "You reinforce the girder." - var/obj/structure/girder/reinforced/R = new (loc) - transfer_fingerprints_to(R) - qdel(src) - return + S.use(1) + user << "You reinforce the girder." + var/obj/structure/girder/reinforced/R = new (loc) + transfer_fingerprints_to(R) + qdel(src) + return if(S.sheettype) var/M = S.sheettype