aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorWalter van Niftrik2016-03-19 20:19:59 +0100
committerWalter van Niftrik2016-06-06 20:35:49 +0200
commite7c93489e4f6055c988d048c9c479de3eff94ece (patch)
tree3e33210dd72bdb4044e4933d0324f8d341bd0c9f /engines
parent3102ff4a1951ca0a3ca6446f8b5bc67849fe3d73 (diff)
downloadscummvm-rg350-e7c93489e4f6055c988d048c9c479de3eff94ece.tar.gz
scummvm-rg350-e7c93489e4f6055c988d048c9c479de3eff94ece.tar.bz2
scummvm-rg350-e7c93489e4f6055c988d048c9c479de3eff94ece.zip
ADL: Clean up drawItems()
Diffstat (limited to 'engines')
-rw-r--r--engines/adl/adl.cpp21
1 files changed, 11 insertions, 10 deletions
diff --git a/engines/adl/adl.cpp b/engines/adl/adl.cpp
index 1f4ebcd4bb..715d7a8087 100644
--- a/engines/adl/adl.cpp
+++ b/engines/adl/adl.cpp
@@ -362,24 +362,25 @@ void AdlEngine::drawItems() const {
uint dropped = 0;
for (item = _state.items.begin(); item != _state.items.end(); ++item) {
+ // Skip items not in this room
if (item->room != _state.room)
continue;
if (item->state == IDI_ITEM_DROPPED) {
+ // Draw dropped item if in normal view
if (getCurRoom().picture == getCurRoom().curPicture) {
- const Common::Point &p = _itemOffsets[dropped];
- drawItem(*item, p);
+ drawItem(*item, _itemOffsets[dropped]);
++dropped;
}
- continue;
- }
-
- Common::Array<byte>::const_iterator pic;
+ } else {
+ // Draw fixed item if current view is in the pic list
+ Common::Array<byte>::const_iterator pic;
- for (pic = item->roomPictures.begin(); pic != item->roomPictures.end(); ++pic) {
- if (matchesCurrentPic(*pic)) {
- drawItem(*item, item->position);
- continue;
+ for (pic = item->roomPictures.begin(); pic != item->roomPictures.end(); ++pic) {
+ if (matchesCurrentPic(*pic)) {
+ drawItem(*item, item->position);
+ break;
+ }
}
}
}