aboutsummaryrefslogtreecommitdiff
path: root/engines/composer/composer.cpp
diff options
context:
space:
mode:
authorAlyssa Milburn2011-07-16 20:02:19 +0200
committerAlyssa Milburn2011-07-16 20:02:19 +0200
commitaa52698d7ee5488e37f8c13c8a212259614b453e (patch)
tree5d7594fa1fffd354a3618fd7cd4886b0811325a4 /engines/composer/composer.cpp
parent54f26b6c452b4b09e0af76d67498899ff8bc28f6 (diff)
downloadscummvm-rg350-aa52698d7ee5488e37f8c13c8a212259614b453e.tar.gz
scummvm-rg350-aa52698d7ee5488e37f8c13c8a212259614b453e.tar.bz2
scummvm-rg350-aa52698d7ee5488e37f8c13c8a212259614b453e.zip
COMPOSER: Fix z-ordering (properly, this time).
Diffstat (limited to 'engines/composer/composer.cpp')
-rw-r--r--engines/composer/composer.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/engines/composer/composer.cpp b/engines/composer/composer.cpp
index ec4d45a71b..4edf513a35 100644
--- a/engines/composer/composer.cpp
+++ b/engines/composer/composer.cpp
@@ -465,7 +465,7 @@ void ComposerEngine::processAnimFrame() {
}
}
-void ComposerEngine::addSprite(uint16 id, uint16 animId, int16 zorder, const Common::Point &pos) {
+void ComposerEngine::addSprite(uint16 id, uint16 animId, uint16 zorder, const Common::Point &pos) {
Sprite sprite;
sprite.id = id;
sprite.animId = animId;
@@ -477,9 +477,9 @@ void ComposerEngine::addSprite(uint16 id, uint16 animId, int16 zorder, const Com
}
for (Common::List<Sprite>::iterator i = _sprites.begin(); i != _sprites.end(); i++) {
- if (sprite.zorder > i->zorder)
+ if (sprite.zorder <= i->zorder)
continue;
- i++;
+ // insert *before* this sprite
_sprites.insert(i, sprite);
return;
}
@@ -689,7 +689,7 @@ void ComposerEngine::loadLibrary(uint id) {
// add background sprite, if it exists
if (hasResource(ID_BMAP, 1000))
- addSprite(1000, 0, -1, Common::Point());
+ addSprite(1000, 0, 0xffff, Common::Point());
// TODO: better CTBL logic
loadCTBL(1000, 100);