diff options
Diffstat (limited to 'scumm/script.cpp')
-rw-r--r-- | scumm/script.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/scumm/script.cpp b/scumm/script.cpp index f2562fef52..a3dee09d69 100644 --- a/scumm/script.cpp +++ b/scumm/script.cpp @@ -495,6 +495,22 @@ int ScummEngine::fetchScriptWordSigned() { return (int16)fetchScriptWord(); } +uint ScummEngine::fetchScriptDWord() { + int a; + if (*_lastCodePtr + sizeof(MemBlkHeader) != _scriptOrgPointer) { + uint32 oldoffs = _scriptPointer - _scriptOrgPointer; + getScriptBaseAddress(); + _scriptPointer = _scriptOrgPointer + oldoffs; + } + a = READ_LE_UINT32(_scriptPointer); + _scriptPointer += 4; + return a; +} + +int ScummEngine::fetchScriptDWordSigned() { + return (int32)fetchScriptDWord(); +} + int ScummEngine::readVar(uint var) { int a; |