[MIRROR] Remove tiered canister construction [MDB IGNORE] (#24296)

* Remove tiered canister construction (#78909)

## About The Pull Request

In https://github.com/tgstation/tgstation/pull/66210 we removed canister
tiers, but didn't change the construction code. Currently you still have
to build an unfinished frame with 5 iron, 'upgrade' it to tier 1 with
another 5 iron, then complete it.

This combines it all into a single 10 iron recipe.

## Why It's Good For The Game

Eliminates the extra steps in canister construction, since you can't
upgrade above tier 1 any more anyways.

## Changelog

🆑 LT3
qol: Canisters can now be built in one step, no upgrading required
/🆑

* Remove tiered canister construction

* Modular paths

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
This commit is contained in:
SkyratBot
2023-10-12 11:50:35 -07:00
committed by GitHub
co-authored by lessthanthree Giz
parent e6d08225d2
commit 3673d7c4cd
15 changed files with 1083 additions and 1176 deletions
@@ -2574,7 +2574,7 @@
dir = 4
},
/obj/effect/decal/cleanable/dirt,
/obj/structure/canister_frame/machine,
/obj/structure/fluff/broken_canister_frame,
/turf/open/floor/plating/snowed/icemoon,
/area/icemoon/underground/explored)
"Tr" = (
+1 -1
View File
@@ -575,7 +575,7 @@
"xy" = (
/obj/effect/turf_decal/delivery,
/obj/structure/closet/crate/large,
/obj/structure/canister_frame/machine/finished_canister_frame,
/obj/structure/fluff/broken_canister_frame,
/obj/effect/turf_decal/tile/neutral/half/contrasted{
dir = 1
},
File diff suppressed because it is too large Load Diff
+58 -58
View File
@@ -153,6 +153,13 @@
/obj/structure/alien/egg/burst,
/turf/open/floor/iron/dark,
/area/ruin/space/ancientstation/delta/ai)
"aQ" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/table,
/obj/effect/decal/cleanable/dirt,
/obj/item/clothing/neck/link_scryer/loaded/charlie,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/bridge)
"aS" = (
/obj/structure/sign/poster/official/nanotrasen_logo,
/turf/closed/wall,
@@ -2456,6 +2463,16 @@
/obj/structure/sign/poster/official/work_for_a_future,
/turf/closed/wall/rust,
/area/ruin/space/ancientstation/charlie/dorms)
"kN" = (
/obj/structure/table,
/obj/item/crowbar,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/directional/west,
/obj/effect/decal/cleanable/dirt,
/obj/effect/spawner/random/decoration/glowstick,
/obj/item/clothing/neck/link_scryer/loaded/charlie,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/dorms)
"kO" = (
/obj/effect/turf_decal/stripes/line{
dir = 9
@@ -2578,6 +2595,12 @@
/obj/effect/turf_decal/tile/yellow/half/contrasted,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/beta/atmos)
"lh" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/rnd/server/oldstation,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/delta/rnd)
"lk" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/tile/brown/half/contrasted{
@@ -3864,16 +3887,6 @@
/obj/structure/chair,
/turf/open/floor/iron/white/textured,
/area/ruin/space/ancientstation/delta/proto)
"sq" = (
/obj/structure/table,
/obj/item/crowbar,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/spawner/random/decoration/glowstick,
/obj/structure/mirror/directional/west,
/obj/item/clothing/neck/link_scryer/loaded/charlie,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/dorms)
"ss" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
@@ -4405,6 +4418,19 @@
/obj/structure/cable,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/hall)
"wg" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/directional/east,
/obj/structure/closet/crate/secure/weapon{
req_access = list("away_sec")
},
/obj/item/knife/combat,
/obj/item/clothing/suit/armor/vest/old,
/obj/item/gun/ballistic/rifle/boltaction,
/obj/item/ammo_box/strilka310,
/obj/item/ammo_box/strilka310,
/turf/open/floor/plating,
/area/ruin/space/ancientstation/delta/hall)
"wi" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/door/airlock/command{
@@ -4727,16 +4753,6 @@
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/delta/rnd)
"yN" = (
/obj/structure/table,
/obj/item/crowbar,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/directional/west,
/obj/effect/decal/cleanable/dirt,
/obj/effect/spawner/random/decoration/glowstick,
/obj/item/clothing/neck/link_scryer/loaded/charlie,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/dorms)
"yQ" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/window/plasma/spawner/directional/south,
@@ -4951,12 +4967,6 @@
},
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/hall)
"Aj" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/rnd/server/oldstation,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/delta/rnd)
"Al" = (
/turf/closed/mineral/iron,
/area/space/nearstation)
@@ -5168,6 +5178,11 @@
/obj/structure/cable,
/turf/template_noop,
/area/space/nearstation)
"BC" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/fluff/broken_canister_frame,
/turf/open/floor/engine/airless,
/area/ruin/space/ancientstation/beta/supermatter)
"BH" = (
/obj/item/solar_assembly,
/obj/structure/cable,
@@ -5412,11 +5427,6 @@
},
/turf/open/floor/iron,
/area/ruin/space/ancientstation/delta/rnd)
"DK" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/canister_frame/machine/unfinished_canister_frame,
/turf/open/floor/engine/airless,
/area/ruin/space/ancientstation/beta/supermatter)
"DM" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
@@ -5617,19 +5627,6 @@
/obj/machinery/firealarm/directional/south,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/delta/hall)
"Fy" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/directional/east,
/obj/structure/closet/crate/secure/weapon{
req_access = list("away_sec")
},
/obj/item/knife/combat,
/obj/item/clothing/suit/armor/vest/old,
/obj/item/gun/ballistic/rifle/boltaction,
/obj/item/ammo_box/strilka310,
/obj/item/ammo_box/strilka310,
/turf/open/floor/plating,
/area/ruin/space/ancientstation/delta/hall)
"Fz" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
@@ -6709,6 +6706,16 @@
/obj/effect/mapping_helpers/broken_floor,
/turf/open/floor/plating/airless,
/area/ruin/space/ancientstation/beta/supermatter)
"Mt" = (
/obj/structure/table,
/obj/item/crowbar,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/spawner/random/decoration/glowstick,
/obj/structure/mirror/directional/west,
/obj/item/clothing/neck/link_scryer/loaded/charlie,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/dorms)
"Mu" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/space_heater,
@@ -8119,13 +8126,6 @@
/obj/effect/decal/cleanable/glass,
/turf/open/floor/engine/airless,
/area/ruin/space/ancientstation/beta/supermatter)
"Xf" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/table,
/obj/effect/decal/cleanable/dirt,
/obj/item/clothing/neck/link_scryer/loaded/charlie,
/turf/open/floor/iron,
/area/ruin/space/ancientstation/charlie/bridge)
"Xj" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
@@ -10556,7 +10556,7 @@ NU
xY
lI
CN
DK
BC
iv
Qi
ZD
@@ -12219,8 +12219,8 @@ aG
nk
mz
gZ
yN
sq
kN
Mt
mz
nk
nk
@@ -12256,7 +12256,7 @@ aa
aS
wl
bg
Xf
aQ
aI
ba
bk
@@ -12654,7 +12654,7 @@ AA
ax
aW
aI
Xf
aQ
bm
qr
aS
@@ -14185,7 +14185,7 @@ kw
Hk
kw
iq
Aj
lh
WV
ob
hY
@@ -15183,7 +15183,7 @@ Wd
Np
rp
jg
Fy
wg
yx
bE
Jg
@@ -5532,7 +5532,7 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible{
dir = 1
},
/obj/structure/canister_frame/machine/unfinished_canister_frame,
/obj/structure/fluff/broken_canister_frame,
/obj/effect/decal/cleanable/dirt,
/obj/effect/mapping_helpers/burnt_floor,
/turf/open/floor/iron,
@@ -8017,7 +8017,7 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible{
dir = 1
},
/obj/structure/canister_frame/machine/unfinished_canister_frame,
/obj/structure/fluff/broken_canister_frame,
/turf/open/floor/iron,
/area/ruin/space/ks13/science/ordnance)
"Zr" = (
@@ -10354,7 +10354,7 @@
/obj/machinery/atmospherics/pipe/smart/simple/violet/hidden{
dir = 9
},
/obj/structure/canister_frame/machine/unfinished_canister_frame,
/obj/structure/fluff/broken_canister_frame,
/turf/open/floor/plating,
/area/ruin/space/has_grav/skyrat/interdynefob/engineering)
"Vw" = (
+53 -53
View File
@@ -893,13 +893,6 @@
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
/area/station/engineering/atmos/project)
"arV" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/tile/yellow/opposingcorners,
/obj/structure/table,
/obj/machinery/microwave/engineering/cell_included,
/turf/open/floor/iron,
/area/station/maintenance/department/engine/atmos)
"asb" = (
/obj/effect/turf_decal/siding/white,
/turf/open/floor/iron/dark/small,
@@ -4717,24 +4710,6 @@
/obj/effect/spawner/random/maintenance,
/turf/open/floor/noslip/tram_platform,
/area/station/security/tram)
"bQF" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/effect/turf_decal/tile/yellow/full,
/obj/structure/table/reinforced,
/obj/machinery/door/firedoor,
/obj/machinery/door/window/right/directional/east{
name = "Pharmacy Desk";
req_access = list("pharmacy")
},
/obj/machinery/door/poddoor/shutters/preopen{
dir = 4;
id = "pharmacy_shutters";
name = "Pharmacy Shutters"
},
/turf/open/floor/iron/dark/textured_large,
/area/station/medical/pharmacy)
"bQU" = (
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
@@ -12281,6 +12256,17 @@
},
/turf/open/floor/circuit/red,
/area/station/ai_monitored/turret_protected/ai)
"eCD" = (
/obj/effect/turf_decal/bot_white,
/obj/effect/decal/cleanable/dirt,
/obj/item/clothing/gloves/color/fyellow{
pixel_y = 7
},
/obj/structure/fluff/broken_canister_frame,
/obj/machinery/camera/autoname/directional/north,
/obj/item/radio/intercom/directional/north,
/turf/open/floor/plating,
/area/station/commons/storage/tools)
"eDh" = (
/obj/effect/spawner/structure/window/survival_pod,
/turf/open/floor/engine,
@@ -18774,17 +18760,6 @@
},
/turf/open/floor/plating/rust,
/area/station/maintenance/department/engine/atmos)
"gQx" = (
/obj/effect/turf_decal/bot_white,
/obj/effect/decal/cleanable/dirt,
/obj/item/clothing/gloves/color/fyellow{
pixel_y = 7
},
/obj/structure/canister_frame/machine,
/obj/machinery/camera/autoname/directional/north,
/obj/item/radio/intercom/directional/north,
/turf/open/floor/plating,
/area/station/commons/storage/tools)
"gQG" = (
/obj/structure/window/spawner/directional/east,
/obj/structure/closet/crate,
@@ -20114,6 +20089,13 @@
/obj/structure/broken_flooring/singular/directional/east,
/turf/open/floor/plating,
/area/station/maintenance/department/medical/central)
"hln" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/tile/yellow/opposingcorners,
/obj/structure/table,
/obj/machinery/microwave/engineering/cell_included,
/turf/open/floor/iron,
/area/station/maintenance/department/engine/atmos)
"hlo" = (
/obj/effect/turf_decal/tile/neutral/fourcorners,
/obj/machinery/camera/autoname/directional/north,
@@ -21180,6 +21162,14 @@
},
/turf/open/floor/iron,
/area/station/hallway/primary/fore)
"hDn" = (
/obj/effect/turf_decal/tile/yellow/opposingcorners,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/obj/machinery/light/small/directional/north,
/obj/structure/table,
/obj/effect/spawner/random/food_or_drink/donkpockets,
/turf/open/floor/iron,
/area/station/maintenance/department/engine/atmos)
"hDt" = (
/obj/structure/toilet{
pixel_y = 8
@@ -25015,10 +25005,6 @@
/obj/effect/spawner/random/armory/e_gun,
/turf/open/floor/iron/dark/small,
/area/station/ai_monitored/security/armory)
"iYh" = (
/obj/structure/canister_frame/machine,
/turf/open/floor/plating,
/area/station/maintenance/department/bridge)
"iYj" = (
/obj/structure/table,
/obj/effect/spawner/random/engineering/tracking_beacon,
@@ -26566,14 +26552,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/iron/dark,
/area/station/security/interrogation)
"jCL" = (
/obj/effect/turf_decal/tile/yellow/opposingcorners,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/obj/machinery/light/small/directional/north,
/obj/structure/table,
/obj/effect/spawner/random/food_or_drink/donkpockets,
/turf/open/floor/iron,
/area/station/maintenance/department/engine/atmos)
"jCP" = (
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
@@ -44051,6 +44029,10 @@
/obj/machinery/door/window/brigdoor/right/directional/west,
/turf/open/floor/iron/smooth,
/area/station/security/checkpoint/customs/auxiliary)
"pGh" = (
/obj/structure/fluff/broken_canister_frame,
/turf/open/floor/plating,
/area/station/maintenance/department/bridge)
"pGp" = (
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
@@ -53097,6 +53079,24 @@
dir = 8
},
/area/station/commons/dorms)
"svU" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/effect/turf_decal/tile/yellow/full,
/obj/structure/table/reinforced,
/obj/machinery/door/firedoor,
/obj/machinery/door/window/right/directional/east{
name = "Pharmacy Desk";
req_access = list("pharmacy")
},
/obj/machinery/door/poddoor/shutters/preopen{
dir = 4;
id = "pharmacy_shutters";
name = "Pharmacy Shutters"
},
/turf/open/floor/iron/dark/textured_large,
/area/station/medical/pharmacy)
"svZ" = (
/obj/effect/turf_decal/tile/neutral/fourcorners,
/obj/effect/decal/cleanable/dirt,
@@ -84216,7 +84216,7 @@ yjE
fPv
dja
bNq
arV
hln
dIm
dQY
ecq
@@ -84473,7 +84473,7 @@ yjE
uYG
djC
bNq
jCL
hDn
dIe
dRE
ecF
@@ -89641,7 +89641,7 @@ ueX
slY
slY
slY
gQx
eCD
hbv
rkr
hmj
@@ -96076,7 +96076,7 @@ trk
kjU
izL
iLV
iYh
pGh
lZt
lZt
xYO
@@ -104616,7 +104616,7 @@ wfr
nPd
wfr
nPd
bQF
svU
uxJ
wfr
wfr
+1 -1
View File
@@ -36506,7 +36506,7 @@
/turf/open/floor/iron/dark/side,
/area/station/hallway/floor2/aft)
"jEU" = (
/obj/structure/canister_frame/machine,
/obj/structure/fluff/broken_canister_frame,
/turf/open/floor/engine,
/area/station/maintenance/floor1/port/aft)
"jEX" = (
-103
View File
@@ -1,103 +0,0 @@
//Canister Frames
/obj/structure/canister_frame
name = "canister frame"
icon = 'icons/obj/pipes_n_cables/atmos.dmi'
icon_state = "frame_0"
density = TRUE
/obj/structure/canister_frame/examine(user)
. = ..()
/obj/structure/canister_frame/machine
name = "canister frame"
desc = "A frame used to build different kinds of canisters."
/// The previous canister frame tier path
var/obj/structure/canister_frame/machine/prev_tier
/// The next canister frame tier path
var/obj/structure/canister_frame/machine/next_tier
/// The required item for going to next tier. Must be set if next_tier is set.
var/obj/item/stack/next_tier_reqitem
/// The amount of items required in the stack of the required item. Must be set if next_tier is set.
var/next_tier_reqitem_am
/// The finished usable canister path
var/atom/finished_obj
/obj/structure/canister_frame/machine/deconstruct(disassembled = TRUE)
if (!(flags_1 & NODECONSTRUCT_1))
// Spawn 5 sheets for the tier 0 frame
new /obj/item/stack/sheet/iron(loc, 5)
// Loop backwards in the tiers and spawn the requirement for each tier
var/obj/structure/canister_frame/machine/i_prev = prev_tier
while(ispath(i_prev))
var/obj/item/stack/prev_tier_reqitem = initial(i_prev.next_tier_reqitem)
var/prev_tier_reqitem_am = initial(i_prev.next_tier_reqitem_am)
new prev_tier_reqitem(loc, prev_tier_reqitem_am)
i_prev = initial(i_prev.prev_tier)
qdel(src)
/obj/structure/canister_frame/machine/unfinished_canister_frame
name = "unfinished canister frame"
icon_state = "frame_0"
next_tier = /obj/structure/canister_frame/machine/finished_canister_frame
next_tier_reqitem = /obj/item/stack/sheet/iron
next_tier_reqitem_am = 5
/obj/structure/canister_frame/machine/finished_canister_frame
name = "finished canister frame"
icon_state = "frame_1"
prev_tier = /obj/structure/canister_frame/machine/unfinished_canister_frame
finished_obj = /obj/machinery/portable_atmospherics/canister
/obj/structure/canister_frame/machine/examine(user)
. = ..()
. += span_notice("It can be dismantled by removing the <b>bolts</b>.")
if(ispath(next_tier))
var/item_name = initial(next_tier_reqitem.singular_name)
if(!item_name)
item_name = initial(next_tier_reqitem.name)
if(next_tier_reqitem_am > 1)
. += span_notice("It can be improved using [next_tier_reqitem_am] [item_name]\s.")
else
. += span_notice("It can be improved using \a [item_name].")
if(ispath(finished_obj))
. += span_notice("It can be finished off by <b>screwing</b> it together.")
/obj/structure/canister_frame/machine/attackby(obj/item/S, mob/user, params)
if (ispath(next_tier) && istype(S, next_tier_reqitem))
var/obj/item/stack/ST = S
var/reqitem_name = ST.singular_name ? ST.singular_name : ST.name
to_chat(user, span_notice("You start adding [next_tier_reqitem_am] [reqitem_name]\s to the frame..."))
if (ST.use_tool(src, user, 2 SECONDS, amount=next_tier_reqitem_am, volume=50))
to_chat(user, span_notice("You added [next_tier_reqitem_am] [reqitem_name]\s to the frame, turning it into \a [initial(next_tier.name)]."))
new next_tier(drop_location())
qdel(src)
return
return ..()
/obj/structure/canister_frame/machine/screwdriver_act(mob/living/user, obj/item/I)
. = TRUE
if(..())
return
if(ispath(finished_obj))
to_chat(user, span_notice("You start tightening the screws on \the [src]."))
if (I.use_tool(src, user, 2 SECONDS, volume=50))
to_chat(user, span_notice("You tighten the last screws on \the [src]."))
new finished_obj(drop_location())
qdel(src)
return
return FALSE
/obj/structure/canister_frame/machine/wrench_act(mob/living/user, obj/item/I)
. = TRUE
if(..())
return
to_chat(user, span_notice("You start to dismantle \the [src]..."))
if (I.use_tool(src, user, 2 SECONDS, volume=50))
to_chat(user, span_notice("You dismantle \the [src]."))
deconstruct()
@@ -73,7 +73,7 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \
new/datum/stack_recipe("rack parts", /obj/item/rack_parts, category = CAT_FURNITURE), \
new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 1.5 SECONDS, one_per_turf = TRUE, on_solid_ground = TRUE, category = CAT_FURNITURE), \
null, \
new/datum/stack_recipe("unfinished canister frame", /obj/structure/canister_frame/machine/unfinished_canister_frame, 5, time = 0.8 SECONDS, one_per_turf = TRUE, on_solid_ground = TRUE, category = CAT_ATMOSPHERIC), \
new/datum/stack_recipe("atmos canister", /obj/machinery/portable_atmospherics/canister, 10, time = 3 SECONDS, one_per_turf = TRUE, on_solid_ground = TRUE, category = CAT_ATMOSPHERIC), \
null, \
new/datum/stack_recipe("floor tile", /obj/item/stack/tile/iron/base, 1, 4, 20, category = CAT_TILES), \
new/datum/stack_recipe("iron rod", /obj/item/stack/rods, 1, 2, 60, category = CAT_MISC), \
+7
View File
@@ -284,3 +284,10 @@
/obj/structure/fluff/tram_rail/anchor
name = "tram rail anchor"
icon_state = "anchor"
/obj/structure/fluff/broken_canister_frame
name = "broken canister frame"
icon_state = "broken_canister"
anchored = FALSE
density = TRUE
deconstructible = TRUE
Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 17 KiB

-1
View File
@@ -1900,7 +1900,6 @@
#include "code\game\machinery\barsigns.dm"
#include "code\game\machinery\botlaunchpad.dm"
#include "code\game\machinery\buttons.dm"
#include "code\game\machinery\canister_frame.dm"
#include "code\game\machinery\cell_charger.dm"
#include "code\game\machinery\civilian_bounties.dm"
#include "code\game\machinery\constructable_frame.dm"
@@ -0,0 +1,4 @@
/obj/structure/canister_frame : /obj/structure/fluff/broken_canister_frame{@OLD}
/obj/structure/canister_frame/machine : /obj/structure/fluff/broken_canister_frame{@OLD}
/obj/structure/canister_frame/machine/unfinished_canister_frame : /obj/structure/fluff/broken_canister_frame{@OLD}
/obj/structure/canister_frame/machine/finished_canister_frame : /obj/structure/fluff/broken_canister_frame{@OLD}