diff options
Diffstat (limited to 'engines/gob/inter_v1.cpp')
-rw-r--r-- | engines/gob/inter_v1.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/gob/inter_v1.cpp b/engines/gob/inter_v1.cpp index cd3fab944d..64a3b811ea 100644 --- a/engines/gob/inter_v1.cpp +++ b/engines/gob/inter_v1.cpp @@ -1877,8 +1877,15 @@ bool Inter_v1::o1_loadSpriteContent(OpFuncParams ¶ms) { } bool Inter_v1::o1_copySprite(OpFuncParams ¶ms) { - _vm->_draw->_sourceSurface = load16(); - _vm->_draw->_destSurface = load16(); + if (_vm->_global->_inter_execPtr[1] == 0) + _vm->_draw->_sourceSurface = load16(); + else + _vm->_draw->_sourceSurface = _vm->_parse->parseValExpr(); + + if (_vm->_global->_inter_execPtr[1] == 0) + _vm->_draw->_destSurface = load16(); + else + _vm->_draw->_destSurface = _vm->_parse->parseValExpr(); _vm->_draw->_spriteLeft = _vm->_parse->parseValExpr(); _vm->_draw->_spriteTop = _vm->_parse->parseValExpr(); |