diff options
author | Martin Kiewitz | 2010-01-17 20:17:00 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-01-17 20:17:00 +0000 |
commit | 35c2469c0bd6e6af75c5642f52efd6e014abf4f5 (patch) | |
tree | 2c39ea9a4f360e92023a4fd07a49d1dac5c9e763 /engines/sci/engine/kmisc.cpp | |
parent | 22ea4eb621b3b6f3267157368958af556b1ce68a (diff) | |
download | scummvm-rg350-35c2469c0bd6e6af75c5642f52efd6e014abf4f5.tar.gz scummvm-rg350-35c2469c0bd6e6af75c5642f52efd6e014abf4f5.tar.bz2 scummvm-rg350-35c2469c0bd6e6af75c5642f52efd6e014abf4f5.zip |
SCI: speed throttler - hardcoded exception for room 290/lsl3, should fix pushup count later in the game
svn-id: r47346
Diffstat (limited to 'engines/sci/engine/kmisc.cpp')
-rw-r--r-- | engines/sci/engine/kmisc.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/sci/engine/kmisc.cpp b/engines/sci/engine/kmisc.cpp index 7f1572d671..ef0e4d444c 100644 --- a/engines/sci/engine/kmisc.cpp +++ b/engines/sci/engine/kmisc.cpp @@ -56,9 +56,16 @@ reg_t kGameIsRestarting(EngineState *s, int argc, reg_t *argv) { s->restarting_flags &= ~SCI_GAME_WAS_RESTARTED; } - // Some games seem to get the duration of main loop initially and then switch of animations for the whole game - // based on that (qfg2, iceman). We are now running full speed initially to avoid that. + // LSL3 calculates a machinespeed variable during game startup (right after the filthy questions) + // This one would go through w/o throttling resulting in having to do 1000 pushups or something + // Another way of handling this would be delaying incrementing of "machineSpeed" selector + if (s->_gameId == "lsl3" && s->currentRoomNumber() == 290) + s->_throttleTrigger = true; + if (s->_throttleTrigger) { + // Some games seem to get the duration of main loop initially and then switch of animations for the whole game + // based on that (qfg2, iceman). We are now running full speed initially to avoid that. + // It seems like we dont need to do that anymore //if (s->_throttleCounter < 50) { // s->_throttleCounter++; // return s->r_acc; |