aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2014-11-21 21:34:55 -0500
committerPaul Gilbert2014-12-12 22:37:29 -0500
commit5cfdc983c38c6b470701be46209dacba06e537a0 (patch)
tree9b33787be616abe1b066143de8b79586db4f82c2
parente1e97ec9ff30435bee991133d8adc009d74979e5 (diff)
downloadscummvm-rg350-5cfdc983c38c6b470701be46209dacba06e537a0.tar.gz
scummvm-rg350-5cfdc983c38c6b470701be46209dacba06e537a0.tar.bz2
scummvm-rg350-5cfdc983c38c6b470701be46209dacba06e537a0.zip
ACCESS: Fix loading of animation at end of mWhileDoOpen
-rw-r--r--engines/access/amazon/amazon_scripts.cpp9
-rw-r--r--engines/access/scripts.cpp6
2 files changed, 9 insertions, 6 deletions
diff --git a/engines/access/amazon/amazon_scripts.cpp b/engines/access/amazon/amazon_scripts.cpp
index a45e6f72bd..bb8f8a9223 100644
--- a/engines/access/amazon/amazon_scripts.cpp
+++ b/engines/access/amazon/amazon_scripts.cpp
@@ -749,7 +749,7 @@ void AmazonScripts::mWhileDoOpen() {
events.showCursor();
_vm->_buffer2.copyFrom(*_vm->_screen);
_vm->_buffer1.copyFrom(*_vm->_screen);
- warning("TODO: delete _roomInfo;");
+
_vm->freeCells();
_vm->_oldRects.clear();
_vm->_newRects.clear();
@@ -757,10 +757,15 @@ void AmazonScripts::mWhileDoOpen() {
_vm->_images.clear();
if (_vm->_conversation == 2) {
+ // Cutscene at end of Chapter 6
Resource *spriteData = _vm->_files->loadFile(28, 37);
_vm->_objectsTable[28] = new SpriteResource(_vm, spriteData);
delete spriteData;
- warning("TODO: _roomInfo = _vm->_files->loadFile(28, 38);");
+
+ _vm->_animation->freeAnimationData();
+ animResource = _vm->_files->loadFile(28, 38);
+ _vm->_animation->loadAnimations(animResource);
+ delete animResource;
}
}
diff --git a/engines/access/scripts.cpp b/engines/access/scripts.cpp
index b7ee4d2278..9268b829e7 100644
--- a/engines/access/scripts.cpp
+++ b/engines/access/scripts.cpp
@@ -595,7 +595,6 @@ void Scripts::cmdTexChoice() {
Common::Array<Common::Rect> responseCoords;
responseCoords.push_back(_vm->_bubbleBox->_bounds);
- responseCoords.push_back(Common::Rect(0, 0, 0, 0));
_vm->_screen->_printOrg.y = _vm->_bubbleBox->_bounds.bottom + 11;
findNull();
@@ -605,13 +604,12 @@ void Scripts::cmdTexChoice() {
while ((v = _data->readByte()) != 0)
tmpStr += (char)v;
- Common::Rect termResponse2 = Common::Rect(-1, 0, 0, 0);
if (tmpStr.size() != 0) {
choice2Fl = true;
_vm->_bubbleBox->_bubblePtr = Common::String("RESPONSE 2").c_str();
_vm->_bubbleBox->calcBubble(tmpStr);
_vm->_bubbleBox->printBubble(tmpStr);
- responseCoords[1] = _vm->_bubbleBox->_bounds;
+ responseCoords.push_back(_vm->_bubbleBox->_bounds);
_vm->_screen->_printOrg.y = _vm->_bubbleBox->_bounds.bottom + 11;
}
@@ -626,7 +624,7 @@ void Scripts::cmdTexChoice() {
_vm->_bubbleBox->_bubblePtr = Common::String("RESPONSE 3").c_str();
_vm->_bubbleBox->calcBubble(tmpStr);
_vm->_bubbleBox->printBubble(tmpStr);
- termResponse2 = _vm->_bubbleBox->_bounds;
+ responseCoords.push_back(_vm->_bubbleBox->_bounds);
_vm->_screen->_printOrg.y = _vm->_bubbleBox->_bounds.bottom + 11;
}