protected override void RegisterSettings(PerCharacterSettings tSettings)
        {
            if (Game.Current?.PlayerTroop?.StringId == null)
            {
                return;
            }

            if (tSettings == null || LoadedSettings.ContainsKey(tSettings.Id))
            {
                return;
            }

            LoadedSettings.Add(tSettings.Id, tSettings);

            var path = Path.Combine(RootFolder, tSettings.CharacterId, tSettings.FolderName, tSettings.SubFolder ?? "", $"{tSettings.Id}.{tSettings.Format}");

            if (AvailableSettingsFormats.ContainsKey(tSettings.Format))
            {
                AvailableSettingsFormats[tSettings.Format].Load(tSettings, path);
            }
            else
            {
                AvailableSettingsFormats["memory"].Load(tSettings, path);
            }
        }
Beispiel #2
0
        protected override void RegisterSettings(GlobalSettings?settings)
        {
            if (settings is null || LoadedSettings.ContainsKey(settings.Id))
            {
                return;
            }

            LoadedSettings.Add(settings.Id, settings);

            var directoryPath   = Path.Combine(RootFolder, settings.FolderName, settings.SubFolder);
            var settingsFormats = GenericServiceProvider.GetService <IEnumerable <ISettingsFormat> >() ?? Enumerable.Empty <ISettingsFormat>();
            var settingsFormat  = settingsFormats.FirstOrDefault(x => x.FormatTypes.Any(y => y == settings.FormatType));

            settingsFormat?.Load(settings, directoryPath, settings.Id);
        }
        /// <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();
        }
Beispiel #4
0
        /// <inheritdoc/>
        protected override void RegisterSettings(PerSaveSettings?perSaveSettings)
        {
            var behavior = GenericServiceProvider.GetService <PerSaveCampaignBehavior>();

            if (behavior is null)
            {
                return;
            }

            if (perSaveSettings is null)
            {
                return;
            }

            LoadedSettings.Add(perSaveSettings.Id, perSaveSettings);

            behavior.LoadSettings(perSaveSettings);
        }
Beispiel #5
0
        protected virtual void RegisterSettings(TSettings tSettings)
        {
            if (tSettings == null || LoadedSettings.ContainsKey(tSettings.Id))
            {
                return;
            }

            LoadedSettings.Add(tSettings.Id, tSettings);

            var path = Path.Combine(RootFolder, tSettings.FolderName, tSettings.SubFolder ?? "", $"{tSettings.Id}.{tSettings.Format}");

            if (AvailableSettingsFormats.ContainsKey(tSettings.Format))
            {
                AvailableSettingsFormats[tSettings.Format].Load(tSettings, path);
            }
            else
            {
                AvailableSettingsFormats["memory"].Load(tSettings, path);
            }
        }
Beispiel #6
0
        /// <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 Register(FluentGlobalSettings settings) => LoadedSettings.Add(settings.Id, settings);
 public void Register(FluentPerCharacterSettings settings) => LoadedSettings.Add(settings.Id, settings);