diff options
author | Max Horn | 2005-04-28 22:34:56 +0000 |
---|---|---|
committer | Max Horn | 2005-04-28 22:34:56 +0000 |
commit | d03b09265902a5a8c915fb515e1fef259c9fb618 (patch) | |
tree | af96136d0693c4a7ebcc90294555c3b52d9bcc7a /scumm/object.cpp | |
parent | c5127d3c05ec1dccb8ead61d38727e3e98dce6d1 (diff) | |
download | scummvm-rg350-d03b09265902a5a8c915fb515e1fef259c9fb618.tar.gz scummvm-rg350-d03b09265902a5a8c915fb515e1fef259c9fb618.tar.bz2 scummvm-rg350-d03b09265902a5a8c915fb515e1fef259c9fb618.zip |
Moved blast text/object code to ScummEngine_v6
svn-id: r17856
Diffstat (limited to 'scumm/object.cpp')
-rw-r--r-- | scumm/object.cpp | 37 |
1 files changed, 30 insertions, 7 deletions
diff --git a/scumm/object.cpp b/scumm/object.cpp index a3ba541004..d04d161d46 100644 --- a/scumm/object.cpp +++ b/scumm/object.cpp @@ -855,6 +855,30 @@ void ScummEngine::clearDrawObjectQueue() { _drawObjectQueNr = 0; } +void ScummEngine::clearDrawQueues() { + clearDrawObjectQueue(); +} + +void ScummEngine_v6::clearDrawQueues() { + ScummEngine::clearDrawQueues(); + + _blastObjectQueuePos = 0; +} + +void ScummEngine_v70he::clearDrawQueues() { + ScummEngine_v6::clearDrawQueues(); + + if (_heversion >= 71) + _wiz.polygonClear(); +} + +void ScummEngine_v80he::clearDrawQueues() { + ScummEngine_v70he::clearDrawQueues(); + + _wiz.imageNumClear(); +} + + void ScummEngine::clearOwnerOf(int obj) { int i, j; uint16 *a; @@ -1444,7 +1468,7 @@ void ScummEngine::nukeFlObjects(int min, int max) { } } -void ScummEngine::enqueueObject(int objectNumber, int objectX, int objectY, int objectWidth, +void ScummEngine_v6::enqueueObject(int objectNumber, int objectX, int objectY, int objectWidth, int objectHeight, int scaleX, int scaleY, int image, int mode) { BlastObject *eo; @@ -1478,7 +1502,7 @@ void ScummEngine::enqueueObject(int objectNumber, int objectX, int objectY, int eo->mode = mode; } -void ScummEngine::drawBlastObjects() { +void ScummEngine_v6::drawBlastObjects() { BlastObject *eo; int i; @@ -1488,7 +1512,7 @@ void ScummEngine::drawBlastObjects() { } } -void ScummEngine::drawBlastObject(BlastObject *eo) { +void ScummEngine_v6::drawBlastObject(BlastObject *eo) { VirtScreen *vs; const byte *bomp, *ptr; int objnum; @@ -1552,7 +1576,7 @@ void ScummEngine::drawBlastObject(BlastObject *eo) { markRectAsDirty(vs->number, bdd.x, bdd.x + bdd.srcwidth, bdd.y, bdd.y + bdd.srcheight); } -void ScummEngine::removeBlastObjects() { +void ScummEngine_v6::removeBlastObjects() { BlastObject *eo; int i; @@ -1560,11 +1584,10 @@ void ScummEngine::removeBlastObjects() { for (i = 0; i < _blastObjectQueuePos; i++, eo++) { removeBlastObject(eo); } - - clearEnqueue(); + _blastObjectQueuePos = 0; } -void ScummEngine::removeBlastObject(BlastObject *eo) { +void ScummEngine_v6::removeBlastObject(BlastObject *eo) { VirtScreen *vs = &virtscr[0]; Common::Rect r; |