diff options
author | Eugene Sandulenko | 2007-04-21 21:29:52 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2007-04-21 21:29:52 +0000 |
commit | 28e721836a959f0283c00aae49dcb0481091e387 (patch) | |
tree | 922c535aad6f353bd1b04a9f33aba24901a999c6 /engines | |
parent | b1e79b9253d17ff9ea6d996b4416569c658e9cc8 (diff) | |
download | scummvm-rg350-28e721836a959f0283c00aae49dcb0481091e387.tar.gz scummvm-rg350-28e721836a959f0283c00aae49dcb0481091e387.tar.bz2 scummvm-rg350-28e721836a959f0283c00aae49dcb0481091e387.zip |
Slighty modified patch #1704979: "Fix for #1690045: ITE: Item description missing"
svn-id: r26558
Diffstat (limited to 'engines')
-rw-r--r-- | engines/saga/script.cpp | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/engines/saga/script.cpp b/engines/saga/script.cpp index 7c203605ee..97804666d2 100644 --- a/engines/saga/script.cpp +++ b/engines/saga/script.cpp @@ -479,18 +479,21 @@ void Script::doVerb() { if (scriptEntrypointNumber > 0) { - event.type = kEvTOneshot; - event.code = kScriptEvent; - event.op = kEventExecNonBlocking; - event.time = 0; - event.param = scriptModuleNumber; - event.param2 = scriptEntrypointNumber; - event.param3 = _pendingVerb; // Action - event.param4 = _pendingObject[0]; // Object - event.param5 = _pendingObject[1]; // With Object - event.param6 = (objectType == kGameObjectActor) ? _pendingObject[0] : ID_PROTAG; // Actor - - _vm->_events->queue(&event); + // WORKAROUND: Fixes bug #1690045 "ITE: Item description missing / ScummVM crash" + if (!(_vm->_scene->currentSceneNumber() == 278 && (_pendingObject[0] == 16419 || _pendingObject[1] == 16419))) { + event.type = kEvTOneshot; + event.code = kScriptEvent; + event.op = kEventExecNonBlocking; + event.time = 0; + event.param = scriptModuleNumber; + event.param2 = scriptEntrypointNumber; + event.param3 = _pendingVerb; // Action + event.param4 = _pendingObject[0]; // Object + event.param5 = _pendingObject[1]; // With Object + event.param6 = (objectType == kGameObjectActor) ? _pendingObject[0] : ID_PROTAG; // Actor + + _vm->_events->queue(&event); + } } else { _vm->getExcuseInfo(_pendingVerb, excuseText, excuseSampleResourceId); |