diff --git a/code/modules/mining/machine_stacking.dm b/code/modules/mining/machine_stacking.dm index 5bbdd537e93..4b8279083ef 100644 --- a/code/modules/mining/machine_stacking.dm +++ b/code/modules/mining/machine_stacking.dm @@ -109,6 +109,17 @@ /obj/machinery/mineral/stacking_machine/proc/process_sheet(obj/item/stack/sheet/inp) if(QDELETED(inp)) return + + // Dump the sheets to the silo if attached + if(materials.silo && !materials.on_hold()) + var/matlist = inp.custom_materials & materials.mat_container.materials + if (length(matlist)) + var/inserted = materials.mat_container.insert_item(inp) + materials.silo_log(src, "collected", inserted, "sheets", matlist) + qdel(inp) + return + + // No silo attached process to internal storage var/key = inp.merge_type var/obj/item/stack/sheet/storage = stack_list[key] if(!storage) //It's the first of this sheet added @@ -116,15 +127,6 @@ storage.amount += inp.amount //Stack the sheets qdel(inp) - if(materials.silo && !materials.on_hold()) //Dump the sheets to the silo - var/matlist = storage.custom_materials & materials.mat_container.materials - if (length(matlist)) - var/inserted = materials.mat_container.insert_item(storage) - materials.silo_log(src, "collected", inserted, "sheets", matlist) - if (QDELETED(storage)) - stack_list -= key - return - while(storage.amount >= stack_amt) //Get rid of excessive stackage var/obj/item/stack/sheet/out = new inp.type(null, stack_amt) unload_mineral(out)