move some logic from TAStudioLuaLibrary to TAStudio

This commit is contained in:
adelikat 2020-11-29 12:13:12 -06:00
parent 592cedba1d
commit ceade5be5a
2 changed files with 15 additions and 5 deletions

View File

@ -398,12 +398,9 @@ namespace BizHawk.Client.EmuHawk
if (Engaged())
{
var branch = Tastudio.CurrentTasMovie.Branches.FirstOrDefault(b => b.Uuid.ToString() == branchId);
if (branch != null && frame < branch.InputLog.Count)
var controller = Tastudio.GetBranchInput(branchId, frame);
if (controller != null)
{
var controller = GlobalWin.MovieSession.GenerateMovieController();
controller.SetFromMnemonic(branch.InputLog[frame]);
foreach (var button in controller.Definition.BoolButtons)
{
table[button] = controller.IsPressed(button);

View File

@ -518,6 +518,19 @@ namespace BizHawk.Client.EmuHawk
public void SelectAllExternal() => SelectAllMenuItem_Click(null, null);
public void ReselectClipboardExternal() => ReselectClipboardMenuItem_Click(null, null);
public IMovieController GetBranchInput(string branchId, int frame)
{
var branch = CurrentTasMovie.Branches.FirstOrDefault(b => b.Uuid.ToString() == branchId);
if (branch == null || frame >= branch.InputLog.Count)
{
return null;
}
var controller = MovieSession.GenerateMovieController();
controller.SetFromMnemonic(branch.InputLog[frame]);
return controller;
}
private int? FirstNonEmptySelectedFrame
{
get