aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2005-02-24 08:00:30 +0000
committerTravis Howell2005-02-24 08:00:30 +0000
commit350ed76947bf378b40c814dabf0667465e383b65 (patch)
tree6f51b38dbe9b0eb0cf056552f5bfe1cd828087ce /scumm
parent90a158fbf79c4b2dd2eb2e460df3f9c1361ac323 (diff)
downloadscummvm-rg350-350ed76947bf378b40c814dabf0667465e383b65.tar.gz
scummvm-rg350-350ed76947bf378b40c814dabf0667465e383b65.tar.bz2
scummvm-rg350-350ed76947bf378b40c814dabf0667465e383b65.zip
Update sprite calls in main loop
svn-id: r16894
Diffstat (limited to 'scumm')
-rw-r--r--scumm/intern.h2
-rw-r--r--scumm/scumm.cpp9
-rw-r--r--scumm/sprite_he.cpp4
3 files changed, 10 insertions, 5 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index 49e65b02dc..0a37218d1f 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -968,13 +968,13 @@ protected:
void spriteGroupCheck(int spriteGroupId);
void spriteMarkIfInGroup(int spriteGroupId, uint32 flags);
void spriteInfoSet_addImageToList(int spriteId, int imageNum, int *spriteIdptr);
- void spritesUpdateImages();
public:
void spritesBlitToScreen();
void spritesMarkDirty(bool unkFlag);
void spritesSortActiveSprites();
void spritesProcessWiz(bool arg);
+ void spritesUpdateImages();
protected:
/* HE version 90 script opcodes */
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp
index f820b1355b..d55a3e6c2a 100644
--- a/scumm/scumm.cpp
+++ b/scumm/scumm.cpp
@@ -1859,13 +1859,15 @@ load_game:
}
if (_heversion >= 71) {
preProcessAuxQueue();
- processActors();
- postProcessAuxQueue();
if (_heversion >= 90) {
((ScummEngine_v90he *)this)->spritesMarkDirty(0);
((ScummEngine_v90he *)this)->spritesProcessWiz(true);
}
+
+ processActors();
+ postProcessAuxQueue();
+
} else {
processActors();
}
@@ -1940,6 +1942,9 @@ load_game:
/* show or hide mouse */
_system->showMouse(_cursor.state > 0);
+ if (_heversion >= 90)
+ ((ScummEngine_v90he *)this)->spritesUpdateImages();
+
if (VAR_TIMER != 0xFF)
VAR(VAR_TIMER) = 0;
return VAR(VAR_TIMER_NEXT);
diff --git a/scumm/sprite_he.cpp b/scumm/sprite_he.cpp
index 5008452d62..19f3b5aa54 100644
--- a/scumm/sprite_he.cpp
+++ b/scumm/sprite_he.cpp
@@ -1119,9 +1119,9 @@ void ScummEngine_v90he::spritesSortActiveSprites() {
if (spi->flags & kSF16) {
if (!spi->flags & kSF23) {
- if (!spi->flags & kSF30)
+ if (!(spi->flags & kSF30))
spi->flags |= kSFNeedRedraw;
- if (!spi->flags & kSF31)
+ if (!(spi->flags & kSF31))
spi->flags |= kSF01;
}
if (spi->group_num)