aboutsummaryrefslogtreecommitdiff
path: root/scumm/object.cpp
diff options
context:
space:
mode:
authorMax Horn2005-04-28 22:34:56 +0000
committerMax Horn2005-04-28 22:34:56 +0000
commitd03b09265902a5a8c915fb515e1fef259c9fb618 (patch)
treeaf96136d0693c4a7ebcc90294555c3b52d9bcc7a /scumm/object.cpp
parentc5127d3c05ec1dccb8ead61d38727e3e98dce6d1 (diff)
downloadscummvm-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.cpp37
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;