Remove the ability to use rewind during movie record mode, and rip out all the hacks that made that work somewhat in the first place

This commit is contained in:
adelikat 2014-07-11 17:05:18 +00:00
parent f8ee569bbb
commit ac931f27f2
1 changed files with 2 additions and 23 deletions

View File

@ -2501,29 +2501,18 @@ namespace BizHawk.Client.EmuHawk
runFrame = true; runFrame = true;
} }
// TODO: mostly likely this will need to be whacked, if not then refactor if (Global.Rewinder.RewindActive && (Global.ClientControls["Rewind"] || PressRewind)
var returnToRecording = Global.MovieSession.Movie.IsRecording; && !Global.MovieSession.Movie.IsRecording) // Rewind isn't "bulletproof" and can desync a recoridng movie!
if (Global.Rewinder.RewindActive && (Global.ClientControls["Rewind"] || PressRewind))
{ {
Global.Rewinder.Rewind(1); Global.Rewinder.Rewind(1);
suppressCaptureRewind = true; suppressCaptureRewind = true;
runFrame = Global.Rewinder.Count != 0; runFrame = Global.Rewinder.Count != 0;
// we don't want to capture input when rewinding, even in record mode
if (Global.MovieSession.Movie.IsRecording)
{
Global.MovieSession.Movie.SwitchToPlay();
}
} }
if (UpdateFrame) if (UpdateFrame)
{ {
runFrame = true; runFrame = true;
if (Global.MovieSession.Movie.IsRecording)
{
Global.MovieSession.Movie.SwitchToPlay();
}
} }
var genSound = false; var genSound = false;
@ -2632,21 +2621,11 @@ namespace BizHawk.Client.EmuHawk
if (Global.ClientControls["Rewind"] || PressRewind) if (Global.ClientControls["Rewind"] || PressRewind)
{ {
UpdateToolsAfter(); UpdateToolsAfter();
if (returnToRecording)
{
Global.MovieSession.Movie.SwitchToRecord();
}
PressRewind = false; PressRewind = false;
} }
if (UpdateFrame) if (UpdateFrame)
{ {
if (returnToRecording)
{
Global.MovieSession.Movie.SwitchToRecord();
}
UpdateFrame = false; UpdateFrame = false;
} }