diff --git a/Artemis/Artemis/DeviceProviders/Corsair/CorsairKeyboard.cs b/Artemis/Artemis/DeviceProviders/Corsair/CorsairKeyboard.cs index abb4e026b..a9fa0701b 100644 --- a/Artemis/Artemis/DeviceProviders/Corsair/CorsairKeyboard.cs +++ b/Artemis/Artemis/DeviceProviders/Corsair/CorsairKeyboard.cs @@ -89,6 +89,7 @@ namespace Artemis.DeviceProviders.Corsair } Logger.Debug("Corsair SDK reported device as: {0}", _keyboard.DeviceInfo.Model); + _keyboard.Brush = _keyboardBrush ?? (_keyboardBrush = new ImageBrush()); } diff --git a/Artemis/Artemis/Models/ProfileEditorModel.cs b/Artemis/Artemis/Models/ProfileEditorModel.cs index f3f5b9a0a..a023961a2 100644 --- a/Artemis/Artemis/Models/ProfileEditorModel.cs +++ b/Artemis/Artemis/Models/ProfileEditorModel.cs @@ -26,6 +26,7 @@ namespace Artemis.Models private readonly WindowService _windowService; private FileSystemWatcher _watcher; private ModuleModel _luaModule; + private ProfileModel _luaEditorProfile; public ProfileEditorModel(WindowService windowService, MetroDialogService dialogService, DeviceManager deviceManager, LuaManager luaManager) { @@ -290,6 +291,9 @@ namespace Artemis.Models public void OpenLuaEditor(ModuleModel moduleModel) { + if (moduleModel.ProfileModel == null) + return; + // Clean up old environment DisposeLuaWatcher(); @@ -305,6 +309,7 @@ namespace Artemis.Models // Watch the file for changes _luaModule = moduleModel; + _luaEditorProfile = moduleModel.ProfileModel; _watcher = new FileSystemWatcher(Path.GetTempPath(), fileName); _watcher.Changed += LuaFileChanged; _watcher.EnableRaisingEvents = true; @@ -332,12 +337,13 @@ namespace Artemis.Models { using (var sr = new StreamReader(fs)) { - _luaModule.ProfileModel.LuaScript = sr.ReadToEnd(); + _luaEditorProfile.LuaScript = sr.ReadToEnd(); } } - ProfileProvider.AddOrUpdate(_luaModule.ProfileModel); - _luaManager.SetupLua(_luaModule.ProfileModel); + ProfileProvider.AddOrUpdate(_luaEditorProfile); + if (_luaManager.ProfileModel == _luaEditorProfile) + _luaManager.SetupLua(_luaModule.ProfileModel); } } diff --git a/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml b/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml index 1b59889aa..ddf1282bb 100644 --- a/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml +++ b/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml @@ -22,13 +22,16 @@ - The F1 2017 module requires UDP Telemetry to be enabled in the ingame settings menu. + + + + The F1 2017 module requires UDP Telemetry to be enabled in the ingame settings menu. For help with this see the wiki. diff --git a/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml.cs b/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml.cs index 0d3e85bcd..e117c0802 100644 --- a/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml.cs +++ b/Artemis/Artemis/Modules/Games/FormulaOne2017/FormulaOne2017View.xaml.cs @@ -1,4 +1,5 @@ using System.Windows.Controls; +using System.Windows.Navigation; namespace Artemis.Modules.Games.FormulaOne2017 { @@ -8,5 +9,10 @@ namespace Artemis.Modules.Games.FormulaOne2017 { InitializeComponent(); } + + private void Hyperlink_RequestNavigate(object sender, RequestNavigateEventArgs e) + { + System.Diagnostics.Process.Start(e.Uri.ToString()); + } } } \ No newline at end of file diff --git a/Artemis/Artemis/Modules/Games/Overwatch/OverwatchDataModel.cs b/Artemis/Artemis/Modules/Games/Overwatch/OverwatchDataModel.cs index 72895b27d..1a82e8d50 100644 --- a/Artemis/Artemis/Modules/Games/Overwatch/OverwatchDataModel.cs +++ b/Artemis/Artemis/Modules/Games/Overwatch/OverwatchDataModel.cs @@ -8,6 +8,7 @@ namespace Artemis.Modules.Games.Overwatch { public OverwatchStatus Status { get; set; } public OverwatchCharacter Character { get; set; } + public string CharacterColor { get; set; } public bool UltimateReady { get; set; } public bool Ability1Ready { get; set; } public bool Ability2Ready { get; set; } diff --git a/Artemis/Artemis/Modules/Games/Overwatch/OverwatchModel.cs b/Artemis/Artemis/Modules/Games/Overwatch/OverwatchModel.cs index 4a216cd99..059fc90f6 100644 --- a/Artemis/Artemis/Modules/Games/Overwatch/OverwatchModel.cs +++ b/Artemis/Artemis/Modules/Games/Overwatch/OverwatchModel.cs @@ -223,6 +223,7 @@ namespace Artemis.Modules.Games.Overwatch // Update the datamodel gameDataModel.Character = characterMatch.Character; + gameDataModel.CharacterColor = colors[0, 20].ToHex(); return characterMatch; } diff --git a/Artemis/Artemis/Resources/Keyboards/default-profiles.zip b/Artemis/Artemis/Resources/Keyboards/default-profiles.zip index 8b5ead4d6..7a0bb9f55 100644 Binary files a/Artemis/Artemis/Resources/Keyboards/default-profiles.zip and b/Artemis/Artemis/Resources/Keyboards/default-profiles.zip differ