public override void OnGameStarted(Game game) { LoadedSettings.Clear(); var settings = new List <PerCharacterSettings>(); var allTypes = AppDomain.CurrentDomain .GetAssemblies() .Where(a => !a.IsDynamic) // ignore v1 and v2 classes .Where(a => !Path.GetFileNameWithoutExtension(a.Location).StartsWith("MBOptionScreen")) .SelectMany(a => a.GetTypes()) .Where(t => t.IsClass && !t.IsAbstract) .Where(t => t.GetConstructor(Type.EmptyTypes) != null) .ToList(); var mbOptionScreenSettings = allTypes .Where(t => ReflectionUtils.ImplementsOrImplementsEquivalent(t, typeof(PerCharacterSettings))) .Where(t => !ReflectionUtils.ImplementsOrImplementsEquivalent(t, typeof(EmptyPerCharacterSettings))) .Where(t => !ReflectionUtils.ImplementsOrImplementsEquivalent(t, typeof(IWrapper))) .Select(obj => BasePerCharacterSettingsWrapper.Create(Activator.CreateInstance(obj))); settings.AddRange(mbOptionScreenSettings); foreach (var setting in settings) { RegisterSettings(setting); } }
/// <summary> /// Load RS_ASIO Settings from the Settings File. /// </summary> public LoadSettings() { LoadedSettings.Clear(); // Config LoadedSettings.Add(new Settings("Config", "EnableWasapiOutputs", 0)); LoadedSettings.Add(new Settings("Config", "EnableWasapiInputs", 0)); LoadedSettings.Add(new Settings("Config", "EnableAsio", 1)); // Asio LoadedSettings.Add(new Settings("Asio", "BufferSizeMode", "driver")); LoadedSettings.Add(new Settings("Asio", "CustomBufferSize", "")); // Asio.Output LoadedSettings.Add(new Settings("Asio.Output", "Driver", "")); LoadedSettings.Add(new Settings("Asio.Output", "BaseChannel", 0)); LoadedSettings.Add(new Settings("Asio.Output", "AltBaseChannel", "")); LoadedSettings.Add(new Settings("Asio.Output", "EnableSoftwareEndpointVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Output", "EnableSoftwareMasterVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Output", "SoftwareMasterVolumePercent", 100)); // Asio.Input.0 LoadedSettings.Add(new Settings("Asio.Input.0", "Driver", "")); LoadedSettings.Add(new Settings("Asio.Input.0", "Channel", 0)); LoadedSettings.Add(new Settings("Asio.Input.0", "EnableSoftwareEndpointVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Input.0", "EnableSoftwareMasterVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Input.0", "SoftwareMasterVolumePercent", 100)); // Asio.Input.1 LoadedSettings.Add(new Settings("Asio.Input.1", "Driver", "")); LoadedSettings.Add(new Settings("Asio.Input.1", "Channel", 1)); LoadedSettings.Add(new Settings("Asio.Input.1", "EnableSoftwareEndpointVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Input.1", "EnableSoftwareMasterVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Input.1", "SoftwareMasterVolumePercent", 100)); // Asio.Input.Mic LoadedSettings.Add(new Settings("Asio.Input.Mic", "Driver", "")); LoadedSettings.Add(new Settings("Asio.Input.Mic", "Channel", 1)); LoadedSettings.Add(new Settings("Asio.Input.Mic", "EnableSoftwareEndpointVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Input.Mic", "EnableSoftwareMasterVolumeControl", 1)); LoadedSettings.Add(new Settings("Asio.Input.Mic", "SoftwareMasterVolumePercent", 100)); WriteSettingsFile(); }
/// <summary> /// Load Rocksmith Settings /// </summary> public LoadSettings() { LoadedSettings.Clear(); // Audio LoadedSettings.Add(new Settings("Audio", "EnableMicrophone", 1)); LoadedSettings.Add(new Settings("Audio", "ExclusiveMode", 1)); LoadedSettings.Add(new Settings("Audio", "LatencyBuffer", 4)); LoadedSettings.Add(new Settings("Audio", "ForceDefaultPlaybackDevice", "")); LoadedSettings.Add(new Settings("Audio", "ForceWDM", 0)); LoadedSettings.Add(new Settings("Audio", "ForceDirectXSink", 0)); LoadedSettings.Add(new Settings("Audio", "DumpAudioLog", 0)); LoadedSettings.Add(new Settings("Audio", "MaxOutputBufferSize", 0)); LoadedSettings.Add(new Settings("Audio", "RealToneCableOnly", 0)); LoadedSettings.Add(new Settings("Audio", "Win32UltraLowLatencyMode", 1)); // Renderer.Win32 LoadedSettings.Add(new Settings("Renderer.Win32", "ShowGamepadUI", 0)); LoadedSettings.Add(new Settings("Renderer.Win32", "ScreenWidth", 0)); LoadedSettings.Add(new Settings("Renderer.Win32", "ScreenHeight", 0)); LoadedSettings.Add(new Settings("Renderer.Win32", "Fullscreen", 2)); LoadedSettings.Add(new Settings("Renderer.Win32", "VisualQuality", 1)); LoadedSettings.Add(new Settings("Renderer.Win32", "RenderingWidth", 0)); LoadedSettings.Add(new Settings("Renderer.Win32", "RenderingHeight", 0)); LoadedSettings.Add(new Settings("Renderer.Win32", "EnablePostEffects", 1)); LoadedSettings.Add(new Settings("Renderer.Win32", "EnableShadows", 1)); LoadedSettings.Add(new Settings("Renderer.Win32", "EnableHighResScope", 1)); LoadedSettings.Add(new Settings("Renderer.Win32", "EnableDepthOfField", 1)); LoadedSettings.Add(new Settings("Renderer.Win32", "EnablePerPixelLighting", 1)); LoadedSettings.Add(new Settings("Renderer.Win32", "MsaaSamples", 4)); LoadedSettings.Add(new Settings("Renderer.Win32", "DisableBrowser", 0)); // Net LoadedSettings.Add(new Settings("Net", "UseProxy", 1)); WriteSettingsFile(); }
public void OnGameEnded(Game game) { LoadedSettings.Clear(); }
public void OnGameStarted(Game game) => LoadedSettings.Clear();
public void OnGameStarted(Game game) { LoadedSettings.Clear(); LoadSettings(); }