From 798ce43e19f1f4ee5b95f4de291217bf25a342f9 Mon Sep 17 00:00:00 2001 From: Gregory Montoir Date: Sun, 25 Nov 2007 23:27:51 +0000 Subject: - enabled speech sounds - added end of demo check for demo 1.10 - simplified parts loop - populated strings table in IGOR.TBL - updated and packed charset data svn-id: r29641 --- engines/igor/parts/part_27.cpp | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) (limited to 'engines/igor/parts/part_27.cpp') diff --git a/engines/igor/parts/part_27.cpp b/engines/igor/parts/part_27.cpp index 5d06e946a8..59e0eb0411 100644 --- a/engines/igor/parts/part_27.cpp +++ b/engines/igor/parts/part_27.cpp @@ -173,6 +173,9 @@ void IgorEngine::PART_27_ACTION_108() { } addObjectToInventory(23, 58); PART_27_HELPER_1(1); + if (_gameVersion == kIdEngDemo110) { + ++_demoActionsCounter; + } } void IgorEngine::PART_27_ACTION_110() { @@ -193,6 +196,9 @@ void IgorEngine::PART_27_ACTION_110() { removeObjectFromInventory(55); PART_27_HELPER_1(255); _objectsState[107] = 1; + if (_gameVersion == kIdEngDemo110) { + ++_demoActionsCounter; + } } void IgorEngine::PART_27_HELPER_1(int num) { @@ -272,24 +278,11 @@ void IgorEngine::PART_27() { } else { PART_27_HELPER_5(); } - showCursor(); - _gameState.igorMoving = false; + enterPartLoop(); while (_currentPart == 270 || _currentPart == 271) { - handleRoomInput(); - if (compareGameTick(1, 16)) { - handleRoomIgorWalk(); - } - if (compareGameTick(19, 32)) { - handleRoomDialogue(); - } - if (compareGameTick(4, 8)) { - handleRoomInventoryScroll(); - } - if (compareGameTick(1)) { - handleRoomLight(); - } - waitForTimer(); + runPartLoop(); } + leavePartLoop(); fadeOutPalette(624); } -- cgit v1.2.3