Merge pull request #2910 from silverflyone/develop

Not all stockpile items being returned for getStockpileContents.
develop
Myk 2023-02-15 23:33:39 -08:00 committed by GitHub
commit 00428a9140
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 2 deletions

@ -41,6 +41,7 @@ changelog.txt uses a syntax similar to RST, with a few special sequences:
-@ `seedwatch`: fix saving and loading of seed stock targets -@ `seedwatch`: fix saving and loading of seed stock targets
- `autodump`: changed behaviour to only change ``dump`` and ``forbid`` flags if an item is successfully dumped. - `autodump`: changed behaviour to only change ``dump`` and ``forbid`` flags if an item is successfully dumped.
-@ `autochop`: generate default names for burrows with no assigned names -@ `autochop`: generate default names for burrows with no assigned names
- ``Buildings::StockpileIterator``: check for stockpile items on block boundary.
## Misc Improvements ## Misc Improvements
- DFHack tool windows that capture mouse clicks (and therefore prevent you from clicking on the "pause" button) now unconditionally pause the game when they open (but you can still unpause with the keyboard if you want to). Examples of this behavior: `gui/quickfort`, `gui/blueprint`, `gui/liquids` - DFHack tool windows that capture mouse clicks (and therefore prevent you from clicking on the "pause" button) now unconditionally pause the game when they open (but you can still unpause with the keyboard if you want to). Examples of this behavior: `gui/quickfort`, `gui/blueprint`, `gui/liquids`

@ -1643,10 +1643,10 @@ StockpileIterator& StockpileIterator::operator++() {
while (current >= block->items.size()) { while (current >= block->items.size()) {
// Out of items in this block; find the next block to search. // Out of items in this block; find the next block to search.
if (block->map_pos.x + 16 < stockpile->x2) { if (block->map_pos.x + 16 <= stockpile->x2) {
block = Maps::getTileBlock(block->map_pos.x + 16, block->map_pos.y, stockpile->z); block = Maps::getTileBlock(block->map_pos.x + 16, block->map_pos.y, stockpile->z);
current = 0; current = 0;
} else if (block->map_pos.y + 16 < stockpile->y2) { } else if (block->map_pos.y + 16 <= stockpile->y2) {
block = Maps::getTileBlock(stockpile->x1, block->map_pos.y + 16, stockpile->z); block = Maps::getTileBlock(stockpile->x1, block->map_pos.y + 16, stockpile->z);
current = 0; current = 0;
} else { } else {