From 2e71a9ab933c8059dd2ddea98a9f87655cef2508 Mon Sep 17 00:00:00 2001 From: "andres.delikat" Date: Sun, 22 May 2011 13:29:32 +0000 Subject: [PATCH] If movie is in Movie Finished mode and rewound, go back to playback mode --- BizHawk.MultiClient/MainForm.cs | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/BizHawk.MultiClient/MainForm.cs b/BizHawk.MultiClient/MainForm.cs index 69a68087b1..1f2649536b 100644 --- a/BizHawk.MultiClient/MainForm.cs +++ b/BizHawk.MultiClient/MainForm.cs @@ -1085,16 +1085,24 @@ namespace BizHawk.MultiClient else if (!Global.Config.MuteFrameAdvance) genSound = true; - if (MovieActive()) + if (UserMovie.GetMovieMode() == MOVIEMODE.PLAY) { - Movie m = GetActiveMovie(); - if (m.GetMovieLength() == Global.Emulator.Frame && m.GetMovieMode() == MOVIEMODE.PLAY) + if (UserMovie.GetMovieLength() == Global.Emulator.Frame) { - m.SetMovieFinished(); + UserMovie.SetMovieFinished(); Global.ActiveController.MovieMode = false; } - if (m.GetMovieMode() == MOVIEMODE.PLAY) - Global.ActiveController.SetControllersAsMnemonic(m.GetInputFrame(Global.Emulator.Frame) + 1); + else + Global.ActiveController.SetControllersAsMnemonic(UserMovie.GetInputFrame(Global.Emulator.Frame) + 1); + } + + if (UserMovie.GetMovieMode() == MOVIEMODE.FINISHED) + { + if (UserMovie.GetMovieLength() > Global.Emulator.Frame) + { + UserMovie.StartPlayback(); + Global.ActiveController.SetControllersAsMnemonic(UserMovie.GetInputFrame(Global.Emulator.Frame) + 1); + } } Global.Emulator.FrameAdvance(!throttle.skipnextframe); RamWatch1.UpdateValues();