diff options
author | Torbjörn Andersson | 2003-11-29 17:05:30 +0000 |
---|---|---|
committer | Torbjörn Andersson | 2003-11-29 17:05:30 +0000 |
commit | 67c75a35c66a2535b6f9e9fcc89f0e1aa5fef49b (patch) | |
tree | 81790c9a57579c709bb7af108a9d49297f9ac5a2 /sword2/mouse.cpp | |
parent | 9cca17b3beb681ac482e96331e7444ae851d1741 (diff) | |
download | scummvm-rg350-67c75a35c66a2535b6f9e9fcc89f0e1aa5fef49b.tar.gz scummvm-rg350-67c75a35c66a2535b6f9e9fcc89f0e1aa5fef49b.tar.bz2 scummvm-rg350-67c75a35c66a2535b6f9e9fcc89f0e1aa5fef49b.zip |
Clarified comment about the elevator script bug and added a workaround for
the dreaded Pyramid Bug.
svn-id: r11427
Diffstat (limited to 'sword2/mouse.cpp')
-rw-r--r-- | sword2/mouse.cpp | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/sword2/mouse.cpp b/sword2/mouse.cpp index 5cb6d784dd..852ba364c7 100644 --- a/sword2/mouse.cpp +++ b/sword2/mouse.cpp @@ -648,23 +648,18 @@ void Sword2Engine::normalMouse(void) { EXIT_FADING = 0; // WORKAROUND: Examining the lift while at the top of the - // pyramid causes the game to hang. It looks like a script - // bug to me: the script hides the mouse cursor, checks if the - // player pressed the left mouse button and, if not, jumps to - // an end of script instruction. + // pyramid causes the game to hang. // - // One idea would be to redirect the action to the elevator - // object at the bottom of the pyramid instead, but I don't - // know if that's a safe thing to do so for now I've disabled - // it. Maybe we could find a better workaround if we had a - // script decompiler... + // Actually, what happens is that the elevator's click handler + // (action script 2) disables the mouse cursor. Then it checks + // if the user clicked the left button, in which case it + // triggers the "going down" animation. // - // I'm checking the status of the left button rather than the - // right button because that's what I think the script does. + // If the user didn't click the left button, the script will + // terminate. With the mouse cursor still disabled. Ouch! if (_mouseTouching == 2773 && !LEFT_BUTTON) { - warning("Ignoring action to work around script bug at pyramid top"); - // _logic->setPlayerActionEvent(CUR_PLAYER_ID, 2737); + warning("Working around elevator script bug"); } else _logic->setPlayerActionEvent(CUR_PLAYER_ID, _mouseTouching); |