diff options
Diffstat (limited to 'engines/xeen/scripts.cpp')
-rw-r--r-- | engines/xeen/scripts.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/engines/xeen/scripts.cpp b/engines/xeen/scripts.cpp index 3422756a67..581b3e1b70 100644 --- a/engines/xeen/scripts.cpp +++ b/engines/xeen/scripts.cpp @@ -21,6 +21,7 @@ */ #include "common/config-manager.h" +#include "backends/audiocd/audiocd.h" #include "xeen/scripts.h" #include "xeen/dialogs/dialogs_copy_protection.h" #include "xeen/dialogs/dialogs_input.h" @@ -1466,7 +1467,14 @@ bool Scripts::cmdFlipWorld(ParamsIterator ¶ms) { return true; } -bool Scripts::cmdPlayCD(ParamsIterator ¶ms) { error("TODO"); } +bool Scripts::cmdPlayCD(ParamsIterator ¶ms) { + int trackNum = params.readByte(); + int start = params.readUint16LE(); + int finish = params.readUint16LE(); + + g_system->getAudioCDManager()->play(trackNum, 1, start, finish); + return true; +} void Scripts::doCloudsEnding() { g_vm->_party->_cloudsCompleted = true; |