aboutsummaryrefslogtreecommitdiff
path: root/engines/saga
diff options
context:
space:
mode:
authorFilippos Karapetis2008-12-31 22:11:20 +0000
committerFilippos Karapetis2008-12-31 22:11:20 +0000
commit220af8711271b50d75a47c9bb997f048a43d4431 (patch)
tree9243f7511dd5a69296bdf92121093be2f1223100 /engines/saga
parent94548ed27cac7b5133c83da03cca22bda47ea61f (diff)
downloadscummvm-rg350-220af8711271b50d75a47c9bb997f048a43d4431.tar.gz
scummvm-rg350-220af8711271b50d75a47c9bb997f048a43d4431.tar.bz2
scummvm-rg350-220af8711271b50d75a47c9bb997f048a43d4431.zip
Proper fix for non-interactive ITE demos (the previous one was affecting sprites for other games)
svn-id: r35645
Diffstat (limited to 'engines/saga')
-rw-r--r--engines/saga/interface.cpp18
-rw-r--r--engines/saga/sprite.h3
2 files changed, 10 insertions, 11 deletions
diff --git a/engines/saga/interface.cpp b/engines/saga/interface.cpp
index 8d26e83fc2..072a755f5d 100644
--- a/engines/saga/interface.cpp
+++ b/engines/saga/interface.cpp
@@ -215,14 +215,16 @@ Interface::Interface(SagaEngine *vm) : _vm(vm) {
// Main panel sprites
_vm->_sprite->loadList(_vm->getResourceDescription()->mainPanelSpritesResourceId, _mainPanel.sprites);
- // Option panel sprites
- _vm->_sprite->loadList(_vm->getResourceDescription()->optionPanelSpritesResourceId, _optionPanel.sprites);
- // Save panel sprites
- _vm->_sprite->loadList(_vm->getResourceDescription()->warningPanelSpritesResourceId, _savePanel.sprites);
- // Load panel sprites
- _vm->_sprite->loadList(_vm->getResourceDescription()->warningPanelSpritesResourceId, _loadPanel.sprites);
- // Quit panel sprites
- _vm->_sprite->loadList(_vm->getResourceDescription()->warningPanelSpritesResourceId, _quitPanel.sprites);
+ if (!(_vm->getFeatures() & GF_NON_INTERACTIVE)) {
+ // Option panel sprites
+ _vm->_sprite->loadList(_vm->getResourceDescription()->optionPanelSpritesResourceId, _optionPanel.sprites);
+ // Save panel sprites
+ _vm->_sprite->loadList(_vm->getResourceDescription()->warningPanelSpritesResourceId, _savePanel.sprites);
+ // Load panel sprites
+ _vm->_sprite->loadList(_vm->getResourceDescription()->warningPanelSpritesResourceId, _loadPanel.sprites);
+ // Quit panel sprites
+ _vm->_sprite->loadList(_vm->getResourceDescription()->warningPanelSpritesResourceId, _quitPanel.sprites);
+ }
if (_vm->getGameId() == GID_ITE) {
_vm->_sprite->loadList(_vm->getResourceDescription()->defaultPortraitsResourceId, _defPortraits);
diff --git a/engines/saga/sprite.h b/engines/saga/sprite.h
index 26f92b7494..ebccc2c1f0 100644
--- a/engines/saga/sprite.h
+++ b/engines/saga/sprite.h
@@ -49,9 +49,6 @@ struct SpriteList {
SpriteInfo *infoList;
void freeMem() {
- if (!spriteListResourceId)
- return;
-
for (int i = 0; i < spriteCount; i++) {
free(infoList[i].decodedBuffer);
}