diff options
Diffstat (limited to 'engines/fullpipe')
-rw-r--r-- | engines/fullpipe/fullpipe.h | 2 | ||||
-rw-r--r-- | engines/fullpipe/gfx.cpp | 4 | ||||
-rw-r--r-- | engines/fullpipe/scene.cpp | 14 |
3 files changed, 18 insertions, 2 deletions
diff --git a/engines/fullpipe/fullpipe.h b/engines/fullpipe/fullpipe.h index 7e34e4e740..26a5a62693 100644 --- a/engines/fullpipe/fullpipe.h +++ b/engines/fullpipe/fullpipe.h @@ -86,6 +86,8 @@ public: bool _soundEnabled; bool _flgSoundList; + Common::Rect _sceneRect; + bool _needQuit; void initObjectStates(); diff --git a/engines/fullpipe/gfx.cpp b/engines/fullpipe/gfx.cpp index 10bf10543a..9cef7e1408 100644 --- a/engines/fullpipe/gfx.cpp +++ b/engines/fullpipe/gfx.cpp @@ -373,8 +373,8 @@ void Picture::displayPicture() { } void Bitmap::putDib(int x, int y, int32 *palette) { - _x = x; - _y = y; + _x = x - g_fullpipe->_sceneRect.left; + _y = y - g_fullpipe->_sceneRect.top; if (_type == MKTAG('R', 'B', '\0', '\0')) putDibRB(palette); diff --git a/engines/fullpipe/scene.cpp b/engines/fullpipe/scene.cpp index 2ce93eefe4..717eb0cdd5 100644 --- a/engines/fullpipe/scene.cpp +++ b/engines/fullpipe/scene.cpp @@ -266,6 +266,20 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBG) { if (_palette) { warning("Scene palette is ignored"); } + + if (_picObjList.size() > 2) { // We need to z-sort them + // Sort by priority + warning("Scene::drawContent: STUB sort by priority"); + } + + if (minPri == -1 && _picObjList.size()) + minPri = ((PictureObject *)_picObjList.back())->_priority - 1; + + if (maxPri == -1) + maxPri = 60000; + + if (drawBg && _bigPictureArray1Count && _picObjList.size()) { + } } } // End of namespace Fullpipe |