diff options
author | Filippos Karapetis | 2008-09-09 15:59:06 +0000 |
---|---|---|
committer | Filippos Karapetis | 2008-09-09 15:59:06 +0000 |
commit | 932399481a4463eb3f7a018913b2d7330a292c12 (patch) | |
tree | 88fb401f988eb879f168bfb5c199954f92206bb4 /engines/drascula/drascula.cpp | |
parent | 2ddadd7a45c880970b369f7835e8f51cfd59e9a3 (diff) | |
download | scummvm-rg350-932399481a4463eb3f7a018913b2d7330a292c12.tar.gz scummvm-rg350-932399481a4463eb3f7a018913b2d7330a292c12.tar.bz2 scummvm-rg350-932399481a4463eb3f7a018913b2d7330a292c12.zip |
- Cleanup and simplification
- Moved several simple animations out of animation.cpp
- Moved some animations with talk sequences inside drascula.dat
- A new version of drascula.dat is needed (will be uploaded shortly)
svn-id: r34464
Diffstat (limited to 'engines/drascula/drascula.cpp')
-rw-r--r-- | engines/drascula/drascula.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/drascula/drascula.cpp b/engines/drascula/drascula.cpp index ac402c82ba..ef6c9158d2 100644 --- a/engines/drascula/drascula.cpp +++ b/engines/drascula/drascula.cpp @@ -86,6 +86,7 @@ DrasculaEngine::~DrasculaEngine() { free(_roomPreUpdates); free(_roomUpdates); free(_roomActions); + free(_talkSequences); freeTexts(_text); freeTexts(_textd); freeTexts(_textb); @@ -440,7 +441,8 @@ bool DrasculaEngine::runCurrentChapter() { // made the character start walking off screen, as his actual position was // different than the displayed one if (roomNumber == 3 && (curX == 279) && (curY + curHeight == 101)) { - animation_1_2(); + gotoObject(178, 121); + gotoObject(169, 135); } else if (roomNumber == 14 && (curX == 214) && (curY + curHeight == 121)) { walkToObject = 1; gotoObject(190, 130); @@ -970,6 +972,15 @@ bool DrasculaEngine::loadDrasculaDat() { _roomActions[i].speechID = in.readSint16BE(); } + _talkSequencesSize = in.readUint16BE(); + _talkSequences = (TalkSequenceCommand *)malloc(sizeof(TalkSequenceCommand) * _talkSequencesSize); + for (i = 0; i < _talkSequencesSize; i++) { + _talkSequences[i].chapter = in.readSint16BE(); + _talkSequences[i].sequence = in.readSint16BE(); + _talkSequences[i].commandType = in.readSint16BE(); + _talkSequences[i].action = in.readSint16BE(); + } + _numLangs = in.readUint16BE(); _text = loadTexts(in); |