aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/mult_v2.cpp
diff options
context:
space:
mode:
authorSven Hesse2006-11-20 13:03:30 +0000
committerSven Hesse2006-11-20 13:03:30 +0000
commitc22920484a23210c47a6786d86b0eeca7f5859f2 (patch)
treeda7b93920e38ed4ee07c1a1af939a948c9084317 /engines/gob/mult_v2.cpp
parentd64d6bcb7e56404dc585c62edcf39861f102f05b (diff)
downloadscummvm-rg350-c22920484a23210c47a6786d86b0eeca7f5859f2.tar.gz
scummvm-rg350-c22920484a23210c47a6786d86b0eeca7f5859f2.tar.bz2
scummvm-rg350-c22920484a23210c47a6786d86b0eeca7f5859f2.zip
Changed the way sprites-freeing is handled, now the menu sprites and window decorations are drawn
svn-id: r24752
Diffstat (limited to 'engines/gob/mult_v2.cpp')
-rw-r--r--engines/gob/mult_v2.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/engines/gob/mult_v2.cpp b/engines/gob/mult_v2.cpp
index 89fc627445..20b61626e8 100644
--- a/engines/gob/mult_v2.cpp
+++ b/engines/gob/mult_v2.cpp
@@ -483,8 +483,11 @@ void Mult_v2::playMult(int16 startFrame, int16 endFrame, char checkEscape,
_vm->_anim->_animSurf->height = _vm->_anim->_areaHeight;
_vm->_anim->_animSurf->vidPtr +=
(_vm->_draw->_backSurface->width * _vm->_draw->_backSurface->height) / 2;
- } else
+ _vm->_draw->_spritesArray[22] = _vm->_anim->_animSurf;
+ } else {
_vm->_draw->initBigSprite(22, _vm->_anim->_areaWidth, _vm->_anim->_areaHeight, 0);
+ _vm->_anim->_animSurf = _vm->_draw->_spritesArray[22];
+ }
_vm->_draw->adjustCoords(1, &_vm->_anim->_areaWidth, &_vm->_anim->_areaHeight);
_vm->_draw->_sourceSurface = 21;
@@ -569,9 +572,9 @@ void Mult_v2::playMult(int16 startFrame, int16 endFrame, char checkEscape,
delete[] _orderArray;
_orderArray = 0;
- if (_vm->_anim->_animSurf)
- _vm->_video->freeSurfDesc(_vm->_anim->_animSurf);
+ _vm->_video->freeSurfDesc(_vm->_anim->_animSurf);
_vm->_anim->_animSurf = 0;
+ _vm->_draw->_spritesArray[22] = 0;
_animDataAllocated = 0;
}