internal override void Load() { InitialisationCode = spaar.ModLoader.Configuration.GetString("axis-" + Name + "-init", InitialisationCode); UpdateCode = spaar.ModLoader.Configuration.GetString("axis-" + Name + "-update", UpdateCode); GlobalScope = spaar.ModLoader.Configuration.GetBool("axis-" + Name + "-global", GlobalScope); for (int i = 0; spaar.ModLoader.Configuration.DoesKeyExist("axis-" + Name + "-link" + i); i++) { LinkedAxes.Add(spaar.ModLoader.Configuration.GetString("axis-" + Name + "-link" + i, " ")); } }
internal override void Save(MachineInfo machineInfo) { machineInfo.MachineData.Write("axis-" + Name + "-type", Type.ToString()); machineInfo.MachineData.Write("axis-" + Name + "-init", InitialisationCode); machineInfo.MachineData.Write("axis-" + Name + "-update", UpdateCode); machineInfo.MachineData.Write("axis-" + Name + "-global", GlobalScope); if (LinkedAxes.Count > 0) { machineInfo.MachineData.Write("axis-" + Name + "-links", LinkedAxes.ToArray <string>()); } }
internal override void Save() { spaar.ModLoader.Configuration.SetString("axis-" + Name + "-type", Type.ToString()); spaar.ModLoader.Configuration.SetString("axis-" + Name + "-init", InitialisationCode); spaar.ModLoader.Configuration.SetString("axis-" + Name + "-update", UpdateCode); spaar.ModLoader.Configuration.SetBool("axis-" + Name + "-global", GlobalScope); var list = LinkedAxes.ToArray <string>(); for (int i = 0; i < list.Length; i++) { spaar.ModLoader.Configuration.SetString("axis-" + Name + "-link" + i, list[i]); } }
internal override void Load(MachineInfo machineInfo) { if (machineInfo.MachineData.HasKey("axis-" + Name + "-init")) { InitialisationCode = machineInfo.MachineData.ReadString("axis-" + Name + "-init"); } if (machineInfo.MachineData.HasKey("axis-" + Name + "-update")) { UpdateCode = machineInfo.MachineData.ReadString("axis-" + Name + "-update"); } if (machineInfo.MachineData.HasKey("axis-" + Name + "-global")) { GlobalScope = machineInfo.MachineData.ReadBool("axis-" + Name + "-global"); } if (machineInfo.MachineData.HasKey("axis-" + Name + "-links")) { LinkedAxes.Union <string>(machineInfo.MachineData.ReadStringArray("axis-" + Name + "-links")); } }
/// <summary> /// Goes through all global names in scope and checks if they represent an InputAxis object. /// </summary> private void LinkAxes() { LinkedAxes.Clear(); foreach (var name in python.GetVariableNames()) { try { var axis = python.GetVariable <InputAxis>(name); if (axis != null) { LinkedAxes.Add(axis.Name); } } catch { continue; } } }