make rewind track the currently chosen speed%

This commit is contained in:
zeromus 2011-02-23 06:46:03 +00:00
parent 6ac8c1544a
commit 6f4b85146c
1 changed files with 13 additions and 3 deletions

View File

@ -30,6 +30,7 @@ namespace BizHawk.MultiClient
public bool EmulatorPaused; public bool EmulatorPaused;
bool runloop_frameadvance; bool runloop_frameadvance;
Throttle throttle = new Throttle(); Throttle throttle = new Throttle();
int rewindCredits;
//For handling automatic pausing when entering the menu //For handling automatic pausing when entering the menu
private bool wasPaused = false; private bool wasPaused = false;
@ -615,10 +616,19 @@ namespace BizHawk.MultiClient
if (/*Global.Config.RewindEnabled && */Global.ClientControls["Rewind"]) if (/*Global.Config.RewindEnabled && */Global.ClientControls["Rewind"])
{ {
Rewind(Global.ClientControls["Fast Forward"] ? 4 : 2); rewindCredits += Global.Config.SpeedPercent;
suppressCaptureRewind = true; int rewindTodo = rewindCredits / 100;
runFrame = true; if (rewindTodo >= 1)
{
rewindCredits -= 100 * rewindTodo;
Rewind(1 + rewindTodo);
suppressCaptureRewind = true;
runFrame = true;
}
else
runFrame = false;
} }
else rewindCredits = 0;
bool genSound = false; bool genSound = false;
if (runFrame) if (runFrame)