From b4b3d5bc274fb79e0220dd464a69a3bc1f3a19ed Mon Sep 17 00:00:00 2001 From: Mike Long Date: Sat, 20 Feb 2016 21:50:59 -0500 Subject: [PATCH 1/3] Fixes #15621 --- code/game/objects/structures/girders.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index cd8100984eb..b29aa65c69a 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -132,7 +132,7 @@ var/obj/item/stack/sheet/S = W switch(S.type) - if(/obj/item/stack/sheet/metal, /obj/item/stack/sheet/metal/cyborg) + if(/obj/item/stack/sheet/metal, /obj/item/stack/sheet/metal/cyborg, /obj/item/stack/sheet/metal/fifty) if(state == GIRDER_DISPLACED) if(S.get_amount() < 2) user << "You need two sheets of metal to create a false wall!" From d3472dd45e83e300e9a1163208fa57d00c43c107 Mon Sep 17 00:00:00 2001 From: Mike Long Date: Sat, 20 Feb 2016 22:04:46 -0500 Subject: [PATCH 2/3] Minor refactor to girder code. --- code/game/objects/structures/girders.dm | 124 ++++++++++++------------ 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index b29aa65c69a..7864f3bded5 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -132,78 +132,78 @@ var/obj/item/stack/sheet/S = W switch(S.type) - if(/obj/item/stack/sheet/metal, /obj/item/stack/sheet/metal/cyborg, /obj/item/stack/sheet/metal/fifty) - 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/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 - 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 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 - user << "You start adding plating..." - if (do_after(user, 40, target = src)) - if(loc == null || S.get_amount() < 2) + 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(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 + 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(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 From 97feffe43c83b1edb564a22dae9cbe1579aa1133 Mon Sep 17 00:00:00 2001 From: Mike Long Date: Sat, 20 Feb 2016 22:07:02 -0500 Subject: [PATCH 3/3] Removes compile error --- code/game/objects/structures/girders.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 7864f3bded5..2cd8a122b37 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -130,8 +130,6 @@ 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)