aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/mult_v2.cpp
diff options
context:
space:
mode:
authorSven Hesse2006-04-13 16:25:07 +0000
committerSven Hesse2006-04-13 16:25:07 +0000
commit07a0d5489158efb0b56ec22014f0da89e99d2cb7 (patch)
tree815325f1fd777a0a2290d8786fdf69ac1be383ca /engines/gob/mult_v2.cpp
parentc9555a5d54b96337a6e6d08919bdad1a4d94fde4 (diff)
downloadscummvm-rg350-07a0d5489158efb0b56ec22014f0da89e99d2cb7.tar.gz
scummvm-rg350-07a0d5489158efb0b56ec22014f0da89e99d2cb7.tar.bz2
scummvm-rg350-07a0d5489158efb0b56ec22014f0da89e99d2cb7.zip
- More stubs, the intro now works completely (with extreme graphical
glitches and without sound in the floppy version), the title screen is shown afterwards - Added skipping of the floppy version's copy protection screen, since the CD version doesn't show it either svn-id: r21845
Diffstat (limited to 'engines/gob/mult_v2.cpp')
-rw-r--r--engines/gob/mult_v2.cpp79
1 files changed, 78 insertions, 1 deletions
diff --git a/engines/gob/mult_v2.cpp b/engines/gob/mult_v2.cpp
index 000d7d02ce..921ba59451 100644
--- a/engines/gob/mult_v2.cpp
+++ b/engines/gob/mult_v2.cpp
@@ -1,4 +1,4 @@
- /* ScummVM - Scumm Interpreter
+/* ScummVM - Scumm Interpreter
* Copyright (C) 2004 Ivan Dubrov
* Copyright (C) 2004-2006 The ScummVM project
*
@@ -1141,4 +1141,81 @@ void Mult_v2::animate(void) {
}
}
+void Mult_v2::playSound(Snd::SoundDesc * soundDesc, int16 repCount, int16 freq,
+ int16 channel) {
+ warning("GOB2 Stub! Mult_v2::playSound()");
+// _vm->_snd->playSample(soundDesc, repCount, freq);
+}
+
+void Mult_v2::freeMultKeys(void) {
+ int i;
+ char animCount;
+ char staticCount;
+
+ warning("GOB2 Stub! Mult_v2::freeMultKeys()");
+
+ if (_multData2 == 0)
+ return;
+
+ return;
+
+ // loc_7323
+
+ staticCount = (_multData2->staticCount + 1) && 0x7F;
+ animCount = _multData2->animCount + 1;
+
+ for (i = 0; i < staticCount; i++) { // loc_7345
+ if (_multData2->staticLoaded[i] != 0)
+ _vm->_scenery->freeStatic(_multData2->staticIndices[i]);
+ }
+
+ for (i = 0; i < animCount; i++) { // loc_7377
+ if (_multData2->animLoaded[i] != 0)
+ _vm->_scenery->freeAnim(_multData2->animIndices[i]);
+ }
+
+ delete[] _multData2->staticKeys;
+
+ for (i = 0; i < 4; i++) { // loc_73BA
+ delete[] _multData2->animKeys[i];
+ if (_multData2->somepointer05[i] != 0)
+ delete[] _multData2->somepointer05[i];
+ }
+
+ delete[] _multData2->palFadeKeys;
+ delete[] _multData2->palKeys;
+ delete[] _multData2->textKeys;
+
+ for (i = 0; i < _multData2->sndSlotsCount; i++) { // loc_7448
+ if ((_multData2->sndSlot[i] & 0x8000) == 0)
+ _vm->_game->freeSoundSlot(_multData2->sndSlot[i]);
+ }
+
+ delete[] _multData2->sndKeys;
+ delete[] _multData2->fadePal;
+
+ if (_multData2->somepointer09 != 0)
+ delete[] _multData2->somepointer09;
+ if (_multData2->somepointer10 != 0)
+ delete[] _multData2->somepointer10;
+
+ if (_animDataAllocated != 0) {
+ freeMult();
+
+ delete[] _animArrayX;
+ _animArrayX = 0;
+
+ delete[] _animArrayY;
+ _animArrayY = 0;
+
+ delete[] _animArrayData;
+ _animArrayData = 0;
+
+ _animDataAllocated = 0;
+ }
+
+ delete _multData2;
+ _multData2 = 0;
+}
+
} // End of namespace Gob