aboutsummaryrefslogtreecommitdiff
path: root/engines/igor/parts/part_36.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/igor/parts/part_36.cpp')
-rw-r--r--engines/igor/parts/part_36.cpp22
1 files changed, 6 insertions, 16 deletions
diff --git a/engines/igor/parts/part_36.cpp b/engines/igor/parts/part_36.cpp
index 1973bf9101..261ddeb8f7 100644
--- a/engines/igor/parts/part_36.cpp
+++ b/engines/igor/parts/part_36.cpp
@@ -105,6 +105,9 @@ void IgorEngine::PART_36_ACTION_102() {
addObjectToInventory(30, 65);
_objectsState[88] = 1;
PART_36_HELPER_1(255);
+ if (_gameVersion == kIdEngDemo110) {
+ ++_demoActionsCounter;
+ }
}
void IgorEngine::PART_36_HELPER_1(int num) {
@@ -153,24 +156,11 @@ void IgorEngine::PART_36() {
_currentAction.verb = kVerbWalk;
fadeInPalette(768);
PART_36_HELPER_2();
- showCursor();
- _gameState.igorMoving = false;
+ enterPartLoop();
while (_currentPart == 360) {
- 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);
}