From 1dab700b39bb9b77666de5b9ba0f749c9c509ed4 Mon Sep 17 00:00:00 2001 From: Casper3667 <8396443+Casper3667@users.noreply.github.com> Date: Thu, 27 Aug 2026 22:38:53 +0000 Subject: [PATCH] Adds the ability to upgrade the material silos (#23142) I forgot it in the original implementation. Now it is possible to upgrade the components. It uses 3 matter bins and each tier provides 400 sheet storage. so all level 1 bins gives 400, all level 2 gives 800 and all level 3 gives 1200. --- code/modules/research/material_silo.dm | 12 ++++++++++++ html/changelogs/MaterialUpgrade.yml | 6 ++++++ 2 files changed, 18 insertions(+) create mode 100644 html/changelogs/MaterialUpgrade.yml diff --git a/code/modules/research/material_silo.dm b/code/modules/research/material_silo.dm index a6e09a40bf5..2d8333d9390 100644 --- a/code/modules/research/material_silo.dm +++ b/code/modules/research/material_silo.dm @@ -4,6 +4,9 @@ icon_state = "silo" idle_power_usage = 30 WATTS + component_types = list( + /obj/item/stock_parts/matter_bin = 3 + ) /// Total material capacity, measured in material units. var/max_material_storage = 800000 @@ -24,12 +27,21 @@ /obj/structure/machinery/r_n_d/material_silo/upgrade_hints(mob/user, distance, is_adjacent) . += ..() + . += "- Upgraded matter bins will increase the shared material storage capacity." . += SPAN_NOTICE("\t- The shared storage capacity is [max_material_storage / SHEET_MATERIAL_AMOUNT] sheets.") /obj/structure/machinery/r_n_d/material_silo/Initialize(mapload, d, populate_components, is_internal) . = ..() update_icon() +/obj/structure/machinery/r_n_d/material_silo/RefreshParts() + ..() + var/matter_bin_rating = 0 + for(var/obj/item/stock_parts/matter_bin/matter_bin in component_parts) + matter_bin_rating += matter_bin.rating + max_material_storage = initial(max_material_storage) * matter_bin_rating / 3 + update_linked_uis() + /obj/structure/machinery/r_n_d/material_silo/update_icon() . = ..() ClearOverlays() diff --git a/html/changelogs/MaterialUpgrade.yml b/html/changelogs/MaterialUpgrade.yml new file mode 100644 index 00000000000..33084f7a1b3 --- /dev/null +++ b/html/changelogs/MaterialUpgrade.yml @@ -0,0 +1,6 @@ +author: TheGreyWolf + +delete-after: True + +changes: + - rscadd: "Material silos can now be upgraded. Each tier is equal to 400 sheets worth of storage."