private void loadPresetXml()
{
if (!File.Exists(presetXmlFileName))
{
return;
}
var xdoc = XDocument.Load(presetXmlFileName);
var presetNodes = xdoc.Descendants("preset");
if (presetNodes.Count() == 0)
{
return;
}
presets = new Dictionary<string, SSPreset>();
foreach (var presetNode in presetNodes)
{
SSPreset preset = new SSPreset();
preset.dParams = new Dictionary<string, SSParam>();
preset.name = presetNode.Attribute("name").Value;
presets.Add(preset.name, preset);
var paramNodes = presetNode.Descendants("param");
foreach (var paramNode in paramNodes)
{
SSParam param = new SSParam();
param.id = paramNode.Attribute("id").Value;
preset.dParams.Add(param.id, param);
bool? enabled = (bool?)paramNode.Attribute("value");
if (enabled.HasValue && (bool)enabled)
{
param.enabled = true;
}
var valueNodes = paramNode.Descendants("value");
if (valueNodes.Count() > 0)
{
param.dValues = new Dictionary<string, float>();
foreach (var valueNode in valueNodes)
{
param.dValues.Add(valueNode.Attribute("prop_Name").Value, (float)valueNode.Attribute("value"));
}
}
}
}
var scenePresetNodes = xdoc.Descendants("scenePreset");
if (scenePresetNodes.Count() == 0)
{
return;
}
scenePresets = new Dictionary<string, string>();
foreach (var sceneNode in scenePresetNodes)
{
scenePresets.Add(
generateSceneKey(sceneNode.Attribute("level").Value, sceneNode.Attribute("bgName").Value, sceneNode.Attribute("yotogiName").Value)
, sceneNode.Value);
}
}