diff options
author | strangerke | 2011-04-22 23:12:31 +0200 |
---|---|---|
committer | strangerke | 2011-04-22 23:12:31 +0200 |
commit | 8fd3c688d12d71837f4a4676e21e65b45a9fda07 (patch) | |
tree | 7cfbdfd04b8aa2fb64b684e8094a038247640425 /engines | |
parent | 4a7360d29be53dc8ab4ccd2cd8f508cd21ed1c7c (diff) | |
download | scummvm-rg350-8fd3c688d12d71837f4a4676e21e65b45a9fda07.tar.gz scummvm-rg350-8fd3c688d12d71837f4a4676e21e65b45a9fda07.tar.bz2 scummvm-rg350-8fd3c688d12d71837f4a4676e21e65b45a9fda07.zip |
TSAGE: Fix an inventory bug (ale)
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tsage/ringworld_scenes5.cpp | 40 | ||||
-rw-r--r-- | engines/tsage/ringworld_scenes5.h | 2 |
2 files changed, 22 insertions, 20 deletions
diff --git a/engines/tsage/ringworld_scenes5.cpp b/engines/tsage/ringworld_scenes5.cpp index 8222eb7e1a..2655fd3ee7 100644 --- a/engines/tsage/ringworld_scenes5.cpp +++ b/engines/tsage/ringworld_scenes5.cpp @@ -284,9 +284,9 @@ void Scene4000::Action6::signal() { ADD_MOVER_NULL(scene->_guardRock, 292, 138); ADD_PLAYER_MOVER(283, 147); - if (!_globals->getFlag(36)) { + if (!_globals->getFlag(36)) ADD_PLAYER_MOVER_NULL(scene->_miranda, 280, 150); - } + _globals->_inventory._ale._sceneNumber = 4100; break; case 5: _globals->_sceneManager.changeScene(4100); @@ -416,7 +416,7 @@ void Scene4000::Action11::signal() { break; case 5: scene->_soundHandler1.proc3(); - scene->_hotspot11.remove(); + scene->_forceField.remove(); ADD_MOVER(_globals->_player, 340, 163); ADD_MOVER_NULL(scene->_miranda, 340, 169); @@ -756,7 +756,7 @@ void Scene4000::Hotspot23::doAction(int action) { /*--------------------------------------------------------------------------*/ Scene4000::Scene4000() : - _hotspot11(0, CURSOR_LOOK, 4000, 14, CURSOR_USE, 4000, 32, OBJECT_STUNNER, 4000, 33, + _forceField(0, CURSOR_LOOK, 4000, 14, CURSOR_USE, 4000, 32, OBJECT_STUNNER, 4000, 33, OBJECT_SCANNER, 4000, 19, LIST_END), _hotspot19(0, CURSOR_LOOK, 4000, 7, LIST_END), _hotspot20(0, CURSOR_LOOK, 4000, 3, LIST_END), @@ -793,7 +793,7 @@ void Scene4000::postInit(SceneObjectList *OwnerList) { _speakerQText._npc = &_globals->_player; _hotspot13.setBounds(Rect(263, 41, 278, 55)); - _hotspot14.setBounds(Rect(140, 177, 140 /*96*/, 204)); + _hotspot14.setBounds(Rect(96 /*140*/, 177, 140 /*96*/, 204)); _hotspot15.setBounds(Rect(227, 101, 264, 143)); _hotspot16.setBounds(Rect(306, 100, 319, 148)); _hotspot17.setBounds(Rect(231, 53, 254, 60)); @@ -844,14 +844,14 @@ void Scene4000::postInit(SceneObjectList *OwnerList) { if (_globals->getFlag(34)) { _soundHandler1.startSound(156); - _hotspot11.postInit(); - _hotspot11.setVisage(4000); - _hotspot11.setStrip(4); - _hotspot11.setPosition(Common::Point(312, 174)); - _hotspot11.setPriority2(200); - _hotspot11.animate(ANIM_MODE_8, 0, NULL); + _forceField.postInit(); + _forceField.setVisage(4000); + _forceField.setStrip(4); + _forceField.setPosition(Common::Point(312, 174)); + _forceField.setPriority2(200); + _forceField.animate(ANIM_MODE_8, 0, NULL); - _globals->_sceneItems.push_back(&_hotspot11); + _globals->_sceneItems.push_back(&_forceField); } _globals->_player.postInit(); @@ -860,6 +860,7 @@ void Scene4000::postInit(SceneObjectList *OwnerList) { _globals->_player.setObjectWrapper(new SceneObjectWrapper()); _globals->_player.setPosition(Common::Point(-28, 86)); + warning("flag 36 & 43: %d %d", _globals->getFlag(36), _globals->getFlag(43)); if (!_globals->getFlag(36) && !_globals->getFlag(43)) { _miranda.postInit(); _miranda.setVisage(2701); @@ -936,7 +937,7 @@ void Scene4000::postInit(SceneObjectList *OwnerList) { if (_globals->_stripNum == 4025) { _soundHandler1.startSound(182); - _hotspot11.remove(); + _forceField.remove(); _hotspot5.postInit(); _hotspot5.setVisage(2801); @@ -1076,12 +1077,12 @@ void Scene4000::postInit(SceneObjectList *OwnerList) { _soundHandler1.startSound(156); - _hotspot11.postInit(); - _hotspot11.setVisage(4000); - _hotspot11.setStrip(4); - _hotspot11.setPosition(Common::Point(312, 174)); - _hotspot11.setPriority2(200); - _hotspot11.animate(ANIM_MODE_8, 0, NULL); + _forceField.postInit(); + _forceField.setVisage(4000); + _forceField.setStrip(4); + _forceField.setPosition(Common::Point(312, 174)); + _forceField.setPriority2(200); + _forceField.animate(ANIM_MODE_8, 0, NULL); } else { if (!_globals->getFlag(37)) { _hotspot2.postInit(); @@ -2382,6 +2383,7 @@ void Scene4100::Action3::signal() { } void Scene4100::Action4::signal() { + // Rock getting drunk Scene4100 *scene = (Scene4100 *)_globals->_sceneManager._scene; switch (_actionIndex++) { diff --git a/engines/tsage/ringworld_scenes5.h b/engines/tsage/ringworld_scenes5.h index ee943a847f..e3d1ae08b5 100644 --- a/engines/tsage/ringworld_scenes5.h +++ b/engines/tsage/ringworld_scenes5.h @@ -156,7 +156,7 @@ public: Hotspot8 _hotspot8; GuardRock _guardRock; Ladder _ladder; - DisplayHotspot _hotspot11; + DisplayHotspot _forceField; TheTech _theTech; Hotspot13 _hotspot13; Hotspot _hotspot14, _hotspot15, _hotspot16; |