mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-21 03:31:40 +00:00
SCUMM: Handle double-clicks in Mac Loom (bug #3588164)
Unlike the EGA DOS version, it doesn't seem to be the scripts that keep track of double-clicks. Instead, the engine sets a variable to indicate them. Unlike the DOS version, we don't check that the second click happens close enough on the screen to the first one. We could, but it seemed needlessly complicated.
This commit is contained in:
parent
1f712c64ff
commit
69cdccd962
1
NEWS
1
NEWS
@ -37,6 +37,7 @@ For a more comprehensive changelog of the latest experimental code, see:
|
||||
now uses the original instruments, rather than approximating them with
|
||||
General MIDI instruments, and should sound a lot closer to the original.
|
||||
- Added sound and music support for the Macintosh version of Loom.
|
||||
- Handle double-clicking in the Macintosh version of Loom.
|
||||
|
||||
1.5.0 (2012-07-27)
|
||||
New Games:
|
||||
|
@ -1366,9 +1366,15 @@ void ScummEngine::runInputScript(int clickArea, int val, int mode) {
|
||||
|
||||
// Clicks are handled differently in Indy3 mac: param 2 of the
|
||||
// input script is set to 0 for normal clicks, and to 1 for double clicks.
|
||||
// The EGA DOS version of Loom also checks that the second click happens
|
||||
// close enough to the first one, but that seems like overkill.
|
||||
uint32 time = _system->getMillis();
|
||||
args[2] = (time < _lastInputScriptTime + 500); // 500 ms double click delay
|
||||
_lastInputScriptTime = time;
|
||||
} else if (_game.id == GID_LOOM && _game.platform == Common::kPlatformMacintosh) {
|
||||
uint32 time = _system->getMillis();
|
||||
VAR(52) = (time < _lastInputScriptTime + 500); // 500 ms double click delay
|
||||
_lastInputScriptTime = time;
|
||||
}
|
||||
|
||||
if (verbScript)
|
||||
|
Loading…
x
Reference in New Issue
Block a user