From 678f085febf96be59e0d59ce5e17b8828b6eb453 Mon Sep 17 00:00:00 2001 From: Nicholas McDaniel Date: Sat, 15 Nov 2025 21:18:56 -0500 Subject: [PATCH] Various updates for v53 buildings/items --- changelog.txt | 2 ++ gui/design.lua | 1 + internal/quickfort/build.lua | 4 ++++ internal/quickfort/orders.lua | 2 ++ internal/view-item-info/item-descriptions.lua | 2 ++ 5 files changed, 11 insertions(+) diff --git a/changelog.txt b/changelog.txt index b29c1e2186..76f1af2991 100644 --- a/changelog.txt +++ b/changelog.txt @@ -33,6 +33,8 @@ Template for new versions: ## Fixes ## Misc Improvements +- `quickfort`: support for reinforced walls and bolt throwers +- `gui/design`: can now construct reinforced walls ## Removed diff --git a/gui/design.lua b/gui/design.lua index 8494fe111c..b5fbd41252 100644 --- a/gui/design.lua +++ b/gui/design.lua @@ -366,6 +366,7 @@ function Design:init() local build_options = { {label='Walls', value='Cw'}, + {label='Reinforced Walls', value='CW'}, {label='Floor', value='Cf'}, {label='Fortification', value='CF'}, {label='Ramps', value='Cr'}, diff --git a/internal/quickfort/build.lua b/internal/quickfort/build.lua index fa053043f7..2d51475de7 100644 --- a/internal/quickfort/build.lua +++ b/internal/quickfort/build.lua @@ -934,9 +934,13 @@ local building_db_raw = { subtype=df.siegeengine_type.Ballista}, ic={label='Catapult', type=df.building_type.SiegeEngine, subtype=df.siegeengine_type.Catapult}, + it={label='Bolt Thrower', type=df.building_type.SiegeEngine, + subtype=df.siegeengine_type.BoltThrower}, -- constructions Cw={label='Wall', type=df.building_type.Construction, subtype=df.construction_type.Wall}, + CW={label='Reinforced Wall', + type=df.building_type.Construction, subtype=df.construction_type.ReinforcedWall}, Cf={label='Floor', type=df.building_type.Construction, subtype=df.construction_type.Floor}, Cr={label='Ramp', diff --git a/internal/quickfort/orders.lua b/internal/quickfort/orders.lua index 3dfae5b955..de3b974408 100644 --- a/internal/quickfort/orders.lua +++ b/internal/quickfort/orders.lua @@ -108,6 +108,8 @@ local function process_filter(order_specs, filter, reactions) elseif filter.item_type == df.item_type.BALLISTAPARTS then label = 'ballista parts' elseif filter.item_type == df.item_type.BAR then label = 'magnetite ore' + elseif filter.item_type == df.item_type.BOLT_THROWER_PARTS then + label = 'bolt thrower parts' elseif filter.item_type == df.item_type.BOX then label = 'coffer' elseif filter.item_type == df.item_type.CAGE then label = 'wooden cage' elseif filter.item_type == df.item_type.CATAPULTPARTS then diff --git a/internal/view-item-info/item-descriptions.lua b/internal/view-item-info/item-descriptions.lua index aed8296e28..6dace92dda 100644 --- a/internal/view-item-info/item-descriptions.lua +++ b/internal/view-item-info/item-descriptions.lua @@ -95,6 +95,8 @@ descriptions = { "as logs or bars. Cutting boulders into blocks gives four times as", "many items, which are lighter for faster hauling and yield smooth", "constructions."}, + BOLT_THROWER_PARTS = { + "Can be used to construct a Bolt Thrower."}, BOX = { "A container for storing items. They are required by nobles, and will", "increase the value of rooms they are placed in. Also required to store", "hospital supplies. They can be made of stone or metal (coffers),",