diff options
author | Sven Hesse | 2006-04-13 16:25:07 +0000 |
---|---|---|
committer | Sven Hesse | 2006-04-13 16:25:07 +0000 |
commit | 07a0d5489158efb0b56ec22014f0da89e99d2cb7 (patch) | |
tree | 815325f1fd777a0a2290d8786fdf69ac1be383ca /engines/gob/mult_v2.cpp | |
parent | c9555a5d54b96337a6e6d08919bdad1a4d94fde4 (diff) | |
download | scummvm-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.cpp | 79 |
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 |