TAStudio - more stuff

This commit is contained in:
adelikat 2014-07-07 19:48:58 +00:00
parent 96b36cc230
commit 84b8fa36f2
3 changed files with 19 additions and 26 deletions

View File

@ -13,7 +13,11 @@ namespace BizHawk.Client.Common
{
base.RecordFrame(frame, source);
LagLog.RemoveRange(frame, LagLog.Count - frame);
if (frame < LagLog.Count)
{
LagLog.RemoveRange(frame, LagLog.Count - frame);
}
LagLog.Add(Global.Emulator.IsLagFrame);
StateManager.Invalidate(frame);

View File

@ -10,7 +10,7 @@ namespace BizHawk.Client.EmuHawk
{
partial class MainForm
{
public void StartNewMovie(IMovie movie, bool record, bool fromTastudio = false) //TasStudio flag is a hack for now
public void StartNewMovie(IMovie movie, bool record)
{
if (movie.SystemID != Global.Emulator.SystemId)
{
@ -20,7 +20,7 @@ namespace BizHawk.Client.EmuHawk
//If a movie is already loaded, save it before starting a new movie
if (!fromTastudio && Global.MovieSession.Movie.IsActive)
if (Global.MovieSession.Movie.IsActive)
{
Global.MovieSession.Movie.Save();
}
@ -80,10 +80,7 @@ namespace BizHawk.Client.EmuHawk
this._syncSettingsHack = null;
}
if (!fromTastudio)
{
Global.Config.RecentMovies.Add(movie.Filename);
}
Global.Config.RecentMovies.Add(movie.Filename);
if (Global.MovieSession.Movie.StartsFromSavestate)
{
@ -93,26 +90,18 @@ namespace BizHawk.Client.EmuHawk
Global.Emulator.LoadStateBinary(new BinaryReader(new MemoryStream(Global.MovieSession.Movie.BinarySavestate, false)));
}
if (!fromTastudio)
if (record)
{
if (record)
{
Global.MovieSession.Movie.StartNewRecording();
Global.MovieSession.ReadOnly = false;
}
else
{
Global.MovieSession.Movie.StartNewPlayback();
}
Global.MovieSession.Movie.StartNewRecording();
Global.MovieSession.ReadOnly = false;
}
else
{
Global.MovieSession.Movie.StartNewPlayback();
}
SetMainformMovieInfo();
if (!fromTastudio)
{
GlobalWin.Tools.Restart<TAStudio>();
}
GlobalWin.Tools.Restart<VirtualpadTool>();
GlobalWin.DisplayManager.NeedsToPaint = true;
}

View File

@ -212,17 +212,17 @@ namespace BizHawk.Client.EmuHawk
}
SetUpColumns();
//LoadConfigSettings();
LoadConfigSettings();
}
private void EngageTasStudio(TasMovie newMovie = null)
{
GlobalWin.OSD.AddMessage("TAStudio engaged");
Global.MovieSession.Movie = newMovie ?? new TasMovie();
_tas = Global.MovieSession.Movie as TasMovie;
_tas.StartNewRecording();
GlobalWin.MainForm.StartNewMovie(_tas, true, true);
GlobalWin.MainForm.StartNewMovie(_tas, record: true);
}
private void StartNewSession()
@ -231,7 +231,7 @@ namespace BizHawk.Client.EmuHawk
{
GlobalWin.OSD.AddMessage("new TAStudio session started");
_tas.StartNewRecording();
GlobalWin.MainForm.StartNewMovie(_tas, true, true);
GlobalWin.MainForm.StartNewMovie(_tas, record: true);
TasView.ItemCount = _tas.InputLogLength;
}
}