aboutsummaryrefslogtreecommitdiff
path: root/engines/saga/sprite.cpp
diff options
context:
space:
mode:
authorDavid Corrales2007-08-05 19:34:20 +0000
committerDavid Corrales2007-08-05 19:34:20 +0000
commit6856535010bd2fa4449bcfde1c88dc06cd46e26f (patch)
treeb81a2234c2beff0312c93e039d6cafda4babeca6 /engines/saga/sprite.cpp
parent1400d28bfb37fc94f3c44dec0a4d0cef65fb8fb7 (diff)
parentec1803f838d5efc7decf75c05a1fb4a9633751e5 (diff)
downloadscummvm-rg350-6856535010bd2fa4449bcfde1c88dc06cd46e26f.tar.gz
scummvm-rg350-6856535010bd2fa4449bcfde1c88dc06cd46e26f.tar.bz2
scummvm-rg350-6856535010bd2fa4449bcfde1c88dc06cd46e26f.zip
Merged fsnode with trunk: r27971:28460
svn-id: r28462
Diffstat (limited to 'engines/saga/sprite.cpp')
-rw-r--r--engines/saga/sprite.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/engines/saga/sprite.cpp b/engines/saga/sprite.cpp
index 607e7d0a0b..ac911e5a9c 100644
--- a/engines/saga/sprite.cpp
+++ b/engines/saga/sprite.cpp
@@ -24,6 +24,7 @@
*/
// Sprite management module
+
#include "saga/saga.h"
#include "saga/gfx.h"
@@ -57,8 +58,13 @@ Sprite::Sprite(SagaEngine *vm) : _vm(vm) {
loadList(_vm->getResourceDescription()->mainSpritesResourceId, _mainSprites);
_arrowSprites = _saveReminderSprites = _inventorySprites = _mainSprites;
} else {
- loadList(RID_IHNM_ARROW_SPRITES, _arrowSprites);
- loadList(RID_IHNM_SAVEREMINDER_SPRITES, _saveReminderSprites);
+ if (_vm->getGameId() == GID_IHNM_DEMO) {
+ loadList(RID_IHNMDEMO_ARROW_SPRITES, _arrowSprites);
+ loadList(RID_IHNMDEMO_SAVEREMINDER_SPRITES, _saveReminderSprites);
+ } else {
+ loadList(RID_IHNM_ARROW_SPRITES, _arrowSprites);
+ loadList(RID_IHNM_SAVEREMINDER_SPRITES, _saveReminderSprites);
+ }
}
}
@@ -113,7 +119,9 @@ void Sprite::loadList(int resourceId, SpriteList &spriteList) {
offset = readS.readUint16();
if (offset >= spriteListLength) {
- error("Sprite::loadList offset exceed");
+ // ITE Mac demos throw this warning
+ warning("Sprite::loadList offset exceeded");
+ return;
}
spritePointer = spriteListData;