fix pause at end of movie when playing a tasproj without tastudio
old commits seem to suggest the IsPlayingOrFinished special logic was only intended for HandleFrameLoopForRecordMode. doing it otherwise causes issues with other end movie actions (e.g. if at pause at end of movie, it will just spam pause every time you unpause the movie). when in tastudio `Settings.MovieEndAction == MovieEndAction.Record` is always true, so this only affects playing tasprojs outside of tastudio
This commit is contained in:
parent
b48649a91b
commit
2350dddb69
|
@ -106,19 +106,14 @@ namespace BizHawk.Client.Common
|
|||
if (Movie is ITasMovie tasMovie)
|
||||
{
|
||||
tasMovie.GreenzoneCurrentFrame();
|
||||
if (tasMovie.IsPlayingOrFinished() && Movie.Emulator.Frame >= tasMovie.InputLogLength)
|
||||
if (tasMovie.IsPlayingOrFinished() && Settings.MovieEndAction == MovieEndAction.Record && Movie.Emulator.Frame >= tasMovie.InputLogLength)
|
||||
{
|
||||
if (Settings.MovieEndAction == MovieEndAction.Record)
|
||||
{
|
||||
HandleFrameLoopForRecordMode();
|
||||
}
|
||||
else
|
||||
{
|
||||
HandlePlaybackEnd();
|
||||
}
|
||||
HandleFrameLoopForRecordMode();
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if (Movie.IsPlaying() && Movie.Emulator.Frame >= Movie.InputLogLength)
|
||||
|
||||
if (Movie.IsPlaying() && Movie.Emulator.Frame >= Movie.InputLogLength)
|
||||
{
|
||||
HandlePlaybackEnd();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue