diff options
-rw-r--r-- | scumm/intern.h | 2 | ||||
-rw-r--r-- | scumm/script_v100he.cpp | 4 | ||||
-rw-r--r-- | scumm/script_v72he.cpp | 12 | ||||
-rw-r--r-- | scumm/script_v80he.cpp | 2 | ||||
-rw-r--r-- | scumm/script_v90he.cpp | 2 |
5 files changed, 11 insertions, 11 deletions
diff --git a/scumm/intern.h b/scumm/intern.h index 994fcef753..a07fb65dbe 100644 --- a/scumm/intern.h +++ b/scumm/intern.h @@ -836,7 +836,7 @@ protected: /* HE version 72 script opcodes */ void o72_pushDWord(); - void o72_addMessageToStack(); + void o72_getScriptString(); void o72_isAnyOf(); void o72_resetCutscene(); void o72_findObjectWithClassOf(); diff --git a/scumm/script_v100he.cpp b/scumm/script_v100he.cpp index 824ee9570c..507df92bab 100644 --- a/scumm/script_v100he.cpp +++ b/scumm/script_v100he.cpp @@ -159,7 +159,7 @@ void ScummEngine_v100he::setupOpcodes() { /* 5C */ OPCODE(o6_pushByte), OPCODE(o72_pushDWord), - OPCODE(o72_addMessageToStack), + OPCODE(o72_getScriptString), OPCODE(o6_pushWord), /* 60 */ OPCODE(o6_pushWordVar), @@ -487,7 +487,7 @@ void ScummEngine_v100he::o100_actorOps() { int slot = pop(); int len = resStrLen(string) + 1; - addMessageToStack(string, a->_heTalkQueue[slot].sentence, len); + memcpy(a->_heTalkQueue[slot].sentence, string, len); a->_heTalkQueue[slot].posX = a->_talkPosX; a->_heTalkQueue[slot].posY = a->_talkPosY; diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp index 4a25f7dcfe..cd07a50965 100644 --- a/scumm/script_v72he.cpp +++ b/scumm/script_v72he.cpp @@ -49,7 +49,7 @@ void ScummEngine_v72he::setupOpcodes() { OPCODE(o72_pushDWord), OPCODE(o6_pushWordVar), /* 04 */ - OPCODE(o72_addMessageToStack), + OPCODE(o72_getScriptString), OPCODE(o6_invalid), OPCODE(o6_invalid), OPCODE(o6_wordArrayRead), @@ -610,9 +610,9 @@ void ScummEngine_v72he::decodeScriptString(byte *dst, bool scriptString) { // Get string if (scriptString) { - addMessageToStack(_scriptPointer, string, sizeof(string)); - len = resStrLen(_scriptPointer); - _scriptPointer += len + 1; + len = resStrLen(_scriptPointer) + 1; + memcpy(string, _scriptPointer, len); + _scriptPointer += len; } else { copyScriptString(string, sizeof(string)); len = resStrLen(string) + 1; @@ -776,7 +776,7 @@ void ScummEngine_v72he::o72_pushDWord() { push(a); } -void ScummEngine_v72he::o72_addMessageToStack() { +void ScummEngine_v72he::o72_getScriptString() { byte chr; while ((chr = fetchScriptByte()) != 0) { @@ -1305,7 +1305,7 @@ void ScummEngine_v72he::o72_actorOps() { int slot = pop(); int len = resStrLen(string) + 1; - addMessageToStack(string, a->_heTalkQueue[slot].sentence, len); + memcpy(a->_heTalkQueue[slot].sentence, string, len); a->_heTalkQueue[slot].posX = a->_talkPosX; a->_heTalkQueue[slot].posY = a->_talkPosY; diff --git a/scumm/script_v80he.cpp b/scumm/script_v80he.cpp index 293afc61e0..e9d620358b 100644 --- a/scumm/script_v80he.cpp +++ b/scumm/script_v80he.cpp @@ -49,7 +49,7 @@ void ScummEngine_v80he::setupOpcodes() { OPCODE(o72_pushDWord), OPCODE(o6_pushWordVar), /* 04 */ - OPCODE(o72_addMessageToStack), + OPCODE(o72_getScriptString), OPCODE(o6_invalid), OPCODE(o6_invalid), OPCODE(o6_wordArrayRead), diff --git a/scumm/script_v90he.cpp b/scumm/script_v90he.cpp index 3d1fc27341..13b7ae0a9f 100644 --- a/scumm/script_v90he.cpp +++ b/scumm/script_v90he.cpp @@ -47,7 +47,7 @@ void ScummEngine_v90he::setupOpcodes() { OPCODE(o72_pushDWord), OPCODE(o6_pushWordVar), /* 04 */ - OPCODE(o72_addMessageToStack), + OPCODE(o72_getScriptString), OPCODE(o6_invalid), OPCODE(o6_invalid), OPCODE(o6_wordArrayRead), |