From a540a2fe8555dd1ad661e16b7b542df98355da88 Mon Sep 17 00:00:00 2001 From: adelikat Date: Sat, 23 May 2020 15:04:30 -0500 Subject: [PATCH] consolidate movie instantiation code more --- src/BizHawk.Client.Common/movie/MovieService.cs | 12 ++---------- .../movie/conversions/MovieConversionExtensions.cs | 3 +-- src/BizHawk.Client.Common/movie/tasproj/TasMovie.cs | 2 +- src/BizHawk.Client.EmuHawk/movie/RecordMovie.cs | 2 -- .../tools/TAStudio/TAStudio.cs | 4 ++-- 5 files changed, 6 insertions(+), 17 deletions(-) diff --git a/src/BizHawk.Client.Common/movie/MovieService.cs b/src/BizHawk.Client.Common/movie/MovieService.cs index b283cb0715..aca979861b 100644 --- a/src/BizHawk.Client.Common/movie/MovieService.cs +++ b/src/BizHawk.Client.Common/movie/MovieService.cs @@ -6,25 +6,17 @@ namespace BizHawk.Client.Common { public static class MovieService { - public static IMovie Get(string path) + public static IMovie Get(string path, bool startsFromSavestate = false) { // TODO: change IMovies to take HawkFiles only and not path if (Path.GetExtension(path)?.EndsWith("tasproj") ?? false) { - return new TasMovie(path); + return new TasMovie(path, startsFromSavestate); } return new Bk2Movie(path); } - /// - /// Creates a instance - /// - public static ITasMovie CreateTas(string filename, bool startsFromSavestate = false) - { - return new TasMovie(filename, startsFromSavestate); - } - public static string StandardMovieExtension => Bk2Movie.Extension; public static string TasMovieExtension => TasMovie.Extension; diff --git a/src/BizHawk.Client.Common/movie/conversions/MovieConversionExtensions.cs b/src/BizHawk.Client.Common/movie/conversions/MovieConversionExtensions.cs index e800ee7294..e1006a8609 100644 --- a/src/BizHawk.Client.Common/movie/conversions/MovieConversionExtensions.cs +++ b/src/BizHawk.Client.Common/movie/conversions/MovieConversionExtensions.cs @@ -230,7 +230,7 @@ namespace BizHawk.Client.Common.MovieConversionExtensions } } - var tas = new TasMovie(newFilename) { SaveRam = saveRam }; + var tas = new TasMovie(newFilename, false) { SaveRam = saveRam }; tas.TasStateManager.Clear(); tas.LagLog.Clear(); @@ -246,7 +246,6 @@ namespace BizHawk.Client.Common.MovieConversionExtensions } tas.StartsFromSaveRam = true; - tas.StartsFromSavestate = false; tas.SyncSettingsJson = old.SyncSettingsJson; tas.Comments.Clear(); diff --git a/src/BizHawk.Client.Common/movie/tasproj/TasMovie.cs b/src/BizHawk.Client.Common/movie/tasproj/TasMovie.cs index f64bc583fa..c6bd9dd5c1 100644 --- a/src/BizHawk.Client.Common/movie/tasproj/TasMovie.cs +++ b/src/BizHawk.Client.Common/movie/tasproj/TasMovie.cs @@ -13,7 +13,7 @@ namespace BizHawk.Client.Common public new const string Extension = "tasproj"; /// loaded core does not implement - internal TasMovie(string path, bool startsFromSavestate = false) : base(path) + internal TasMovie(string path, bool startsFromSavestate) : base(path) { if (!Global.Emulator.HasSavestates()) { diff --git a/src/BizHawk.Client.EmuHawk/movie/RecordMovie.cs b/src/BizHawk.Client.EmuHawk/movie/RecordMovie.cs index 75b96953f8..2fde4dd76d 100644 --- a/src/BizHawk.Client.EmuHawk/movie/RecordMovie.cs +++ b/src/BizHawk.Client.EmuHawk/movie/RecordMovie.cs @@ -105,7 +105,6 @@ namespace BizHawk.Client.EmuHawk var core = _emulator.AsStatable(); movieToRecord.StartsFromSavestate = true; - movieToRecord.StartsFromSaveRam = false; if (_config.SaveStateType == SaveStateTypeE.Binary) { @@ -128,7 +127,6 @@ namespace BizHawk.Client.EmuHawk else if (StartFromCombo.SelectedItem.ToString() == "SaveRam" && _emulator.HasSaveRam()) { var core = _emulator.AsSaveRam(); - movieToRecord.StartsFromSavestate = false; movieToRecord.StartsFromSaveRam = true; movieToRecord.SaveRam = core.CloneSaveRam(); } diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs index c9abcd1715..ae58e71d36 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs @@ -623,7 +623,7 @@ namespace BizHawk.Client.EmuHawk return false; } - var newMovie = MovieService.CreateTas(file.FullName, startsFromSavestate); + var newMovie = (ITasMovie)MovieService.Get(file.FullName, startsFromSavestate); newMovie.BindMarkersToInput = Settings.BindMarkersToInput; newMovie.TasStateManager.InvalidateCallback = GreenzoneInvalidated; @@ -678,7 +678,7 @@ namespace BizHawk.Client.EmuHawk } var filename = DefaultTasProjName(); // TODO don't do this, take over any mainform actions that can crash without a filename - var tasMovie = MovieService.CreateTas(filename); + var tasMovie = (ITasMovie)MovieService.Get(filename); tasMovie.BindMarkersToInput = Settings.BindMarkersToInput;