From 4d888cfa8a30c42f6754dcb45f18f13c2270779c Mon Sep 17 00:00:00 2001 From: Myk Taylor Date: Sat, 28 Dec 2024 09:06:37 -0800 Subject: [PATCH] don't empty buckets for in-use wells --- changelog.txt | 1 + fix/dry-buckets.lua | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/changelog.txt b/changelog.txt index b3f8e5b920..de714b749b 100644 --- a/changelog.txt +++ b/changelog.txt @@ -34,6 +34,7 @@ Template for new versions: - `gui/settings-manager`: standing orders save/load now includes the reserved barrels setting ## Fixes +- `fix/dry-buckets`: don't empty buckets for wells that are actively in use ## Misc Improvements - `immortal-cravings`: goblins and other naturally non-eating/non-drinking races will now also satisfy their needs for eating and drinking diff --git a/fix/dry-buckets.lua b/fix/dry-buckets.lua index 71d2c50468..24a62a90f0 100644 --- a/fix/dry-buckets.lua +++ b/fix/dry-buckets.lua @@ -11,6 +11,11 @@ local emptied = 0 local in_building = 0 for _,item in ipairs(df.global.world.items.other.BUCKET) do if item.flags.in_job then goto continue end + local well = dfhack.items.getHolderBuilding(item) + if well and well:getType() == df.building_type.Well and well.well_tag.whole ~= 0 then + -- bucket is in a well and the well is actively being used + goto continue + end local emptied_bucket = false local freed_in_building = false for _,contained_item in ipairs(dfhack.items.getContainedItems(item)) do