aboutsummaryrefslogtreecommitdiff
path: root/engines/igor/parts
diff options
context:
space:
mode:
Diffstat (limited to 'engines/igor/parts')
-rw-r--r--engines/igor/parts/part_90.cpp18
-rw-r--r--engines/igor/parts/part_main.cpp14
2 files changed, 21 insertions, 11 deletions
diff --git a/engines/igor/parts/part_90.cpp b/engines/igor/parts/part_90.cpp
index e5578fc18e..c069d5d34e 100644
--- a/engines/igor/parts/part_90.cpp
+++ b/engines/igor/parts/part_90.cpp
@@ -27,7 +27,9 @@
namespace Igor {
-static const char *STR_COPYRIGHT = "(C) 1995 Optik Software. All rights reserved.";
+static const char *STR_COPYRIGHT_1995 = "(C) 1995 Optik Software. All rights reserved.";
+
+static const char *STR_COPYRIGHT_1994 = "(C) 1994 PENDULO STUDIOS. All rights reserved.";
void IgorEngine::PART_90() {
memset(_currentPalette, 0, 768);
@@ -52,11 +54,11 @@ void IgorEngine::PART_90() {
case 904:
loadData(PAL_TitleScreen, _paletteBuffer);
loadData(IMG_TitleScreen, _screenVGA);
- drawString(_screenVGA, STR_COPYRIGHT, 2, 187, 0xF5, 0, 0);
+ drawString(_screenVGA, (_gameVersion == kIdEngDemo110) ? STR_COPYRIGHT_1994 : STR_COPYRIGHT_1995, 2, 187, 0xF5, 0, 0);
break;
}
fadeInPalette(768);
- while (!_inputVars[kInputEscape] && !_eventQuitGame) {
+ while (!_inputVars[kInputEscape]) {
waitForTimer();
if (_inputVars[kInputOptions]) {
_inputVars[kInputOptions] = 0;
@@ -66,10 +68,12 @@ void IgorEngine::PART_90() {
}
_inputVars[kInputEscape] = 0;
fadeOutPalette(768);
- if (_currentPart == 904) {
- _currentPart = 850;
- } else {
- ++_currentPart;
+ if (_currentPart != kInvalidPart) {
+ if (_currentPart == 904) {
+ _currentPart = 850;
+ } else {
+ ++_currentPart;
+ }
}
}
diff --git a/engines/igor/parts/part_main.cpp b/engines/igor/parts/part_main.cpp
index 0a6587f1e5..98c8f3bffb 100644
--- a/engines/igor/parts/part_main.cpp
+++ b/engines/igor/parts/part_main.cpp
@@ -929,9 +929,18 @@ void IgorEngine::PART_MAIN() {
case 904:
PART_90();
break;
+ case 950:
+ case 951:
+ case 952:
+ case 953:
+ case 954:
+ case 955:
+ case 956:
+ PART_95();
+ break;
default:
warning("PART_MAIN() Unhandled part %d", _currentPart);
- _currentPart = 255;
+ _currentPart = kInvalidPart;
break;
}
if (_currentPart >= 10) {
@@ -966,9 +975,6 @@ void IgorEngine::PART_MAIN() {
_gameState.nextMusicCounter = 0;
}
} while (_currentPart != 255 && !_eventQuitGame);
- for (_currentPart = 950; _currentPart <= 956 && !_eventQuitGame; ++_currentPart) {
- PART_95();
- }
}
} // namespace Igor