aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/sequences_v2.cpp
diff options
context:
space:
mode:
authorFlorian Kagerer2008-03-20 20:36:36 +0000
committerFlorian Kagerer2008-03-20 20:36:36 +0000
commit2f7b59d3e289be6c9968aa5bad671b6987555108 (patch)
treeb4ca235a19306398943e4cd7ac8b447de237afe0 /engines/kyra/sequences_v2.cpp
parentcb22a83034c159e3f26f65a53164f8d913fe62e7 (diff)
downloadscummvm-rg350-2f7b59d3e289be6c9968aa5bad671b6987555108.tar.gz
scummvm-rg350-2f7b59d3e289be6c9968aa5bad671b6987555108.tar.bz2
scummvm-rg350-2f7b59d3e289be6c9968aa5bad671b6987555108.zip
- fix skip flags for non-playable demo
svn-id: r31207
Diffstat (limited to 'engines/kyra/sequences_v2.cpp')
-rw-r--r--engines/kyra/sequences_v2.cpp25
1 files changed, 15 insertions, 10 deletions
diff --git a/engines/kyra/sequences_v2.cpp b/engines/kyra/sequences_v2.cpp
index e7962354e0..f0688d6e3d 100644
--- a/engines/kyra/sequences_v2.cpp
+++ b/engines/kyra/sequences_v2.cpp
@@ -39,7 +39,7 @@ void KyraEngine_v2::seq_playSequences(int startSeq, int endSeq) {
debugC(9, kDebugLevelMain, "KyraEngine_v2::seq_playSequences(%i, %i)", startSeq, endSeq);
seq_init();
- bool allowSkip = (startSeq == kSequenceTitle) ? false : true;
+ bool allowSkip = (!(_flags.isDemo && !_flags.isTalkie) && (startSeq == kSequenceTitle)) ? false : true;
if (endSeq == -1)
endSeq = startSeq;
@@ -81,7 +81,7 @@ void KyraEngine_v2::seq_playSequences(int startSeq, int endSeq) {
_seqFrameCounter = 0;
_seqStartTime = _system->getMillis();
- allowSkip = (seqNum == 2) ? false : true;
+ allowSkip = (!(_flags.isDemo && !_flags.isTalkie) && (seqNum == kSequenceTitle)) ? false : true;
if (_sequences[seqNum].flags & 2) {
_screen->loadBitmap(_sequences[seqNum].cpsFile, 2, 2, _screen->getPalette(0));
@@ -280,15 +280,20 @@ void KyraEngine_v2::seq_playSequences(int startSeq, int endSeq) {
seq_sequenceCommand(_sequences[seqNum].finalCommand);
seq_resetAllTextEntries();
- if (_flags.isDemo && seqNum == kSequenceDemoFisher) {
- _abortIntroFlag = false;
- resetSkipFlag();
- seqNum = kSequenceDemoVirgin;
- } else if ((seqNum != kSequenceTitle && seqNum < kSequenceZanfaun &&
+
+ if (_flags.isDemo && !_flags.isTalkie) {
+ if (seqNum == kSequenceDemoFisher) {
+ _abortIntroFlag = false;
+ resetSkipFlag();
+ seqNum = kSequenceDemoVirgin;
+ }
+ } else {
+ if ((seqNum != kSequenceTitle && seqNum < kSequenceZanfaun &&
(_abortIntroFlag || skipFlag())) || seqNum == kSequenceZanfaun) {
- _abortIntroFlag = false;
- resetSkipFlag();
- seqNum = kSequenceWestwood;
+ _abortIntroFlag = false;
+ resetSkipFlag();
+ seqNum = kSequenceWestwood;
+ }
}
if (_menuChoice) {