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:
CasualPokePlayer 2023-02-09 12:26:10 -08:00
parent b48649a91b
commit 2350dddb69
1 changed files with 5 additions and 10 deletions

View File

@ -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();
}