diff options
Diffstat (limited to 'plugins/siege-engine.cpp')
| -rw-r--r-- | plugins/siege-engine.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/plugins/siege-engine.cpp b/plugins/siege-engine.cpp index 2e362afe..7c880351 100644 --- a/plugins/siege-engine.cpp +++ b/plugins/siege-engine.cpp @@ -1573,6 +1573,8 @@ struct projectile_hook : df::proj_itemst { if (next_pos.z == cur_pos.z && !isPassableTile(next_pos)) start_z = 49000; + bool forbid_ammo = DF_GLOBAL_VALUE(standing_orders_forbid_used_ammo, false); + MapExtras::MapCache mc; std::vector<df::item*> contents; Items::getContainedItems(item, &contents); @@ -1581,6 +1583,9 @@ struct projectile_hook : df::proj_itemst { { auto child = contents[i]; + if (forbid_ammo) + child->flags.bits.forbid = true; + // Liquids are vaporized so that they cover nearby units if (child->isLiquid()) { |
