simplify some LogGenerator code
This commit is contained in:
parent
831621b864
commit
2b17c6d310
|
@ -44,8 +44,9 @@ namespace BizHawk.Client.Common
|
|||
{
|
||||
return string.Empty;
|
||||
}
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.MovieSession.Movie.GetInputState(frame));
|
||||
|
||||
var lg = Global.MovieSession.LogGeneratorInstance(
|
||||
Global.MovieSession.Movie.GetInputState(frame));
|
||||
return lg.GenerateLogEntry();
|
||||
}
|
||||
|
||||
|
|
|
@ -50,9 +50,11 @@ namespace BizHawk.Client.Common
|
|||
/// <summary>
|
||||
/// Simply shortens the verbosity necessary otherwise
|
||||
/// </summary>
|
||||
public ILogEntryGenerator LogGeneratorInstance()
|
||||
public ILogEntryGenerator LogGeneratorInstance(IController source)
|
||||
{
|
||||
return Movie.LogGeneratorInstance();
|
||||
var lg = Movie.LogGeneratorInstance();
|
||||
lg.SetSource(source);
|
||||
return lg;
|
||||
}
|
||||
|
||||
public IMovieController MovieControllerInstance()
|
||||
|
|
|
@ -30,7 +30,7 @@ namespace BizHawk.Client.Common
|
|||
bool CheckSavestateTimeline(TextReader reader);
|
||||
bool HandleMovieLoadState(TextReader reader);
|
||||
|
||||
ILogEntryGenerator LogGeneratorInstance();
|
||||
ILogEntryGenerator LogGeneratorInstance(IController source);
|
||||
|
||||
void QueueNewMovie(IMovie movie, bool record, IEmulator emulator);
|
||||
void RunQueuedMovie(bool recordMode);
|
||||
|
|
|
@ -188,30 +188,22 @@ namespace BizHawk.Client.EmuHawk
|
|||
|
||||
public string InputStrMovie()
|
||||
{
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.MovieSession.MovieControllerAdapter);
|
||||
|
||||
return lg.GenerateInputDisplay();
|
||||
return MakeStringFor(Global.MovieSession.MovieControllerAdapter);
|
||||
}
|
||||
|
||||
public string InputStrImmediate()
|
||||
{
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.InputManager.AutofireStickyXorAdapter);
|
||||
|
||||
return lg.GenerateInputDisplay();
|
||||
return MakeStringFor(Global.InputManager.AutofireStickyXorAdapter);
|
||||
}
|
||||
|
||||
public string InputPrevious()
|
||||
{
|
||||
if (Global.MovieSession.Movie.IsPlayingOrRecording())
|
||||
{
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
var state = Global.MovieSession.Movie.GetInputState(Global.Emulator.Frame - 1);
|
||||
if (state != null)
|
||||
{
|
||||
lg.SetSource(state);
|
||||
return lg.GenerateInputDisplay();
|
||||
return MakeStringFor(state);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -224,17 +216,12 @@ namespace BizHawk.Client.EmuHawk
|
|||
? Global.MovieSession.Movie.GetInputState(Global.Emulator.Frame - 1)
|
||||
: Global.MovieSession.MovieControllerInstance();
|
||||
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
|
||||
lg.SetSource(Global.InputManager.AutofireStickyXorAdapter.Or(m));
|
||||
return lg.GenerateInputDisplay();
|
||||
return MakeStringFor(Global.InputManager.AutofireStickyXorAdapter.Or(m));
|
||||
}
|
||||
|
||||
private string MakeStringFor(IController controller)
|
||||
{
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(controller);
|
||||
return lg.GenerateInputDisplay();
|
||||
return Global.MovieSession.LogGeneratorInstance(controller).GenerateInputDisplay();
|
||||
}
|
||||
|
||||
public string MakeIntersectImmediatePrevious()
|
||||
|
@ -245,9 +232,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
? Global.MovieSession.Movie.GetInputState(Global.Emulator.Frame - 1)
|
||||
: Global.MovieSession.MovieControllerInstance();
|
||||
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.InputManager.AutofireStickyXorAdapter.And(m));
|
||||
return lg.GenerateInputDisplay();
|
||||
return MakeStringFor(Global.InputManager.AutofireStickyXorAdapter.And(m));
|
||||
}
|
||||
|
||||
return "";
|
||||
|
|
|
@ -976,8 +976,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
UpdateBotStatusIcon();
|
||||
MessageLabel.Text = "Running...";
|
||||
_cachedControlProbabilities = ControlProbabilities;
|
||||
_logGenerator = Global.MovieSession.LogGeneratorInstance();
|
||||
_logGenerator.SetSource(Global.InputManager.ClickyVirtualPadController);
|
||||
_logGenerator = Global.MovieSession.LogGeneratorInstance(Global.InputManager.ClickyVirtualPadController);
|
||||
}
|
||||
|
||||
private string CanStart()
|
||||
|
|
|
@ -48,8 +48,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
s.Refresh();
|
||||
|
||||
// Update the selected zone's key
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.MovieSession.MovieControllerAdapter);
|
||||
var lg = Global.MovieSession.LogGeneratorInstance(Global.MovieSession.MovieControllerAdapter);
|
||||
string key = lg.GenerateLogKey();
|
||||
key = key.Replace("LogKey:", "").Replace("#", "");
|
||||
|
||||
|
|
|
@ -229,8 +229,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
// If the LogKey contains buttons/controls not accepted by the emulator,
|
||||
// tell the user and display the macro's controller name and player count
|
||||
_inputKey = readText[0];
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.MovieSession.MovieControllerAdapter);
|
||||
var lg = Global.MovieSession.LogGeneratorInstance(Global.MovieSession.MovieControllerAdapter);
|
||||
string key = lg.GenerateLogKey();
|
||||
key = key.Replace("LogKey:", "").Replace("#", "");
|
||||
key = key.Substring(0, key.Length - 1);
|
||||
|
|
|
@ -42,13 +42,6 @@ namespace BizHawk.Client.EmuHawk
|
|||
/// </summary>
|
||||
public int LastPositionFrame { get; private set; }
|
||||
|
||||
private Dictionary<string, string> GenerateColumnNames()
|
||||
{
|
||||
var lg = Global.MovieSession.LogGeneratorInstance();
|
||||
lg.SetSource(Global.MovieSession.MovieControllerAdapter);
|
||||
return lg.Map();
|
||||
}
|
||||
|
||||
[ConfigPersist]
|
||||
public TAStudioSettings Settings { get; set; }
|
||||
|
||||
|
@ -420,7 +413,10 @@ namespace BizHawk.Client.EmuHawk
|
|||
Rotatable = true
|
||||
});
|
||||
|
||||
var columnNames = GenerateColumnNames();
|
||||
var columnNames = Global.MovieSession
|
||||
.LogGeneratorInstance(Global.MovieSession.MovieControllerAdapter)
|
||||
.Map();
|
||||
|
||||
foreach (var kvp in columnNames)
|
||||
{
|
||||
ColumnType type;
|
||||
|
|
Loading…
Reference in New Issue