TAStudio: Fix some bugs in new from menues
This commit is contained in:
parent
9696a75839
commit
2bddf3663e
|
@ -126,7 +126,17 @@ namespace BizHawk.Client.Common.MovieConversionExtensions
|
|||
|
||||
public static TasMovie ConvertToSavestateAnchoredMovie(this TasMovie old, int frame, byte[] savestate)
|
||||
{
|
||||
string newFilename = old.Filename + "." + TasMovie.Extension;
|
||||
string newFilename = old.Filename;
|
||||
|
||||
if (old.Filename.Contains("tasproj"))
|
||||
{
|
||||
newFilename = newFilename.Remove(newFilename.Length - 7, 7);
|
||||
newFilename = newFilename + "nfn." + TasMovie.Extension;
|
||||
}
|
||||
else
|
||||
{
|
||||
newFilename = old.Filename + "." + TasMovie.Extension;
|
||||
}
|
||||
|
||||
if (File.Exists(newFilename))
|
||||
{
|
||||
|
@ -201,7 +211,17 @@ namespace BizHawk.Client.Common.MovieConversionExtensions
|
|||
|
||||
public static TasMovie ConvertToSaveRamAnchoredMovie(this TasMovie old, byte[] saveRam)
|
||||
{
|
||||
string newFilename = old.Filename + "." + TasMovie.Extension;
|
||||
string newFilename = old.Filename;
|
||||
|
||||
if (old.Filename.Contains("tasproj"))
|
||||
{
|
||||
newFilename = newFilename.Remove(newFilename.Length - 7, 7);
|
||||
newFilename = newFilename + "nfsr." + TasMovie.Extension;
|
||||
}
|
||||
else
|
||||
{
|
||||
newFilename = old.Filename + "." + TasMovie.Extension;
|
||||
}
|
||||
|
||||
if (File.Exists(newFilename))
|
||||
{
|
||||
|
|
|
@ -384,7 +384,17 @@ namespace BizHawk.Client.Common
|
|||
{
|
||||
if (_states.Any())
|
||||
{
|
||||
StateManagerState power = _states.Values.First(s => s.Frame == 0);
|
||||
var temp_state = _states.Values;
|
||||
StateManagerState power = null;
|
||||
if (temp_state[0].Frame==0)
|
||||
{
|
||||
power = _states.Values.First(s => s.Frame == 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
power = _states.Values[0];
|
||||
}
|
||||
|
||||
_states.Clear();
|
||||
SetState(0, power.State);
|
||||
Used = (ulong)power.State.Length;
|
||||
|
|
|
@ -1453,14 +1453,20 @@ namespace BizHawk.Client.EmuHawk
|
|||
{
|
||||
if (AskSaveChanges())
|
||||
{
|
||||
int index = TasView.SelectedRows.First();
|
||||
GoToFrame(index);
|
||||
|
||||
TasMovie newProject = CurrentTasMovie.ConvertToSaveRamAnchoredMovie(
|
||||
SaveRamEmulator.CloneSaveRam());
|
||||
|
||||
Mainform.PauseEmulator();
|
||||
LoadFile(new FileInfo(newProject.Filename), true);
|
||||
if (SaveRamEmulator.CloneSaveRam() != null)
|
||||
{
|
||||
int index = 0;
|
||||
if (TasView.SelectedRows.Count() > 0) { index = TasView.SelectedRows.First(); }
|
||||
GoToFrame(index);
|
||||
TasMovie newProject = CurrentTasMovie.ConvertToSaveRamAnchoredMovie(
|
||||
SaveRamEmulator.CloneSaveRam());
|
||||
Mainform.PauseEmulator();
|
||||
LoadFile(new FileInfo(newProject.Filename), true);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception("No SaveRam");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue