aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sword2/anims.cpp4
-rw-r--r--sword2/driver/animation.cpp4
-rw-r--r--sword2/function.cpp2
3 files changed, 8 insertions, 2 deletions
diff --git a/sword2/anims.cpp b/sword2/anims.cpp
index 6614ce6e82..002b739a6d 100644
--- a/sword2/anims.cpp
+++ b/sword2/anims.cpp
@@ -621,6 +621,10 @@ int32 Logic::fnPlaySequence(int32 *params) {
// params: 0 pointer to null-terminated ascii filename
// 1 number of frames in the sequence, used for PSX.
+ // Only two sequences exist in demo
+ if ((_vm->_features & GF_DEMO) && params[0] != 3626 && params[0] != 3879846)
+ return IR_CONT;
+
char filename[30];
uint32 rv;
MovieTextObject *sequenceSpeechArray[MAX_SEQUENCE_TEXT_LINES + 1];
diff --git a/sword2/driver/animation.cpp b/sword2/driver/animation.cpp
index df5a3ad10a..dcdc74069c 100644
--- a/sword2/driver/animation.cpp
+++ b/sword2/driver/animation.cpp
@@ -428,7 +428,9 @@ MovieInfo MoviePlayer::_movies[] = {
{ "shaman", 788 },
{ "stone1", 34 },
{ "stone2", 282 },
- { "stone3", 65 }
+ { "stone3", 65 },
+ { "demo", 60 },
+ { "enddemo", 110 }
};
void MoviePlayer::openTextObject(MovieTextObject *obj) {
diff --git a/sword2/function.cpp b/sword2/function.cpp
index ea09e1de91..831411691c 100644
--- a/sword2/function.cpp
+++ b/sword2/function.cpp
@@ -398,7 +398,7 @@ int32 Logic::fnPlayCredits(int32 *params) {
if (DEMO) {
_vm->closeGame();
- return IR_CONT;
+ return IR_STOP;
}
// Prepare for the credits by fading down, stoping the music, etc.