aboutsummaryrefslogtreecommitdiff
path: root/engines/voyeur/files.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/voyeur/files.cpp')
-rw-r--r--engines/voyeur/files.cpp29
1 files changed, 27 insertions, 2 deletions
diff --git a/engines/voyeur/files.cpp b/engines/voyeur/files.cpp
index c8db3395f4..4f2cfbf6c3 100644
--- a/engines/voyeur/files.cpp
+++ b/engines/voyeur/files.cpp
@@ -1555,11 +1555,12 @@ void ThreadResource::parsePlayCommands() {
uint16 id = GET_WORD;
switch (id) {
- case 0:
+ case 1:
_vm->_playStamp2 = READ_LE_UINT16(dataP);
dataP += 2;
break;
- case 1:
+
+ case 2:
v2 = GET_WORD;
if (v2 == 0 || READ_LE_UINT16(_vm->_controlPtr->_ptr + 4) == 0) {
_vm->_eventsManager._videoComputerBut4 = READ_LE_UINT16(dataP);
@@ -1616,6 +1617,26 @@ void ThreadResource::parsePlayCommands() {
dataP += 6;
break;
+
+ case 3:
+ break;
+
+ case 4:
+ case 22:
+ _vm->_eventsManager._videoComputerBut4 = READ_LE_UINT16(dataP) - 1;
+ dataP += 2;
+
+ // TODO: Original had a block here that would never be executed
+
+ _vm->_voy._vocSecondsOffset = 0;
+ _vm->_voy._field468 = _vm->_voy._RTVNum;
+ _vm->_voy._field478 &= ~0x11;
+ _vm->playAVideo(_vm->_eventsManager._videoComputerBut4);
+ _vm->_voy._field478 |= 1;
+ _vm->_eventsManager._videoComputerBut4 = -1;
+ parseIndex = 999;
+ break;
+
default:
break;
}
@@ -1645,6 +1666,10 @@ void ThreadResource::addAudioEventStart() {
_vm->_eventsManager._videoDead));
}
+void ThreadResource::addAudioEventEnd() {
+ error("TODO: addAudioEventEnd");
+}
+
/*------------------------------------------------------------------------*/
PtrResource::PtrResource(BoltFilesState &state, const byte *src) {