public void OnEnable() { if (TwitchSettingsSaver.CurrentProgramSettings == null) { TwitchSettingsSaver.LoadProgramSettings(); } ReloadOptions(); if (TwitchSettingsSaver.CurrentProgramSettings != null && !string.IsNullOrEmpty(TwitchSettingsSaver.CurrentProgramSettings.LastProfile)) { OnLoadPressed(true); } }
public void OnSaveNewPressed() { if (string.IsNullOrEmpty(SaveName.text) || TwitchSettingsSaver.SavedProfiles.ContainsKey(SaveName.text)) { return; } _savingNew = false; TwitchChatTester.Instance.AddSystemNotice("Adding saved settings " + SaveName.text); TwitchSettingsSaver.SavedProfiles.Add(SaveName.text, ConvertToTwitchSettings(OverlayToSave)); TwitchSettingsSaver.SaveProfiles(); SaveName.text = ""; ReloadOptions(); }
public void OnDeletePressed() { if (!_confirmingDelete) { _confirmingDelete = true; DeleteButtonText.color = Color.red; OnDeleteButtonTooltip(); } else { TwitchSettingsSaver.DeleteProfile(Dropdown.options[Dropdown.value].text); CancelConfirmingDelete(); ReloadOptions(); } }
/// <summary> /// Overwrite an existing save, or save a new one /// </summary> public void OnSavePressed() { CancelConfirmingDelete(); if (Dropdown.options[Dropdown.value].text == NewString) // Start creating a new save { _savingNew = true; OnValueChanges(); } else // Overwrite an existing save { TwitchSettings settings; if (!TwitchSettingsSaver.SavedProfiles.TryGetValue(Dropdown.options[Dropdown.value].text, out settings)) { return; } TwitchChatTester.Instance.AddSystemNotice("Overwriting saved settings " + Dropdown.options[Dropdown.value].text); settings.SaveFileVersion = TwitchSettings.CurrentSaveVersion; settings.Username = UsernameField.text; settings.Channel = ChannelField.text; settings.X = OverlayToSave.AnchorOffset.x; settings.Y = OverlayToSave.AnchorOffset.y; settings.Z = OverlayToSave.AnchorOffset.z; settings.RX = OverlayToSave.transform.eulerAngles.x; settings.RY = OverlayToSave.transform.eulerAngles.y; settings.RZ = OverlayToSave.transform.eulerAngles.z; settings.ChatSound = ChatSoundDropdown.Dropdown.options[ChatSoundDropdown.Dropdown.value].text; settings.Volume = VolumeSlider.Slider.value; settings.Pitch = PitchSlider.Slider.value; settings.FollowerSound = NewFollowerSoundDropdown.Dropdown.options[NewFollowerSoundDropdown.Dropdown.value].text; settings.FollowerVolume = NewFollowerVolumeSlider.Slider.value; settings.FollowerPitch = NewFollowerPitchSlider.Slider.value; settings.Device = OverlayToSave.AnchorDevice; settings.Point = OverlayToSave.AnchorPoint; settings.Animation = OverlayToSave.AnimateOnGaze; var backgroundColor = GetMaterialTexture().GetPixel(0, 0); settings.BackgroundR = backgroundColor.r; settings.BackgroundG = backgroundColor.g; settings.BackgroundB = backgroundColor.b; settings.BackgroundA = backgroundColor.a; settings.AlphaStart = OverlayToSave.Alpha; settings.AlphaEnd = OverlayToSave.Alpha2; settings.AlphaSpeed = OverlayToSave.AlphaSpeed; settings.ScaleStart = OverlayToSave.Scale; settings.ScaleEnd = OverlayToSave.Scale2; settings.ScaleSpeed = OverlayToSave.ScaleSpeed; TwitchSettingsSaver.SaveProfiles(); } }
public void OnLoadPressed(bool startup = false) // Loads an existing save { CancelConfirmingDelete(); TwitchSettings settings; if (!TwitchSettingsSaver.SavedProfiles.TryGetValue(Dropdown.options[Dropdown.value].text, out settings)) { return; } TwitchChatTester.Instance.AddSystemNotice(startup ? "Loading last used settings " + Dropdown.options[Dropdown.value].text : "Loading saved settings " + Dropdown.options[Dropdown.value].text); TwitchSettingsSaver.Current = Dropdown.options[Dropdown.value].text; if (!startup) { TwitchSettingsSaver.SaveProgramSettings(); } if (!TwitchChatTester.Instance.Connected) { UsernameField.text = settings.Username; } if (!TwitchChatTester.Instance.Connected) { ChannelField.text = settings.Channel; } XSlider.Slider.value = settings.X; YSlider.Slider.value = settings.Y; ZSlider.Slider.value = settings.Z; RXSlider.Slider.value = settings.RX; RYSlider.Slider.value = settings.RY; RZSlider.Slider.value = settings.RZ; if (settings.SaveFileVersion >= 1) // Save File compatability { VolumeSlider.Slider.value = settings.Volume; VolumeSlider.OnSliderEndDrag(false); PitchSlider.Slider.value = settings.Pitch; PitchSlider.OnSliderEndDrag(false); } ChatSoundDropdown.SetToOption(settings.SaveFileVersion >= 1 ? (settings.SaveFileVersion >= 2 ? settings.ChatSound : settings.ChatSound + ".wav") : "gui-sound-effects-031.wav", !startup); // Save File compatability if (settings.SaveFileVersion >= 4) // Save File compatability { NewFollowerVolumeSlider.Slider.value = settings.FollowerVolume; NewFollowerVolumeSlider.OnSliderEndDrag(false); NewFollowerPitchSlider.Slider.value = settings.FollowerPitch; NewFollowerPitchSlider.OnSliderEndDrag(false); } NewFollowerSoundDropdown.SetToOption(settings.SaveFileVersion >= 4 ? settings.FollowerSound : "gui-sound-effects-038.wav"); // Save File compatability DeviceDropdown.SetToOption(settings.Device.ToString()); PointDropdown.SetToOption(settings.Point.ToString()); AnimationDropdown.SetToOption(settings.Animation.ToString()); RSlider.Slider.value = settings.BackgroundR; GSlider.Slider.value = settings.BackgroundG; BSlider.Slider.value = settings.BackgroundB; ASlider.Slider.value = (settings.SaveFileVersion >= 3 ? settings.BackgroundA : 1.0f); // Save File compatability AlphaStartField.text = settings.AlphaStart.ToString(); AlphaEndField.text = settings.AlphaEnd.ToString(); AlphaSpeedField.text = settings.AlphaSpeed.ToString(); ScaleStartField.text = settings.ScaleStart.ToString(); ScaleEndField.text = settings.ScaleEnd.ToString(); ScaleSpeedField.text = settings.ScaleSpeed.ToString(); AlphaStartField.onEndEdit.Invoke(""); AlphaEndField.onEndEdit.Invoke(""); AlphaSpeedField.onEndEdit.Invoke(""); ScaleStartField.onEndEdit.Invoke(""); ScaleEndField.onEndEdit.Invoke(""); ScaleSpeedField.onEndEdit.Invoke(""); }