From 1c89ba9ec566be432c2c1433885cc744f9c4ded9 Mon Sep 17 00:00:00 2001 From: adelikat Date: Fri, 29 Aug 2014 15:27:51 +0000 Subject: [PATCH] TAstudio - a better place to put autorestore logic, still a lot of brokenness though --- .../tools/TAStudio/TAStudio.ListView.cs | 6 ------ BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs | 8 ++++++++ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs index 4765947fc6..abf6f9e04a 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.ListView.cs @@ -216,12 +216,6 @@ namespace BizHawk.Client.EmuHawk GoToLastEmulatedFrameIfNecessary(TasView.CurrentCell.RowIndex.Value); TasView.Refresh(); - if (Global.Config.TAStudioAutoRestoreLastPosition) - { - GlobalWin.MainForm.UnpauseEmulator(); - GlobalWin.MainForm.PauseOnFrame = Global.Emulator.Frame; - } - _startBoolDrawColumn = buttonName; _boolPaintState = _currentTasMovie.BoolIsPressed(frame, buttonName); } diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs index 47b82fcb0d..acac5524eb 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs @@ -173,9 +173,17 @@ namespace BizHawk.Client.EmuHawk { if (frame != Global.Emulator.Frame) // Don't go to a frame if you are already on it! { + var restoreFrame = Global.Emulator.Frame; + if (frame <= _currentTasMovie.LastEmulatedFrame) { GoToFrame(frame); + + if (Global.Config.TAStudioAutoRestoreLastPosition) + { + GlobalWin.MainForm.UnpauseEmulator(); + GlobalWin.MainForm.PauseOnFrame = restoreFrame; + } } } }