aboutsummaryrefslogtreecommitdiff
path: root/engines/access
diff options
context:
space:
mode:
authorStrangerke2014-11-27 00:11:57 +0100
committerPaul Gilbert2014-12-12 22:47:11 -0500
commit953321cc26f431f82314866b15fe312094e32ecb (patch)
tree060fe53f285d4ed71b77a61a2c1efd4dde8f39c2 /engines/access
parent0cafe2719d56e1acd1b3972737a9f8e031d51136 (diff)
downloadscummvm-rg350-953321cc26f431f82314866b15fe312094e32ecb.tar.gz
scummvm-rg350-953321cc26f431f82314866b15fe312094e32ecb.tar.bz2
scummvm-rg350-953321cc26f431f82314866b15fe312094e32ecb.zip
ACCESS: Fix a glitch in the intro, add a workaround for a crash, fix a logic flaw
Diffstat (limited to 'engines/access')
-rw-r--r--engines/access/amazon/amazon_game.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/engines/access/amazon/amazon_game.cpp b/engines/access/amazon/amazon_game.cpp
index 1a89ddb80d..05ac80e350 100644
--- a/engines/access/amazon/amazon_game.cpp
+++ b/engines/access/amazon/amazon_game.cpp
@@ -161,8 +161,8 @@ void AmazonEngine::doCredit() {
_buffer2.plotImage(_objectsTable[0], 12, Common::Point(88, 55));
_buffer2.plotImage(_objectsTable[0], 6, Common::Point(194, 98));
} else if (_pCount <= 520) {
- _buffer2.plotImage(_objectsTable[0], 7, Common::Point(90, 35));
- _buffer2.plotImage(_objectsTable[0], 8, Common::Point(90, 35));
+ _buffer2.plotImage(_objectsTable[0], 7, Common::Point(32, 13));
+ _buffer2.plotImage(_objectsTable[0], 8, Common::Point(162, 80));
} else if (_pCount <= 580) {
_buffer2.plotImage(_objectsTable[0], 9, Common::Point(18, 15));
_buffer2.plotImage(_objectsTable[0], 10, Common::Point(164, 81));
@@ -258,6 +258,7 @@ void AmazonEngine::doTitle() {
_events->pollEvents();
g_system->delayMillis(10);
}
+
if (_events->_rightButton) {
_skipStart = true;
_room->clearRoom();
@@ -343,19 +344,19 @@ void AmazonEngine::doTitle() {
++_screen->_scrollRow;
_buffer1.moveBufferUp();
- _room->buildRow(_screen->_scrollRow + _screen->_vWindowHeight, _screen->_vWindowLinesTall * _screen->_bufferBytesWide);
+ // WORKAROUND: the original was using _screen->_vWindowBytesWide * _screen->_vWindowLinesTall
+ _room->buildRow(_screen->_scrollRow + _screen->_vWindowHeight, _screen->_vWindowLinesTall);
if (_screen->_scrollRow + _screen->_vWindowHeight >= _room->_playFieldHeight) {
_room->clearRoom();
_events->showCursor();
return;
}
-
- scrollTitle();
- while (!shouldQuit() && (_events->_vbCount > 0)) {
- _events->pollEvents();
- g_system->delayMillis(10);
- }
+ }
+ scrollTitle();
+ while (!shouldQuit() && (_events->_vbCount > 0)) {
+ _events->pollEvents();
+ g_system->delayMillis(10);
}
}
}