diff options
author | Eugene Sandulenko | 2017-03-08 18:37:16 +0100 |
---|---|---|
committer | Eugene Sandulenko | 2017-03-08 18:37:16 +0100 |
commit | 0a044b21df94b602c08c59fb757ce11f917ba873 (patch) | |
tree | 506e9c401eb014d7c2a0bddaa4a0b617dc52513d /engines/director | |
parent | 6a96a062c732963bcacfcdb3253e8f18bda80502 (diff) | |
download | scummvm-rg350-0a044b21df94b602c08c59fb757ce11f917ba873.tar.gz scummvm-rg350-0a044b21df94b602c08c59fb757ce11f917ba873.tar.bz2 scummvm-rg350-0a044b21df94b602c08c59fb757ce11f917ba873.zip |
DIRECTOR: Fix event mouse event processing in D3
Diffstat (limited to 'engines/director')
-rw-r--r-- | engines/director/score.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/engines/director/score.cpp b/engines/director/score.cpp index 112e4b2fcb..e8e8b81452 100644 --- a/engines/director/score.cpp +++ b/engines/director/score.cpp @@ -1012,9 +1012,11 @@ void Score::processEvents() { _lingo->processEvent(kEventMouseUp, kCastScript, _frames[_currentFrame]->_sprites[spriteId]->_castId); _lingo->processEvent(kEventMouseUp, kSpriteScript, _frames[_currentFrame]->_sprites[spriteId]->_scriptId); } else { - // D3 doesn't have cast member or sprite scripts. Just Frame Scripts. - _lingo->processEvent(kEventMouseUp, kSpriteScript, _frames[_currentFrame]->_sprites[spriteId]->_castId + 1024); - _lingo->processEvent(kEventMouseUp, kFrameScript, _frames[_currentFrame]->_sprites[spriteId]->_scriptId); + // Frame script overrides sprite script + if (!_frames[_currentFrame]->_sprites[spriteId]->_scriptId) + _lingo->processEvent(kEventMouseUp, kSpriteScript, _frames[_currentFrame]->_sprites[spriteId]->_castId + 1024); + else + _lingo->processEvent(kEventMouseUp, kFrameScript, _frames[_currentFrame]->_sprites[spriteId]->_scriptId); } } |