diff options
author | Gregory Montoir | 2004-02-28 06:34:58 +0000 |
---|---|---|
committer | Gregory Montoir | 2004-02-28 06:34:58 +0000 |
commit | d94c096f368a40e4ff1c9ecd42d63f808ebb17af (patch) | |
tree | be1f03b460ea954fc709d2f9f185c42135251b61 | |
parent | ec45e8dd811e2a61f95b863cdcc8bdf6d78c9762 (diff) | |
download | scummvm-rg350-d94c096f368a40e4ff1c9ecd42d63f808ebb17af.tar.gz scummvm-rg350-d94c096f368a40e4ff1c9ecd42d63f808ebb17af.tar.bz2 scummvm-rg350-d94c096f368a40e4ff1c9ecd42d63f808ebb17af.zip |
removed hack from loading code
svn-id: r13080
-rw-r--r-- | queen/logic.cpp | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/queen/logic.cpp b/queen/logic.cpp index 9612520069..4a871346f1 100644 --- a/queen/logic.cpp +++ b/queen/logic.cpp @@ -1360,9 +1360,6 @@ void Logic::loadState(uint32 ver, byte *&ptr) { } void Logic::setupRestoredGame() { - uint16 flag = _vm->bam()->_flag; - _vm->bam()->_flag = BamScene::F_STOP; - _vm->sound()->playLastSong(); switch (gameState(VAR_DRESSING_MODE)) { @@ -1380,19 +1377,34 @@ void Logic::setupRestoredGame() { break; } - _joe.cutFacing = _joe.facing; - joeFace(); + BobSlot *pbs = _vm->graphics()->bob(0); + pbs->xflip = (joeFacing() == DIR_LEFT); + joePrevFacing(joeFacing()); + joeCutFacing(joeFacing()); + switch (joeFacing()) { + case DIR_FRONT: + pbs->frameNum = 34 + FRAMES_JOE_XTRA; + _vm->bankMan()->unpack(3, 29 + FRAMES_JOE_XTRA, 7); + break; + case DIR_BACK: + pbs->frameNum = 35 + FRAMES_JOE_XTRA; + _vm->bankMan()->unpack(5, 29 + FRAMES_JOE_XTRA, 7); + break; + default: + pbs->frameNum = 33 + FRAMES_JOE_XTRA; + _vm->bankMan()->unpack(1, 29 + FRAMES_JOE_XTRA, 7); + break; + } _oldRoom = 0; _newRoom = _currentRoom; _entryObj = 0; - inventoryRefresh(); - - if (flag != BamScene::F_STOP) { - _vm->bam()->_flag = flag; + if (_vm->bam()->_flag != BamScene::F_STOP) { _vm->bam()->prepareAnimation(); } + + inventoryRefresh(); } void Logic::sceneStart() { |