From 06d95c0d2a20efc7c15c6ffaab69901e51654fd5 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Thu, 3 Oct 2013 22:50:40 -0400 Subject: TSAGE: Fixes for R2R Bridge conversation --- engines/tsage/ringworld2/ringworld2_speakers.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'engines/tsage') diff --git a/engines/tsage/ringworld2/ringworld2_speakers.cpp b/engines/tsage/ringworld2/ringworld2_speakers.cpp index 3091086980..a43938230e 100644 --- a/engines/tsage/ringworld2/ringworld2_speakers.cpp +++ b/engines/tsage/ringworld2/ringworld2_speakers.cpp @@ -44,6 +44,10 @@ VisualSpeaker::VisualSpeaker(): Speaker() { } void VisualSpeaker::remove() { + _numFrames = 0; + _delayAmount = 0; + R2_GLOBALS._playStream.stop(); + if (_object2) { if (_fieldF8) { _fieldF8 = 0; @@ -1176,7 +1180,7 @@ void SpeakerQuinn300::proc15() { int v = _speakerMode; if (!_object2) { - if (R2_GLOBALS._player._characterIndex == R2_MIRANDA) { + if (R2_GLOBALS._player._characterIndex == R2_QUINN) { _object2 = &R2_GLOBALS._player; } else { assert(R2_GLOBALS._sceneManager._sceneNumber == 300); @@ -1187,9 +1191,6 @@ void SpeakerQuinn300::proc15() { _object2->hide(); _object1.postInit(); _object1.setPosition(_object2->_position); - - if (_object2->_mover) - _object2->addMover(NULL); } if (v == 0) { @@ -1205,7 +1206,7 @@ void SpeakerQuinn300::proc15() { ((SceneItem *)_action)->_sceneRegionId = 0; switch (_object2->_visage) { - case 10: + case 10: _object1.setup((v - 1) / 4 + 4010, ((v - ((v - 1) / 4 * 4) - 1) % 8) * 2 + 1, 1); break; case 302: @@ -1214,6 +1215,8 @@ void SpeakerQuinn300::proc15() { case 308: _object1.setup(308, 5, 1); break; + default: + break; } _object1.animate(ANIM_MODE_5, this); -- cgit v1.2.3