#8291 closed patch (outdated)
FOTAQ: Partial fix/hack for scroll timing
Reported by: | eriktorbjorn | Owned by: | joostp |
---|---|---|---|
Priority: | normal | Component: | Engine: Queen |
Version: | Keywords: | ||
Cc: | Game: | Flight of the Amazon Queen |
Description
When smoother scrolling was implemented in the FotAQ intro, it was done without any attempt at timing whatsoever. I don't know if the plan was to fix this later, or if it was just an oversight. Anyway, the result is that on a fast computer the scrolling is way too fast.
This patch attempts to fix the timing on the first two scrollings. I didn't do the third one since it's slightly more complicated, but the general idea would be the same. The timing right now is guesswork, so it may be wrong.
I didn't want to commit this since, apart from being incomplete, I don't like the way I access the get_msecs() and delay() functions.
Ticket imported from: #826960. Ticket imported from: patches/396.
Attachments (1)
Change History (8)
by , 21 years ago
Attachment: | fotaq_timing.diff added |
---|
comment:1 by , 21 years ago
Owner: | set to |
---|
comment:2 by , 21 years ago
Assigning to joostp since he's involved with the FotAQ engine, though maybe not this particular part of it. (I wanted to assign it to twogood, but that wasn't an option.)
comment:3 by , 21 years ago
The Queen engine should now use a timer instead of delaying, is the patch still needed?
comment:4 by , 21 years ago
I guess not, though it took me some time to figure out why it wasn't needed. (Display::update() waits for the timer, so now there is a delay in the scroll loop.) Closing...
comment:5 by , 21 years ago
Resolution: | → outdated |
---|---|
Status: | new → closed |
comment:6 by , 21 years ago
One thing I noticed though: It's not possible to quit ScummVM during the smooth scrolling, because waitForTimer() throws away any events that aren't handled by the backend itself.
I believe you can fix this by replacing
OSystem::Event event;
_system->delay_msecs(10); while (_system->poll_event(&event));
with
g_queen->delay(10);
But I haven't tested enough to know if there are any undesirable side-effects to this.
comment:7 by , 6 years ago
Component: | → Engine: Queen |
---|---|
Game: | → Flight of the Amazon Queen |
Patch against an October 20 CVS snapshot