From 192f33c823bca521b92cb9848ea8445e3d65b077 Mon Sep 17 00:00:00 2001 From: Emerson Rosen-Jones Date: Sat, 3 Jan 2026 19:42:51 -0500 Subject: [PATCH 1/2] fix: remove syntax and logic errors --- oregen-manager.lua | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/oregen-manager.lua b/oregen-manager.lua index 9a74d32..1719662 100644 --- a/oregen-manager.lua +++ b/oregen-manager.lua @@ -251,8 +251,10 @@ function getNumCraftable (ingredients, current_stock) return result end -function adjustStock (current_stock, recipe, count) - for _, ingredient in ipairs(recipe.ingredients) do +function adjustStock (current_stock, ingredients, count) + if count == 0 then return end + local item, i_count + for _, ingredient in ipairs(ingredients) do item, i_count = ingredient[1], ingredient[2] current_stock[item] = current_stock[item] - (i_count * count) end @@ -263,7 +265,7 @@ function craftRecipe (ticker, recipe, current_stock) if recipe.limit ~= nil then count = math.min(count, recipe.limit) end - adjustStock(current_stock, recipe, count) + adjustStock(current_stock, recipe.ingredients, count) local createRequest createRequest = function (recipe, i) if i == nil then i = 1 end From 139164077c20f7fd94faa9b10bd6010f46a8d1bd Mon Sep 17 00:00:00 2001 From: Emerson Rosen-Jones Date: Sat, 3 Jan 2026 19:45:39 -0500 Subject: [PATCH 2/2] feat: allow for custom limits on PRODUCTS, can set an optional 3rd argument as limit override --- oregen-manager.lua | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/oregen-manager.lua b/oregen-manager.lua index 1719662..b285e65 100644 --- a/oregen-manager.lua +++ b/oregen-manager.lua @@ -70,9 +70,9 @@ local PRODUCTS = { {"minecraft:flint", CRUSHER_ADDR}, {"minecraft:nether_bricks", CRUSHER_ADDR}, {"minecraft:basalt", CRUSHER_ADDR}, - {"create:crushed_raw_silver", WASHER_ADDR}, + {"create:crushed_raw_silver", WASHER_ADDR, 16}, {"minecraft:calcite", CRUSHER_ADDR}, - {"create:crushed_raw_nickel", WASHER_ADDR}, + {"create:crushed_raw_nickel", WASHER_ADDR, 32}, {"tfmg:bauxite", CRUSHER_ADDR}, } @@ -204,9 +204,10 @@ end function cycleItems (ticker, items) local makeRequest - makeRequest = function (item, amt, addr) + makeRequest = function (item, amt, addr, limit_override) local limit = 64 if addr == MELTER_ADDR then limit = 9 end + if limit_override ~= nil then limit = limit_override end if amt < limit then return end local request = { name = item, @@ -217,10 +218,10 @@ function cycleItems (ticker, items) return makeRequest(item, amt - limit, addr) end for _, pair in pairs(PRODUCTS) do - local name, addr = pair[1], pair[2] + local name, addr, limit = pair[1], pair[2], pair[3] if items[name] ~= nil then local amt = items[name] - makeRequest(name, amt, addr) + makeRequest(name, amt, addr, limit) end end end