N64: Plugin settings from the movie header are now loaded into HeaderParams. There is also code to parse these settings, but it is commented out for now

This commit is contained in:
pjgat09 2013-05-27 20:25:06 +00:00
parent 8dc13f5216
commit a43645a87b
3 changed files with 71 additions and 4 deletions

View File

@ -3865,17 +3865,42 @@ namespace BizHawk.MultiClient
public VideoPluginSettings N64GenerateVideoSettings(GameInfo game)
{
VideoPluginSettings video_settings = new VideoPluginSettings(Global.Config.N64VidPlugin, Global.Config.N64VideoSizeX, Global.Config.N64VideoSizeY);
if (Global.Config.N64VidPlugin == "Rice")
string PluginToUse = "";
/*
if (Global.MovieSession.Movie.Header.HeaderParams[MovieHeader.PLATFORM] == "N64")
{
PluginToUse = Global.MovieSession.Movie.Header.HeaderParams[MovieHeader.VIDEOPLUGIN];
}
*/
if (PluginToUse == "")
{
PluginToUse = Global.Config.N64VidPlugin;
}
if (PluginToUse == "Rice")
{
Global.Config.RicePlugin.FillPerGameHacks(game);
video_settings.Parameters = Global.Config.RicePlugin.GetPluginSettings();
}
else if (Global.Config.N64VidPlugin == "Glide64")
else if (PluginToUse == "Glide64")
{
Global.Config.GlidePlugin.FillPerGameHacks(game);
video_settings.Parameters = Global.Config.GlidePlugin.GetPluginSettings();
}
/*
if (Global.MovieSession.Movie.Header.HeaderParams[MovieHeader.PLATFORM] == "N64")
{
List<string> settings = new List<string>(video_settings.Parameters.Keys);
foreach (string setting in settings)
{
if (Global.MovieSession.Movie.Header.HeaderParams.ContainsKey(setting))
{
video_settings.Parameters[setting] = Global.MovieSession.Movie.Header.HeaderParams[setting];
}
}
}
*/
return video_settings;
}

View File

@ -121,6 +121,14 @@ namespace BizHawk.MultiClient
MovieToRecord.Header.SetHeaderLine(setting.Key, setting.Value.ToString());
}
}
else if (Global.Config.N64VidPlugin == "Glide64")
{
var glide_settings = Global.Config.GlidePlugin.GetPluginSettings();
foreach (var setting in glide_settings)
{
MovieToRecord.Header.SetHeaderLine(setting.Key, setting.Value.ToString());
}
}
}
if (StartFromCombo.SelectedItem.ToString() == "Now")

View File

@ -221,7 +221,41 @@ namespace BizHawk.MultiClient
return false;
}
else
Comments.Add(line);
{
if (HeaderParams[PLATFORM] == "N64")
{
if (HeaderParams[VIDEOPLUGIN] == "Rice")
{
ICollection<string> settings = Global.Config.RicePlugin.GetPluginSettings().Keys;
foreach (string setting in settings)
{
if (line.Contains(setting))
{
line = ParseHeader(line, setting);
AddHeaderLine(setting, line);
break;
}
}
}
else if (HeaderParams[VIDEOPLUGIN] == "Glide64")
{
ICollection<string> settings = Global.Config.GlidePlugin.GetPluginSettings().Keys;
foreach (string setting in settings)
{
if (line.Contains(setting))
{
line = ParseHeader(line, setting);
AddHeaderLine(setting, line);
break;
}
}
}
}
else
{
Comments.Add(line);
}
}
return true;
}