diff --git a/Artemis/Artemis/Managers/KeyboardManager.cs b/Artemis/Artemis/Managers/KeyboardManager.cs index b298785f2..3b6d6288a 100644 --- a/Artemis/Artemis/Managers/KeyboardManager.cs +++ b/Artemis/Artemis/Managers/KeyboardManager.cs @@ -75,6 +75,8 @@ namespace Artemis.Managers if (!keyboardProvider.CanEnable()) { _mainManager.DialogService.ShowErrorMessageBox(keyboardProvider.CantEnableText); + General.Default.LastKeyboard = null; + General.Default.Save(); return; } diff --git a/Artemis/Artemis/ViewModels/Flyouts/FlyoutSettingsViewModel.cs b/Artemis/Artemis/ViewModels/Flyouts/FlyoutSettingsViewModel.cs index aedf2c01c..28761244d 100644 --- a/Artemis/Artemis/ViewModels/Flyouts/FlyoutSettingsViewModel.cs +++ b/Artemis/Artemis/ViewModels/Flyouts/FlyoutSettingsViewModel.cs @@ -1,133 +1,133 @@ -using System.Diagnostics; -using System.Linq; -using Artemis.Events; -using Artemis.Managers; -using Artemis.Settings; -using Caliburn.Micro; -using MahApps.Metro.Controls; - -namespace Artemis.ViewModels.Flyouts -{ - public class FlyoutSettingsViewModel : FlyoutBaseViewModel, IHandle, IHandle - { - private string _activeEffectName; - private GeneralSettings _generalSettings; - private string _selectedKeyboardProvider; - - public FlyoutSettingsViewModel(MainManager mainManager) - { - MainManager = mainManager; - Header = "Settings"; - Position = Position.Right; - GeneralSettings = new GeneralSettings(); - - MainManager.Events.Subscribe(this); - } - - public GeneralSettings GeneralSettings - { - get { return _generalSettings; } - set - { - if (Equals(value, _generalSettings)) return; - _generalSettings = value; - NotifyOfPropertyChange(() => GeneralSettings); - } - } - - public MainManager MainManager { get; set; } - - public BindableCollection KeyboardProviders - { - get - { - var collection = new BindableCollection(MainManager.KeyboardManager.KeyboardProviders - .Select(k => k.Name)); - collection.Insert(0, "None"); - return collection; - } - } - - public string SelectedKeyboardProvider - { - get { return _selectedKeyboardProvider; } - set - { - if (value == _selectedKeyboardProvider) return; - _selectedKeyboardProvider = value; - NotifyOfPropertyChange(() => SelectedKeyboardProvider); - if (value == null) - return; - - MainManager.KeyboardManager.ChangeKeyboard( - MainManager.KeyboardManager.KeyboardProviders.FirstOrDefault( - k => k.Name == _selectedKeyboardProvider)); - } - } - - public bool Enabled - { - get { return MainManager.ProgramEnabled; } - set - { - if (value) - MainManager.EnableProgram(); - else - MainManager.DisableProgram(); - } - } - - public string ActiveEffectName - { - get { return _activeEffectName; } - set - { - if (value == _activeEffectName) return; - _activeEffectName = value; - NotifyOfPropertyChange(() => ActiveEffectName); - } - } - - public void Handle(ActiveEffectChanged message) - { - var effectDisplay = string.IsNullOrEmpty(message.ActiveEffect) ? message.ActiveEffect : "none"; - ActiveEffectName = $"Active effect: {effectDisplay}"; - } - - public void Handle(ToggleEnabled message) - { - NotifyOfPropertyChange(() => Enabled); - } - - public void ToggleEnabled() - { - if (Enabled) - MainManager.DisableProgram(); - else - MainManager.EnableProgram(); - } - - public void ResetSettings() - { - GeneralSettings.ResetSettings(); - NotifyOfPropertyChange(() => GeneralSettings); - } - - public void SaveSettings() - { - GeneralSettings.SaveSettings(); - } - - public void NavigateTo(string url) - { - Process.Start(new ProcessStartInfo(url)); - } - - protected override void HandleOpen() - { - SelectedKeyboardProvider = General.Default.LastKeyboard.Length > 0 - ? General.Default.LastKeyboard - : "None"; - } - } +using System.Diagnostics; +using System.Linq; +using Artemis.Events; +using Artemis.Managers; +using Artemis.Settings; +using Caliburn.Micro; +using MahApps.Metro.Controls; + +namespace Artemis.ViewModels.Flyouts +{ + public class FlyoutSettingsViewModel : FlyoutBaseViewModel, IHandle, IHandle + { + private string _activeEffectName; + private GeneralSettings _generalSettings; + private string _selectedKeyboardProvider; + + public FlyoutSettingsViewModel(MainManager mainManager) + { + MainManager = mainManager; + Header = "Settings"; + Position = Position.Right; + GeneralSettings = new GeneralSettings(); + + MainManager.Events.Subscribe(this); + } + + public GeneralSettings GeneralSettings + { + get { return _generalSettings; } + set + { + if (Equals(value, _generalSettings)) return; + _generalSettings = value; + NotifyOfPropertyChange(() => GeneralSettings); + } + } + + public MainManager MainManager { get; set; } + + public BindableCollection KeyboardProviders + { + get + { + var collection = new BindableCollection(MainManager.KeyboardManager.KeyboardProviders + .Select(k => k.Name)); + collection.Insert(0, "None"); + return collection; + } + } + + public string SelectedKeyboardProvider + { + get { return _selectedKeyboardProvider; } + set + { + if (value == _selectedKeyboardProvider) return; + _selectedKeyboardProvider = value; + NotifyOfPropertyChange(() => SelectedKeyboardProvider); + if (value == null) + return; + + MainManager.KeyboardManager.ChangeKeyboard( + MainManager.KeyboardManager.KeyboardProviders.FirstOrDefault( + k => k.Name == _selectedKeyboardProvider)); + } + } + + public bool Enabled + { + get { return MainManager.ProgramEnabled; } + set + { + if (value) + MainManager.EnableProgram(); + else + MainManager.DisableProgram(); + } + } + + public string ActiveEffectName + { + get { return _activeEffectName; } + set + { + if (value == _activeEffectName) return; + _activeEffectName = value; + NotifyOfPropertyChange(() => ActiveEffectName); + } + } + + public void Handle(ActiveEffectChanged message) + { + var effectDisplay = string.IsNullOrEmpty(message.ActiveEffect) ? message.ActiveEffect : "none"; + ActiveEffectName = $"Active effect: {effectDisplay}"; + } + + public void Handle(ToggleEnabled message) + { + NotifyOfPropertyChange(() => Enabled); + } + + public void ToggleEnabled() + { + if (Enabled) + MainManager.DisableProgram(); + else + MainManager.EnableProgram(); + } + + public void ResetSettings() + { + GeneralSettings.ResetSettings(); + NotifyOfPropertyChange(() => GeneralSettings); + } + + public void SaveSettings() + { + GeneralSettings.SaveSettings(); + } + + public void NavigateTo(string url) + { + Process.Start(new ProcessStartInfo(url)); + } + + protected override void HandleOpen() + { + SelectedKeyboardProvider = string.IsNullOrEmpty(General.Default.LastKeyboard) + ? "None" + : General.Default.LastKeyboard; + } + } } \ No newline at end of file diff --git a/pointers.json b/pointers.json index 9356ff4df..27e356d89 100644 --- a/pointers.json +++ b/pointers.json @@ -2,18 +2,18 @@ [ { "Game":"RocketLeague", - "GameVersion":"1.16", + "GameVersion":"1.17", "GameAddresses":[ { "Description":"Boost", "BasePointer":{ - "value":22411984 + "value":22531104 }, "Offsets":[ - 1632, + 1648, 64, - 1636, - 1800, + 484, + 1828, 540 ] }