aboutsummaryrefslogtreecommitdiff
path: root/engines/igor/parts/part_37.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/igor/parts/part_37.cpp')
-rw-r--r--engines/igor/parts/part_37.cpp22
1 files changed, 6 insertions, 16 deletions
diff --git a/engines/igor/parts/part_37.cpp b/engines/igor/parts/part_37.cpp
index ff2c2f74cf..5d2f7b03ac 100644
--- a/engines/igor/parts/part_37.cpp
+++ b/engines/igor/parts/part_37.cpp
@@ -82,6 +82,9 @@ void IgorEngine::PART_37_ACTION_102() {
addObjectToInventory(32, 67);
_objectsState[89] = 1;
PART_37_HELPER_1(255);
+ if (_gameVersion == kIdEngDemo110) {
+ ++_demoActionsCounter;
+ }
}
void IgorEngine::PART_37_HELPER_1(int num) {
@@ -115,24 +118,11 @@ void IgorEngine::PART_37() {
_currentAction.verb = kVerbWalk;
fadeInPalette(768);
PART_37_HELPER_2();
- showCursor();
- _gameState.igorMoving = false;
+ enterPartLoop();
while (_currentPart == 370) {
- 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);
}