Beispiel #1
0
        public void SyncSettingsWithDisk(Action done)
        {
            DynamicSettings dynamicSettings = null;
            var             configFilePath  = Path.Combine(Application.persistentDataPath, ConfigFile);

            if (File.Exists(configFilePath))
            {
                File.ReadAllText(configFilePath);
                try
                {
                    //using (FileStream stream = new FileStream(configFilePath, FileMode.Create, FileAccess.Write))
                    //{
                    //    Serializer.Serialize(stream, dynamicSettings);
                    //}

                    using (FileStream stream = new FileStream(configFilePath, FileMode.Open, FileAccess.Read))
                    {
                        dynamicSettings = Serializer.Deserialize <DynamicSettings>(stream);
                    }

                    dynamicSettings.Load();
                    done?.Invoke();
                    return;
                }
                catch (Exception)
                {
                }
            }
            dynamicSettings = new DynamicSettings();
            dynamicSettings.Download();
            done?.Invoke();
        }
Beispiel #2
0
        private void Awake()
        {
            m_experienceMachine = IOCCore.Resolve <IExperienceMachine>();
            m_uiEngine          = IOCCore.Resolve <IUIEngine>();

            DynamicSettings dynamicSettings = null;
            var             configFilePath  = Path.Combine(Application.persistentDataPath, ConfigFile);

            if (File.Exists(configFilePath))
            {
                File.ReadAllText(configFilePath);
                try
                {
                    //using (FileStream stream = new FileStream(configFilePath, FileMode.Create, FileAccess.Write))
                    //{
                    //    Serializer.Serialize(stream, dynamicSettings);
                    //}

                    using (FileStream stream = new FileStream(configFilePath, FileMode.Open, FileAccess.Read))
                    {
                        dynamicSettings = Serializer.Deserialize <DynamicSettings>(stream);
                    }

                    dynamicSettings.Load();
                    return;
                }
                catch (Exception)
                {
                }
            }
            dynamicSettings = new DynamicSettings();
            dynamicSettings.Download();

            using (FileStream stream = new FileStream(configFilePath, FileMode.Create, FileAccess.Write))
            {
                Serializer.Serialize(stream, dynamicSettings);
            }
        }
Beispiel #3
0
        public void SaveSettings()
        {
            var dynamicSettings = new DynamicSettings();
            var configFilePath  = Path.Combine(Application.persistentDataPath, ConfigFile);

            dynamicSettings.Download();
            using (FileStream stream = new FileStream(configFilePath, FileMode.Create, FileAccess.Write))
            {
                Serializer.Serialize(stream, dynamicSettings);
            }

            m_experienceMachine.SetQualityLevel(selectedPreferences.GraphicsQuality);
            m_experienceMachine.SetAmbienceAudioVolume(selectedPreferences.AmbienceVolume);
            if (selectedPreferences.DesktopMode)
            {
                m_uiEngine.SwitchToDesktopOnlyMode();
            }
            else
            {
                m_uiEngine.DisableDesktopOnlyMode();
            }
            m_experienceMachine.Player.ApplyTooltipSettings();
            m_uiEngine.ApplyShowVRSettings(selectedPreferences.ShowVR);
        }