diff options
author | Sven Hesse | 2006-06-01 12:18:12 +0000 |
---|---|---|
committer | Sven Hesse | 2006-06-01 12:18:12 +0000 |
commit | 96d77f16b73925454c9204176c9e0e62839e9537 (patch) | |
tree | d550bdd1d303269cf55215170342916fce8afa97 /engines/gob/inter_v2.cpp | |
parent | d64ea1ad87066aae2fae5f06b70d7b0358b78af9 (diff) | |
download | scummvm-rg350-96d77f16b73925454c9204176c9e0e62839e9537.tar.gz scummvm-rg350-96d77f16b73925454c9204176c9e0e62839e9537.tar.bz2 scummvm-rg350-96d77f16b73925454c9204176c9e0e62839e9537.zip |
- Fixed drawing of sprite-parts based texts
- Removed misplaced Music::stopPlay() call
svn-id: r22816
Diffstat (limited to 'engines/gob/inter_v2.cpp')
-rw-r--r-- | engines/gob/inter_v2.cpp | 43 |
1 files changed, 40 insertions, 3 deletions
diff --git a/engines/gob/inter_v2.cpp b/engines/gob/inter_v2.cpp index c7f5692b54..77935eaefd 100644 --- a/engines/gob/inter_v2.cpp +++ b/engines/gob/inter_v2.cpp @@ -185,7 +185,7 @@ void Inter_v2::setupOpcodes(void) { {NULL, ""}, {NULL, ""}, /* 30 */ - OPCODE(o1_loadFontToSprite), + OPCODE(o2_loadFontToSprite), OPCODE(o1_freeFontToSprite), {NULL, ""}, {NULL, ""}, @@ -495,7 +495,7 @@ void Inter_v2::setupOpcodes(void) { /* 24 */ OPCODE(o1_putPixel), OPCODE(o2_goblinFunc), - OPCODE(o1_createSprite), + OPCODE(o2_createSprite), OPCODE(o2_freeSprite), /* 28 */ {NULL, ""}, @@ -519,7 +519,7 @@ void Inter_v2::setupOpcodes(void) { OPCODE(o1_setBackDelta), /* 38 */ OPCODE(o2_playSound), - OPCODE(o1_stopSound), + OPCODE(o2_stopSound), OPCODE(o2_loadSound), OPCODE(o1_freeSoundSlot), /* 3C */ @@ -919,6 +919,19 @@ int16 Inter_v2::loadSound(int16 search) { return slot; } +void Inter_v2::o2_loadFontToSprite(void) { + int16 i = load16(); + + _vm->_draw->_fontToSprite[i].sprite = *_vm->_global->_inter_execPtr; + _vm->_global->_inter_execPtr += 2; + _vm->_draw->_fontToSprite[i].base = *_vm->_global->_inter_execPtr; + _vm->_global->_inter_execPtr += 2; + _vm->_draw->_fontToSprite[i].width = *_vm->_global->_inter_execPtr; + _vm->_global->_inter_execPtr += 2; + _vm->_draw->_fontToSprite[i].height = *_vm->_global->_inter_execPtr; + _vm->_global->_inter_execPtr += 2; +} + void Inter_v2::o2_loadMapObjects(void) { _vm->_map->loadMapObjects(0); } @@ -1065,6 +1078,30 @@ void Inter_v2::loadMult(void) { } } +bool Inter_v2::o2_stopSound(char &cmdCount, int16 &counter, int16 &retFlag) { + _vm->_snd->stopSound(_vm->_parse->parseValExpr()); + _soundEndTimeKey = 0; + return false; +} + +bool Inter_v2::o2_createSprite(char &cmdCount, int16 &counter, int16 &retFlag) { + int16 index; + int16 height; + int16 width; + int16 flag; + + index = load16(); + width = load16(); + height = load16(); + + _vm->_draw->adjustCoords(0, &width, &height); + + flag = load16(); + + _vm->_draw->initBigSprite(index, width, height, flag); + return false; +} + bool Inter_v2::o2_animPalInit(char &cmdCount, int16 &counter, int16 &retFlag) { int16 index; |