From 1e983cd8fc4e8368a7d98ec0db0b1d9f8a48ad74 Mon Sep 17 00:00:00 2001 From: Strangerke Date: Sun, 27 Oct 2013 16:59:38 +0100 Subject: TSAGE: Fix CID 1002397, 1002398, 1047257. Fix a bug in Scene3150::postInit() --- engines/tsage/blue_force/blueforce_scenes4.cpp | 60 +++++++++---------- engines/tsage/blue_force/blueforce_scenes4.h | 7 ++- engines/tsage/globals.cpp | 80 +++++++++++++++++++++---- engines/tsage/globals.h | 31 +++++----- engines/tsage/ringworld2/ringworld2_scenes1.cpp | 22 +++---- engines/tsage/ringworld2/ringworld2_scenes2.cpp | 16 ++--- engines/tsage/ringworld2/ringworld2_scenes3.cpp | 28 ++++----- 7 files changed, 150 insertions(+), 94 deletions(-) diff --git a/engines/tsage/blue_force/blueforce_scenes4.cpp b/engines/tsage/blue_force/blueforce_scenes4.cpp index a10f311791..072761b5ac 100644 --- a/engines/tsage/blue_force/blueforce_scenes4.cpp +++ b/engines/tsage/blue_force/blueforce_scenes4.cpp @@ -39,7 +39,7 @@ namespace BlueForce { void Scene410::Action1::signal() { Scene410 *scene = (Scene410 *)BF_GLOBALS._sceneManager._scene; - switch (scene->_field1FB6++) { + switch (scene->_action1Count++) { case 0: if (BF_GLOBALS.getFlag(fTalkedDriverNoBkup)) { setDelay(3); @@ -136,7 +136,7 @@ void Scene410::Action5::signal() { switch (_actionIndex++) { case 0: - if (scene->_field1FC4 == 0) { + if (scene->_harrisonMovedFl == 0) { ADD_PLAYER_MOVER(114, 133); } else { ADD_PLAYER_MOVER(195, 139); @@ -167,7 +167,7 @@ void Scene410::Action6::signal() { switch (_actionIndex++) { case 0: - if (scene->_field1FC4 == 0) { + if (scene->_harrisonMovedFl == 0) { ADD_PLAYER_MOVER(114, 133); } else { ADD_PLAYER_MOVER(126, 99); @@ -243,7 +243,7 @@ bool Scene410::Motorcycle::startAction(CursorType action, Event &event) { } else if (BF_GLOBALS.getFlag(fSearchedTruck) && !BF_GLOBALS._sceneObjects->contains(&scene->_harrison)) { scene->_sceneMode = 4103; scene->signal(); - } else if (scene->_field1FBC != 0) { + } else if (scene->_cuffedDriverFl != 0) { SceneItem::display2(410, 12); } else { scene->_sceneMode = 4103; @@ -260,7 +260,7 @@ bool Scene410::TruckFront::startAction(CursorType action, Event &event) { switch (action) { case CURSOR_USE: - if ((BF_GLOBALS._bookmark < bStoppedFrankie) && (!scene->_field1FBC || !scene->_field1FBA)) + if ((BF_GLOBALS._bookmark < bStoppedFrankie) && (!scene->_cuffedDriverFl || !scene->_field1FBA)) break; else if (BF_GLOBALS.getFlag(fSearchedTruck)) SceneItem::display2(410, 13); @@ -293,7 +293,7 @@ bool Scene410::Driver::startAction(CursorType action, Event &event) { } else { SceneItem::display2(410, 7); } - } else if (!scene->_field1FBC) { + } else if (!scene->_cuffedDriverFl) { SceneItem::display2(410, 7); } else if (!scene->_field1FC0) { scene->_sceneMode = 4124; @@ -309,13 +309,13 @@ bool Scene410::Driver::startAction(CursorType action, Event &event) { return true; case INV_HANDCUFFS: if (BF_GLOBALS.getFlag(fCalledBackup)) { - if ((scene->_talkCount < 5) || (scene->_field1FB6 < 1) || (scene->_field1FBC != 0)) + if ((scene->_talkCount < 5) || (scene->_action1Count < 1) || (scene->_cuffedDriverFl != 0)) break; BF_GLOBALS._player.disableControl(); scene->_sceneMode = 4123; scene->_stripManager.start(4125, scene); - scene->_field1FBC = 1; + scene->_cuffedDriverFl = 1; T2_GLOBALS._uiElements.addScore(30); } else { if (BF_GLOBALS.getFlag(fTalkedDriverNoBkup)) { @@ -328,11 +328,11 @@ bool Scene410::Driver::startAction(CursorType action, Event &event) { case INV_TICKET_BOOK: if (!BF_GLOBALS.getFlag(fDriverOutOfTruck)) { return startAction(CURSOR_TALK, event); - } else if (!scene->_field1FC4) { + } else if (!scene->_harrisonMovedFl) { BF_GLOBALS._player.disableControl(); scene->_sceneMode = 2; scene->setAction(&scene->_sequenceManager1, scene, 4120, &scene->_passenger, &BF_GLOBALS._player, NULL); - } else if ((scene->_field1FBC != 0) || (scene->_field1FC2 != 0)) { + } else if ((scene->_cuffedDriverFl != 0) || (scene->_field1FC2 != 0)) { break; } else { scene->_field1FC2 = 1; @@ -343,7 +343,7 @@ bool Scene410::Driver::startAction(CursorType action, Event &event) { } return true; case INV_MIRANDA_CARD: - if (scene->_field1FBC == 0) + if (scene->_cuffedDriverFl == 0) return false; if (BF_GLOBALS.getFlag(readFrankRights)) { @@ -455,7 +455,7 @@ bool Scene410::Harrison::startAction(CursorType action, Event &event) { SET_FONT, 4, SET_BG_COLOR, 1, SET_FG_COLOR, 32, SET_EXT_BGCOLOR, 49, SET_EXT_FGCOLOR, 13, LIST_END); } - } else if ((scene->_field1FBA != 0) && (scene->_field1FBC != 0)) { + } else if ((scene->_field1FBA != 0) && (scene->_cuffedDriverFl != 0)) { BF_GLOBALS._player.disableControl(); scene->_sceneMode = 4112; scene->_stripManager.start(4113, scene); @@ -476,13 +476,13 @@ bool Scene410::Harrison::startAction(CursorType action, Event &event) { BF_GLOBALS._walkRegions.enableRegion(22); scene->_sceneMode = 4122; scene->_stripManager.start(4112, scene); - } else if (scene->_field1FB6 < 1) { + } else if (scene->_action1Count < 1) { break; - } else if (scene->_field1FBC != 0) { + } else if (scene->_cuffedDriverFl != 0) { error("Error - want to cuff driver, but he's cuffed already"); } else { BF_GLOBALS._player.disableControl(); - scene->_field1FBC = 1; + scene->_cuffedDriverFl = 1; scene->_field1FC0 = 1; BF_GLOBALS._walkRegions.enableRegion(22); scene->_sceneMode = 4109; @@ -500,20 +500,20 @@ bool Scene410::Harrison::startAction(CursorType action, Event &event) { /*--------------------------------------------------------------------------*/ Scene410::Scene410(): SceneExt() { - _field1FB6 = _talkCount = _field1FBA = _field1FBC = 0; - _field1FBE = _field1FC0 = _field1FC2 = _field1FC4 = 0; + _action1Count = _talkCount = _field1FBA = _cuffedDriverFl = 0; + _field1FBE = _field1FC0 = _field1FC2 = _harrisonMovedFl = 0; } void Scene410::synchronize(Serializer &s) { SceneExt::synchronize(s); - s.syncAsSint16LE(_field1FB6); + s.syncAsSint16LE(_action1Count); s.syncAsSint16LE(_talkCount); s.syncAsSint16LE(_field1FBA); - s.syncAsSint16LE(_field1FBC); + s.syncAsSint16LE(_cuffedDriverFl); s.syncAsSint16LE(_field1FBE); s.syncAsSint16LE(_field1FC0); s.syncAsSint16LE(_field1FC2); - s.syncAsSint16LE(_field1FC4); + s.syncAsSint16LE(_harrisonMovedFl); } void Scene410::postInit(SceneObjectList *OwnerList) { @@ -593,7 +593,7 @@ void Scene410::postInit(SceneObjectList *OwnerList) { _patrolCar.fixPriority(148); _patrolCar.setPosition(Common::Point(39, 168)); - _field1FC4 = 1; + _harrisonMovedFl = 1; _sceneMode = 0; signal(); break; @@ -603,10 +603,10 @@ void Scene410::postInit(SceneObjectList *OwnerList) { _driver.remove(); _sceneMode = 0; } else { - _field1FC4 = BF_GLOBALS._v50CC8; + _harrisonMovedFl = BF_GLOBALS._scene410HarrisonMovedFl; _field1FBA = BF_GLOBALS._v50CC2; - _talkCount = BF_GLOBALS._v50CC6; - _field1FB6 = BF_GLOBALS._v50CC4; + _talkCount = BF_GLOBALS._scene410TalkCount; + _action1Count = BF_GLOBALS._scene410Action1Count; _passenger.setVisage(418); _passenger.setStrip(6); @@ -651,7 +651,7 @@ void Scene410::postInit(SceneObjectList *OwnerList) { _patrolCar.setDetails(410, 8, 9, 10, 1, (SceneItem *)NULL); _patrolCar.fixPriority(148); - if (_field1FC4) { + if (_harrisonMovedFl) { _harrison.setPosition(Common::Point(108, 112)); _patrolCar.fixPriority(148); _patrolCar.setPosition(Common::Point(39, 168)); @@ -664,7 +664,7 @@ void Scene410::postInit(SceneObjectList *OwnerList) { _sceneMode = 0; } - _field1FC4 = 1; + _harrisonMovedFl = 1; } break; case 50: @@ -686,10 +686,10 @@ void Scene410::signal() { BF_GLOBALS.set2Flags(f1097Frankie); BF_GLOBALS.clearFlag(f1097Marina); - BF_GLOBALS._v50CC8 = _field1FC4; + BF_GLOBALS._scene410HarrisonMovedFl = _harrisonMovedFl; BF_GLOBALS._v50CC2 = _field1FBA; - BF_GLOBALS._v50CC6 = _talkCount; - BF_GLOBALS._v50CC4 = _field1FB6; + BF_GLOBALS._scene410TalkCount = _talkCount; + BF_GLOBALS._scene410Action1Count = _action1Count; BF_GLOBALS._sceneManager.changeScene(60); break; case 2: @@ -760,7 +760,7 @@ void Scene410::signal() { break; case 4104: // After call for backup, patrol car is coming - _field1FC4 = 1; + _harrisonMovedFl = 1; BF_GLOBALS._player.disableControl(); _sceneMode = 0; setAction(&_sequenceManager1, this, 4104, &_patrolCar, &_harrison, NULL); diff --git a/engines/tsage/blue_force/blueforce_scenes4.h b/engines/tsage/blue_force/blueforce_scenes4.h index 937c015a4c..f46b2afdde 100644 --- a/engines/tsage/blue_force/blueforce_scenes4.h +++ b/engines/tsage/blue_force/blueforce_scenes4.h @@ -116,9 +116,10 @@ public: SpeakerDriver _driverSpeaker; SpeakerShooter _shooterSpeaker; ASoundExt _sound1; - int _field1FB6, _talkCount, _field1FBA; - int _field1FBC, _field1FBE; - int _field1FC0, _field1FC2, _field1FC4; + int _action1Count, _talkCount, _field1FBA; + int _cuffedDriverFl, _field1FBE; + int _field1FC0; // Useless variable + int _field1FC2, _harrisonMovedFl; Scene410(); virtual void postInit(SceneObjectList *OwnerList = NULL); diff --git a/engines/tsage/globals.cpp b/engines/tsage/globals.cpp index d777475c95..b043df0c10 100644 --- a/engines/tsage/globals.cpp +++ b/engines/tsage/globals.cpp @@ -119,8 +119,11 @@ Globals::Globals() : _dialogCenter(160, 140), _gfxManagerInstance(_screenSurface _sounds.push_back(&_soundHandler); _sounds.push_back(&_sequenceManager._soundHandler); - _scrollFollower = NULL; - _inventory = NULL; + _scrollFollower = nullptr; + + _inventory = nullptr; + _game = nullptr; + _sceneHandler = nullptr; switch (g_vm->getGameID()) { case GType_Ringworld: @@ -145,6 +148,7 @@ Globals::Globals() : _dialogCenter(160, 140), _gfxManagerInstance(_screenSurface _sceneHandler = new Ringworld2::SceneHandlerExt(); break; } + } Globals::~Globals() { @@ -229,6 +233,32 @@ void TsAGE2Globals::synchronize(Serializer &s) { namespace BlueForce { BlueForceGlobals::BlueForceGlobals(): TsAGE2Globals() { + _hiddenDoorStatus = 0; + _nico910State = 0; + _v4CEE4 = 0; + _v4CEE6 = 0; + _v4CEE8 = 0; + _deziTopic = 0; + _deathReason = 0; + _driveFromScene = 300; + _driveToScene = 0; + _v501F8 = 0; + _v501FA = 0; + _v501FC = 0; + _v5020C = 0; + _v50696 = 0; + _subFlagBitArr1 = 0; + _subFlagBitArr2 = 0; + _v50CC2 = 0; + _scene410Action1Count = 0; + _scene410TalkCount = 0; + _scene410HarrisonMovedFl = 0; + _v51C42 = 0; + _v51C44 = 1; + _bookmark = bNone; + _mapLocationId = 1; + _clip1Bullets = 8; + _clip2Bullets = 8; } void BlueForceGlobals::synchronize(Serializer &s) { @@ -269,9 +299,9 @@ void BlueForceGlobals::synchronize(Serializer &s) { s.syncAsSint16LE(_subFlagBitArr1); s.syncAsSint16LE(_subFlagBitArr2); s.syncAsSint16LE(_v50CC2); - s.syncAsSint16LE(_v50CC4); - s.syncAsSint16LE(_v50CC6); - s.syncAsSint16LE(_v50CC8); + s.syncAsSint16LE(_scene410Action1Count); + s.syncAsSint16LE(_scene410TalkCount); + s.syncAsSint16LE(_scene410HarrisonMovedFl); s.syncAsSint16LE(_v51C42); s.syncAsSint16LE(_v51C44); s.syncAsSint16LE(_bookmark); @@ -340,9 +370,9 @@ void BlueForceGlobals::reset() { _subFlagBitArr1 = 0; _subFlagBitArr2 = 0; _v50CC2 = 0; - _v50CC4 = 0; - _v50CC6 = 0; - _v50CC8 = 0; + _scene410Action1Count = 0; + _scene410TalkCount = 0; + _scene410HarrisonMovedFl = 0; _v51C42 = 0; _v51C44 = 1; _clip1Bullets = 8; @@ -375,6 +405,32 @@ namespace Ringworld2 { Ringworld2Globals::Ringworld2Globals() { _scannerDialog = new ScannerDialog(); _speechSubtitles = SPEECH_TEXT; + + _v5657C = 0; + _stripModifier = 0; + _flubMazeArea = 1; + _flubMazeEntryDirection = 0; + _maze3800SceneNumb = 3800; + _landerSuitNumber = 2; + _desertStepsRemaining = 5; + _desertCorrectDirection = 0; + _desertPreviousDirection = 0; + _desertWrongDirCtr = -1; + _balloonAltitude = 5; + _scene1925CurrLevel = 0; + _walkwaySceneNumber = 0; + _v56AA0 = 0; + _scientistConvIndex = 0; + _v56AA6 = 1; + _v56AA7 = 1; + _v56AA8 = 1; + _v56AAB = 0; + _scene180Mode = -1; + _v57709 = 0; + _v5780C = 0; + _v5780E = 0; + _v57810 = 0; + _v57C2C = 0; } Ringworld2Globals::~Ringworld2Globals() { @@ -417,7 +473,7 @@ void Ringworld2Globals::reset() { _foodCount = 0; _rimLocation = 0; _rimTransportLocation = 0; - _v565AE = 0; + _stripModifier = 0; _spillLocation[0] = 0; _spillLocation[1] = 3; _spillLocation[R2_SEEKER] = 5; @@ -457,7 +513,7 @@ void Ringworld2Globals::reset() { _vampireData[16]._shotsRequired = 1; _vampireData[17]._shotsRequired = 1; - _v566A6 = 3800; + _maze3800SceneNumb = 3800; _landerSuitNumber = 2; _flubMazeArea = 1; _flubMazeEntryDirection = 0; @@ -531,7 +587,7 @@ void Ringworld2Globals::synchronize(Serializer &s) { s.syncAsSint32LE(_rimLocation); s.syncAsSint16LE(_rimTransportLocation); s.syncAsSint16LE(_landerSuitNumber); - s.syncAsSint16LE(_v566A6); + s.syncAsSint16LE(_maze3800SceneNumb); s.syncAsSint16LE(_desertWrongDirCtr); s.syncAsSint16LE(_scene1925CurrLevel); // _v56A9C s.syncAsSint16LE(_walkwaySceneNumber); @@ -553,7 +609,7 @@ void Ringworld2Globals::synchronize(Serializer &s) { for (i = 0; i < MAX_CHARACTERS; ++i) s.syncAsByte(_scannerFrequencies[i]); - s.syncAsByte(_v565AE); + s.syncAsByte(_stripModifier); s.syncAsByte(_flubMazeArea); s.syncAsByte(_flubMazeEntryDirection); s.syncAsByte(_desertStepsRemaining); diff --git a/engines/tsage/globals.h b/engines/tsage/globals.h index bb48a87843..e514a51120 100644 --- a/engines/tsage/globals.h +++ b/engines/tsage/globals.h @@ -208,19 +208,19 @@ public: int _deathReason; int _driveFromScene; int _driveToScene; - int _v501F8; - int _v501FA; - int _v501FC; - int _v5020C; - int _v50696; + int _v501F8; // Useless variable + int _v501FA; // Useless variable + int _v501FC; // Useless variable + int _v5020C; // Useless variable + int _v50696; // Useless variable uint8 _subFlagBitArr1; uint8 _subFlagBitArr2; int _v50CC2; - int _v50CC4; - int _v50CC6; - int _v50CC8; - int _v51C42; - int _v51C44; + int _scene410Action1Count; + int _scene410TalkCount; + int _scene410HarrisonMovedFl; + int _v51C42; // Useless variable + int _v51C44; // Useless variable Bookmark _bookmark; int _mapLocationId; int _clip1Bullets, _clip2Bullets; @@ -273,13 +273,13 @@ public: int _foodCount; int _rimLocation; int _rimTransportLocation; - int _v5657C; - byte _v565AE; + int _v5657C; // Useless variable + byte _stripModifier; byte _spillLocation[14]; VampireData _vampireData[18]; byte _flubMazeArea; byte _flubMazeEntryDirection; - int _v566A6; + int _maze3800SceneNumb; byte _landerSuitNumber; byte _desertStepsRemaining; byte _desertCorrectDirection; @@ -292,17 +292,16 @@ public: byte _v56AA0; byte _scientistConvIndex; Common::Point _ventCellPos; - int _v56AA4; byte _v56AA6; byte _v56AA7; byte _v56AA8; - int _v56AAB; + int _v56AAB; // Useless variable int _scene180Mode; // _v575f7 int _v57709; int _v5780C; int _v5780E; int _v57810; - int _v57C2C; + int _v57C2C; // Useless variable. Seems to be _speechSubtitles int _speechSubtitles; Common::Point _s1550PlayerArea[3]; // only used for Quinn and Seeker byte _scannerFrequencies[4]; diff --git a/engines/tsage/ringworld2/ringworld2_scenes1.cpp b/engines/tsage/ringworld2/ringworld2_scenes1.cpp index 82c4d13871..a57395b9f6 100644 --- a/engines/tsage/ringworld2/ringworld2_scenes1.cpp +++ b/engines/tsage/ringworld2/ringworld2_scenes1.cpp @@ -694,13 +694,13 @@ bool Scene1100::Seeker::startAction(CursorType action, Event &event) { } else { R2_GLOBALS._player.disableControl(); scene->_sceneMode = 55; - if (R2_GLOBALS._v565AE >= 3) { + if (R2_GLOBALS._stripModifier >= 3) { if (R2_GLOBALS._player._characterIndex == R2_QUINN) scene->_stripManager.start3(329, scene, R2_GLOBALS._stripManager_lookupList); else scene->_stripManager.start3(330, scene, R2_GLOBALS._stripManager_lookupList); } else { - ++R2_GLOBALS._v565AE; + ++R2_GLOBALS._stripModifier; R2_GLOBALS._events.setCursor(CURSOR_CROSSHAIRS); if (R2_GLOBALS._player._characterIndex == R2_QUINN) scene->_stripManager.start3(304, scene, R2_GLOBALS._stripManager_lookupList); @@ -7832,7 +7832,7 @@ void Scene1550::postInit(SceneObjectList *OwnerList) { switch (R2_GLOBALS._sceneManager._previousScene) { case 1530: - R2_GLOBALS._v565AE = 0; + R2_GLOBALS._stripModifier = 0; // No break on purpose case 300: // No break on purpose @@ -8058,33 +8058,33 @@ void Scene1550::signal() { _sceneMode = 60; R2_GLOBALS._player.disableControl(); R2_GLOBALS._events.setCursor(CURSOR_CROSSHAIRS); - if (R2_GLOBALS._v565AE >= 3) { + if (R2_GLOBALS._stripModifier >= 3) { if (R2_GLOBALS._player._characterIndex == R2_QUINN) _stripManager.start(572, this); else _stripManager.start(573, this); } else { - ++R2_GLOBALS._v565AE; + ++R2_GLOBALS._stripModifier; if (R2_GLOBALS._player._characterIndex == R2_QUINN) - _stripManager.start(499 + R2_GLOBALS._v565AE, this); + _stripManager.start(499 + R2_GLOBALS._stripModifier, this); else - _stripManager.start(502 + R2_GLOBALS._v565AE, this); + _stripManager.start(502 + R2_GLOBALS._stripModifier, this); } } else { _sceneMode = 60; R2_GLOBALS._player.disableControl(); R2_GLOBALS._events.setCursor(CURSOR_CROSSHAIRS); - if (R2_GLOBALS._v565AE >= 4) { + if (R2_GLOBALS._stripModifier >= 4) { if (R2_GLOBALS._player._characterIndex == R2_QUINN) _stripManager.start(572, this); else _stripManager.start(573, this); } else { - ++R2_GLOBALS._v565AE; + ++R2_GLOBALS._stripModifier; if (R2_GLOBALS._player._characterIndex == R2_QUINN) - _stripManager.start(563 + R2_GLOBALS._v565AE, this); + _stripManager.start(563 + R2_GLOBALS._stripModifier, this); else - _stripManager.start(567 + R2_GLOBALS._v565AE, this); + _stripManager.start(567 + R2_GLOBALS._stripModifier, this); } } break; diff --git a/engines/tsage/ringworld2/ringworld2_scenes2.cpp b/engines/tsage/ringworld2/ringworld2_scenes2.cpp index 510855b162..17dca69c45 100644 --- a/engines/tsage/ringworld2/ringworld2_scenes2.cpp +++ b/engines/tsage/ringworld2/ringworld2_scenes2.cpp @@ -1944,14 +1944,14 @@ bool Scene2450::CareTaker::startAction(CursorType action, Event &event) { if (action == CURSOR_TALK) { R2_GLOBALS._player.disableControl(); - if (R2_GLOBALS._v565AE < 3) { - ++R2_GLOBALS._v565AE; + if (R2_GLOBALS._stripModifier < 3) { + ++R2_GLOBALS._stripModifier; scene->_sceneMode = 20; R2_GLOBALS._events.setCursor(CURSOR_CROSSHAIRS); if (R2_GLOBALS._player._characterIndex == R2_QUINN) - scene->_stripManager.start(699 + (R2_GLOBALS._v565AE * 2), scene); + scene->_stripManager.start(699 + (R2_GLOBALS._stripModifier * 2), scene); else - scene->_stripManager.start(700 + (R2_GLOBALS._v565AE * 2), scene); + scene->_stripManager.start(700 + (R2_GLOBALS._stripModifier * 2), scene); } return true; } else { @@ -2009,7 +2009,7 @@ void Scene2450::postInit(SceneObjectList *OwnerList) { R2_GLOBALS._player.disableControl(); switch (R2_GLOBALS._player._oldCharacterScene[R2_GLOBALS._player._characterIndex]) { case 1900: - R2_GLOBALS._v565AE = 0; + R2_GLOBALS._stripModifier = 0; R2_GLOBALS._player._characterScene[R2_QUINN] = 2450; R2_GLOBALS._player._characterScene[R2_SEEKER] = 2450; R2_GLOBALS._player._oldCharacterScene[R2_QUINN] = 2450; @@ -2145,14 +2145,14 @@ void Scene2450::signal() { g_globals->_sceneManager.changeScene(2000); break; case 20: - if (R2_GLOBALS._v565AE == 3) { + if (R2_GLOBALS._stripModifier == 3) { R2_GLOBALS._player.disableControl(); - R2_GLOBALS._v565AE = 4; + R2_GLOBALS._stripModifier = 4; _sceneMode = 2454; setAction(&_sequenceManager, this, 2454, &_careTaker, NULL); } else { R2_GLOBALS._player.enableControl(CURSOR_TALK); - if (R2_GLOBALS._v565AE < 4) + if (R2_GLOBALS._stripModifier < 4) R2_GLOBALS._player._canWalk = false; } break; diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.cpp b/engines/tsage/ringworld2/ringworld2_scenes3.cpp index 7109486501..1fe0150ff0 100644 --- a/engines/tsage/ringworld2/ringworld2_scenes3.cpp +++ b/engines/tsage/ringworld2/ringworld2_scenes3.cpp @@ -697,7 +697,7 @@ void Scene3150::postInit(SceneObjectList *OwnerList) { setAction(&_sequenceManager, this, 3156, &R2_GLOBALS._player, &_guard, &_doorBars, &_foodTray, NULL); } else { - if (R2_GLOBALS._v56AA0 != 2) + if ((R2_GLOBALS._v56AA0 != 1) && (R2_GLOBALS._v56AA0 != 2)) ++R2_GLOBALS._v56AA0; R2_GLOBALS._player.setup(30, 3, 1); @@ -5185,7 +5185,7 @@ void Scene3800::initExits() { _southExit._moving = false; _westExit._moving = false; - loadScene(R2_GLOBALS._v566A6); + loadScene(R2_GLOBALS._maze3800SceneNumb); R2_GLOBALS._uiElements.draw(); } @@ -5322,30 +5322,30 @@ void Scene3800::postInit(SceneObjectList *OwnerList) { void Scene3800::signal() { switch (_sceneMode) { case 11: - R2_GLOBALS._v566A6 += 15; - if (R2_GLOBALS._v566A6 > 3815) - R2_GLOBALS._v566A6 -= 20; + R2_GLOBALS._maze3800SceneNumb += 15; + if (R2_GLOBALS._maze3800SceneNumb > 3815) + R2_GLOBALS._maze3800SceneNumb -= 20; initExits(); enterArea(); break; case 12: - R2_GLOBALS._v566A6 += 5; - if (R2_GLOBALS._v566A6 > 3815) - R2_GLOBALS._v566A6 = 3800; + R2_GLOBALS._maze3800SceneNumb += 5; + if (R2_GLOBALS._maze3800SceneNumb > 3815) + R2_GLOBALS._maze3800SceneNumb = 3800; initExits(); enterArea(); break; case 13: - R2_GLOBALS._v566A6 -= 15; - if (R2_GLOBALS._v566A6 < 3800) - R2_GLOBALS._v566A6 += 20; + R2_GLOBALS._maze3800SceneNumb -= 15; + if (R2_GLOBALS._maze3800SceneNumb < 3800) + R2_GLOBALS._maze3800SceneNumb += 20; initExits(); enterArea(); break; case 14: - R2_GLOBALS._v566A6 -= 5; - if (R2_GLOBALS._v566A6 < 3800) - R2_GLOBALS._v566A6 = 3815; + R2_GLOBALS._maze3800SceneNumb -= 5; + if (R2_GLOBALS._maze3800SceneNumb < 3800) + R2_GLOBALS._maze3800SceneNumb = 3815; initExits(); enterArea(); break; -- cgit v1.2.3