tastudio: refactor out a variable
fix autorestore triggering while drawing on future frames
This commit is contained in:
parent
b90e4b9838
commit
bc990061b7
|
@ -146,8 +146,6 @@ namespace BizHawk.Client.Common
|
|||
{
|
||||
_lagLog.Clear();
|
||||
_wasLag.Clear();
|
||||
////if (br.BaseStream.Length > 0)
|
||||
////{ BaseStream.Length does not return the expected value.
|
||||
int formatVersion = br.ReadByte();
|
||||
if (formatVersion == 0)
|
||||
{
|
||||
|
@ -175,7 +173,6 @@ namespace BizHawk.Client.Common
|
|||
_wasLag.Add(br.ReadBoolean());
|
||||
}
|
||||
}
|
||||
////}
|
||||
}
|
||||
|
||||
public bool? History(int frame)
|
||||
|
@ -193,19 +190,6 @@ namespace BizHawk.Client.Common
|
|||
return null;
|
||||
}
|
||||
|
||||
public int LastValidFrame
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_lagLog.Count == 0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
return _lagLog.Count - 1;
|
||||
}
|
||||
}
|
||||
|
||||
public TasLagLog Clone()
|
||||
{
|
||||
return new TasLagLog
|
||||
|
|
|
@ -35,7 +35,7 @@ namespace BizHawk.Client.Common
|
|||
public TasLagLog TasLagLog => _lagLog;
|
||||
public IStringLog InputLog => Log;
|
||||
public int BranchCount => Branches.Count;
|
||||
public int LastValidFrame => _lagLog.LastValidFrame;
|
||||
public int LastStatedFrame => _stateManager.LastStatedFrame;
|
||||
public override string PreferredExtension => Extension;
|
||||
public TasStateManager TasStateManager => _stateManager;
|
||||
|
||||
|
@ -225,7 +225,9 @@ namespace BizHawk.Client.Common
|
|||
|
||||
public void GreenzoneCurrentFrame()
|
||||
{
|
||||
if (Global.Emulator.Frame > LastValidFrame)
|
||||
// todo: this isn't working quite right when autorestore is off and we're editing while seeking
|
||||
// but accounting for that requires access to Mainform.IsSeeking
|
||||
if (Global.Emulator.Frame > LastEditedFrame)
|
||||
{
|
||||
// emulated a new frame, current editing segment may change now. taseditor logic
|
||||
LastPositionStable = false;
|
||||
|
|
|
@ -66,9 +66,9 @@ namespace BizHawk.Client.EmuHawk
|
|||
|
||||
public void JumpToGreenzone()
|
||||
{
|
||||
if (Emulator.Frame > CurrentTasMovie.LastValidFrame)
|
||||
if (Emulator.Frame > CurrentTasMovie.LastEditedFrame)
|
||||
{
|
||||
GoToLastEmulatedFrameIfNecessary(CurrentTasMovie.LastValidFrame);
|
||||
GoToLastEmulatedFrameIfNecessary(CurrentTasMovie.LastEditedFrame);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1132,7 +1132,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
|
||||
if (!Settings.AutoRestoreOnMouseUpOnly)
|
||||
{
|
||||
_triggerAutoRestore = true;
|
||||
_triggerAutoRestore = startVal < Emulator.Frame && endVal < Emulator.Frame;
|
||||
DoTriggeredAutoRestoreIfNeeded();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -807,7 +807,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
|
||||
GoToFrame(0);
|
||||
int lastState = 0;
|
||||
int goToFrame = CurrentTasMovie.TasStateManager.LastStatedFrame;
|
||||
int goToFrame = CurrentTasMovie.LastStatedFrame;
|
||||
do
|
||||
{
|
||||
Mainform.FrameAdvance();
|
||||
|
|
Loading…
Reference in New Issue