aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoruruk2013-08-30 09:37:00 +0200
committeruruk2013-08-30 09:37:00 +0200
commitbdde166c4991c5d7de552b7c3bfd59823fc600e8 (patch)
treed08a9e4e9a06ae91284215fe837228cf030716d1
parent3aa059848a0bc64f7395115db75bb39d0e1b6794 (diff)
downloadscummvm-rg350-bdde166c4991c5d7de552b7c3bfd59823fc600e8.tar.gz
scummvm-rg350-bdde166c4991c5d7de552b7c3bfd59823fc600e8.tar.bz2
scummvm-rg350-bdde166c4991c5d7de552b7c3bfd59823fc600e8.zip
AVALANCHE: Repair the Oubliette in the catacombs and wrong parameters connected to Geida's follow-function. Repair the so-called "also" lines.
-rw-r--r--engines/avalanche/lucerna2.cpp16
-rw-r--r--engines/avalanche/timeout2.cpp10
-rw-r--r--engines/avalanche/trip6.cpp2
3 files changed, 16 insertions, 12 deletions
diff --git a/engines/avalanche/lucerna2.cpp b/engines/avalanche/lucerna2.cpp
index 4190c7523d..95011bdde7 100644
--- a/engines/avalanche/lucerna2.cpp
+++ b/engines/avalanche/lucerna2.cpp
@@ -91,7 +91,9 @@ void Lucerna::draw_also_lines() {
_vm->_graphics->_magics.frameRect(Common::Rect(0, 45, 640, 161), 15);
for (ff = 0; ff < _vm->_gyro->lineNum; ff++)
- _vm->_graphics->_magics.drawLine(_vm->_gyro->lines[ff].x1, _vm->_gyro->lines[ff].y1, _vm->_gyro->lines[ff].x2, _vm->_gyro->lines[ff].y2, _vm->_gyro->lines[ff].col);
+ if ((_vm->_gyro->lines[ff].x1 >= 0) && (_vm->_gyro->lines[ff].x1 < _vm->_graphics->kScreenWidth) && (_vm->_gyro->lines[ff].y1 >= 0) && (_vm->_gyro->lines[ff].y1 < _vm->_graphics->kScreenHeight)
+ && (_vm->_gyro->lines[ff].x2 >= 0) && (_vm->_gyro->lines[ff].x2 < _vm->_graphics->kScreenWidth) && (_vm->_gyro->lines[ff].y2 >= 0) && (_vm->_gyro->lines[ff].y2 < _vm->_graphics->kScreenHeight))
+ _vm->_graphics->_magics.drawLine(_vm->_gyro->lines[ff].x1, _vm->_gyro->lines[ff].y1, _vm->_gyro->lines[ff].x2, _vm->_gyro->lines[ff].y2, _vm->_gyro->lines[ff].col);
CursorMan.showMouse(true);
}
@@ -449,7 +451,7 @@ void Lucerna::enterroom(byte x, byte ped) {
case r__brummieroad: {
if (_vm->_gyro->dna.geida_follows)
- put_geida_at(4, ped);
+ put_geida_at(5, ped);
if (_vm->_gyro->dna.cwytalot_gone) {
_vm->_gyro->magics[lightred - 1].op = _vm->_gyro->nix;
_vm->_gyro->whereis[_vm->_gyro->pcwytalot - 150] = r__nowhere;
@@ -494,7 +496,7 @@ void Lucerna::enterroom(byte x, byte ped) {
_vm->_gyro->magics[green - 1].op = _vm->_gyro->nix; /* You may enter the drawbridge. */
}
if (_vm->_gyro->dna.geida_follows)
- put_geida_at(ped + 2, ped); /* load Geida */
+ put_geida_at(ped + 3, ped); /* load Geida */
}
break;
@@ -619,7 +621,7 @@ void Lucerna::enterroom(byte x, byte ped) {
_vm->_timeout->set_up_timer(3, _vm->_timeout->procgreetsmonk, _vm->_timeout->reason_du_lustie_talks);
if (_vm->_gyro->dna.geida_follows) {
- put_geida_at(4, ped);
+ put_geida_at(5, ped);
if (_vm->_gyro->dna.lustie_is_asleep) {
_vm->_celer->show_one(5);
_vm->_graphics->refreshBackground();
@@ -748,18 +750,18 @@ void Lucerna::enterroom(byte x, byte ped) {
break; /* Ayles awake. */
case r__geidas:
- put_geida_at(1, ped);
+ put_geida_at(2, ped);
break; /* load Geida */
case r__easthall:
case r__westhall:
if (_vm->_gyro->dna.geida_follows)
- put_geida_at(ped + 1, ped);
+ put_geida_at(ped + 2, ped);
break;
case r__lusties:
if (_vm->_gyro->dna.geida_follows)
- put_geida_at(ped + 5, ped);
+ put_geida_at(ped + 6, ped);
break;
case r__nottspub: {
diff --git a/engines/avalanche/timeout2.cpp b/engines/avalanche/timeout2.cpp
index e17ef72552..f147ad7550 100644
--- a/engines/avalanche/timeout2.cpp
+++ b/engines/avalanche/timeout2.cpp
@@ -551,14 +551,15 @@ void Timeout::greetsmonk() {
void Timeout::fall_down_oubliette() {
_vm->_gyro->magics[8].op = _vm->_gyro->nix;
- _vm->_trip->tr[0].iy += 1; /* increments dx/dy! */
- _vm->_trip->tr[0].y += _vm->_trip->tr[1].iy; /* Dowwwn we go... */
+ _vm->_trip->tr[0].iy++; /* increments dx/dy! */
+ _vm->_trip->tr[0].y += _vm->_trip->tr[0].iy; /* Dowwwn we go... */
set_up_timer(3, procfall_down_oubliette, reason_falling_down_oubliette);
}
void Timeout::meet_avaroid() {
if (_vm->_gyro->dna.met_avaroid) {
- _vm->_scrolls->display("You can't expect to be \6that\22 lucky twice in a row!");
+ _vm->_scrolls->display(Common::String("You can't expect to be ") + _vm->_scrolls->kControlItalic + "that"
+ + _vm->_scrolls->kControlRoman + " lucky twice in a row!");
_vm->_lucerna->gameover();
} else {
_vm->_visa->dixi('Q', 60);
@@ -626,7 +627,8 @@ void Timeout::avvy_sit_down() {
}
void Timeout::ghost_room_phew() {
- _vm->_scrolls->display("\6PHEW!\22 You're glad to get out of \6there!");
+ _vm->_scrolls->display(Common::String(_vm->_scrolls->kControlItalic) + "PHEW!" + _vm->_scrolls->kControlRoman
+ + " You're glad to get out of " + _vm->_scrolls->kControlItalic + "there!");
}
void Timeout::arkata_shouts() {
diff --git a/engines/avalanche/trip6.cpp b/engines/avalanche/trip6.cpp
index db7dbeaa45..2b3018b7b8 100644
--- a/engines/avalanche/trip6.cpp
+++ b/engines/avalanche/trip6.cpp
@@ -917,7 +917,7 @@ void Trip::call_special(uint16 which) {
break;
case 7: /* _vm->_gyro->special 7: stop falling down oubliette. */
tr[0].visible = false;
- _vm->_gyro->magics[10].op = _vm->_gyro->nix;
+ _vm->_gyro->magics[9].op = _vm->_gyro->nix;
stopwalking();
_vm->_timeout->lose_timer(_vm->_timeout->reason_falling_down_oubliette);
/*_vm->_lucerna->mblit(12, 80, 38, 160, 3, 0);