aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorEugene Sandulenko2014-01-03 00:55:29 +0200
committerEugene Sandulenko2014-01-03 00:55:29 +0200
commit979cf9ffd7ca12ddc33ef89acfd008bb445884a9 (patch)
tree3b97153114c4a704d2a6bbde76ceed060b9e1d58 /engines
parenta21bba04d041cce1fafedb265ded9d4f3e305e7e (diff)
downloadscummvm-rg350-979cf9ffd7ca12ddc33ef89acfd008bb445884a9.tar.gz
scummvm-rg350-979cf9ffd7ca12ddc33ef89acfd008bb445884a9.tar.bz2
scummvm-rg350-979cf9ffd7ca12ddc33ef89acfd008bb445884a9.zip
FULLPIPE: Fix Background::addPictureObject()
Diffstat (limited to 'engines')
-rw-r--r--engines/fullpipe/gfx.cpp8
-rw-r--r--engines/fullpipe/scene.cpp1
2 files changed, 5 insertions, 4 deletions
diff --git a/engines/fullpipe/gfx.cpp b/engines/fullpipe/gfx.cpp
index 8b2aca4bdb..435a06d63b 100644
--- a/engines/fullpipe/gfx.cpp
+++ b/engines/fullpipe/gfx.cpp
@@ -129,8 +129,8 @@ void Background::addPictureObject(PictureObject *pct) {
pct->renumPictures(&_picObjList);
bool inserted = false;
- for (uint i = 0; i < _picObjList.size(); i++) {
- if (((PictureObject *)_picObjList[i])->_priority == pct->_priority) {
+ for (uint i = 1; i < _picObjList.size(); i++) {
+ if (((PictureObject *)_picObjList[i])->_priority <= pct->_priority) {
_picObjList.insert_at(i, pct);
inserted = true;
break;
@@ -329,8 +329,8 @@ void GameObject::renumPictures(PtrList *lst) {
int *buf = (int *)calloc(lst->size() + 2, sizeof(int));
for (uint i = 0; i < lst->size(); i++) {
- if (_id == ((PictureObject *)((*lst)[i]))->_id)
- buf[((PictureObject *)((*lst)[i]))->_okeyCode] = 1;
+ if (_id == ((GameObject *)((*lst)[i]))->_id)
+ buf[((GameObject *)((*lst)[i]))->_okeyCode] = 1;
}
if (buf[_okeyCode]) {
diff --git a/engines/fullpipe/scene.cpp b/engines/fullpipe/scene.cpp
index 558a90978a..008983b31d 100644
--- a/engines/fullpipe/scene.cpp
+++ b/engines/fullpipe/scene.cpp
@@ -526,6 +526,7 @@ void Scene::updateScrolling2() {
((PictureObject *)_picObjList[0])->getDimensions(&point);
int flags = ((PictureObject *)_picObjList[0])->_flags;
+ warning("flags: %d %d %d %d", flags & 2, flags & 0x20, point.x, point.y);
if (g_fp->_sceneRect.left < 0 && !(flags & 2))
offsetX = -g_fp->_sceneRect.left;