From 3897e6f5e06a0c92f9d4dfb6353964e7fde47342 Mon Sep 17 00:00:00 2001 From: strangerke Date: Tue, 19 Apr 2011 22:53:19 +0200 Subject: TSAGE: Fix blocking bug in scene 4100. That unlocks the infamous "Alcohol? Cool, get my daughter!" scene :P --- engines/tsage/ringworld_scenes5.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'engines/tsage') diff --git a/engines/tsage/ringworld_scenes5.cpp b/engines/tsage/ringworld_scenes5.cpp index a313a5a11f..325bcc0351 100644 --- a/engines/tsage/ringworld_scenes5.cpp +++ b/engines/tsage/ringworld_scenes5.cpp @@ -2364,7 +2364,8 @@ void Scene4100::Action3::signal() { scene->_stripManager.start(4505, this); break; case 2: - scene->setAction(&scene->_action2); + setAction(&scene->_action2, this); + break; case 3: scene->_stripManager.start(4510, this); break; @@ -2374,6 +2375,8 @@ void Scene4100::Action3::signal() { case 5: _globals->_sceneManager.changeScene(4150); break; + default: + break; } } @@ -2456,20 +2459,26 @@ void Scene4100::Hotspot1::doAction(int action) { Scene4100 *scene = (Scene4100 *)_globals->_sceneManager._scene; switch (action) { - case CURSOR_LOOK: - SceneItem::display2(4100, _globals->getFlag(42) ? 24 : 12); - break; case OBJECT_STUNNER: SceneItem::display2(4100, 16); break; + case OBJECT_ALE: + _globals->_player.disableControl(); + scene->setAction(&scene->_action3); + break; + case CURSOR_LOOK: + SceneItem::display2(4100, _globals->getFlag(42) ? 24 : 12); + break; case CURSOR_USE: SceneItem::display2(4100, 22); break; case CURSOR_TALK: if (_globals->_inventory._peg._sceneNumber == 1) { _globals->_player.disableControl(); + scene->_sceneMode = 4109; scene->setAction(&scene->_sequenceManager, scene, 4109, NULL); } else if (_globals->getFlag(42)) { + scene->_sceneMode = 4102; scene->setAction(&scene->_sequenceManager, scene, 4102, NULL); } else { if (_globals->getFlag(33)) -- cgit v1.2.3