diff --git a/Config/ConfigurationManager.cs b/Config/ConfigurationManager.cs index a61acf4..5a7f526 100644 --- a/Config/ConfigurationManager.cs +++ b/Config/ConfigurationManager.cs @@ -724,7 +724,6 @@ namespace HSUI.Config // Visibility typeof(GlobalVisibilityConfig), - typeof(HotbarsVisibilityConfig), // Misc typeof(HUDOptionsConfig), diff --git a/HSUI.csproj b/HSUI.csproj index 03665be..78e2f54 100644 --- a/HSUI.csproj +++ b/HSUI.csproj @@ -9,9 +9,9 @@ HSUI - 1.0.8.18 - 1.0.8.18 - 1.0.8.18 + 1.0.8.19 + 1.0.8.19 + 1.0.8.19 diff --git a/HSUI.json b/HSUI.json index 68c76a4..921dc72 100644 --- a/HSUI.json +++ b/HSUI.json @@ -2,7 +2,7 @@ "Author": "Knack117", "Name": "HSUI", "InternalName": "HSUI", - "AssemblyVersion": "1.0.8.18", + "AssemblyVersion": "1.0.8.19", "Description": "HSUI provides a highly configurable HUD replacement for FFXIV, recreated from DelvUI using KamiToolKit, FFXIVClientStructs, and Dalamud. Features unit frames, castbars, job gauges, nameplates, party frames, status effects, enemy list, configurable hotbars with drag-and-drop, and profiles.", "ApplicableVersion": "any", "RepoUrl": "https://github.com/Knack117/HSUI", diff --git a/Interface/GeneralElements/ActionBarsHud.cs b/Interface/GeneralElements/ActionBarsHud.cs index 7e5338c..e5983dd 100644 --- a/Interface/GeneralElements/ActionBarsHud.cs +++ b/Interface/GeneralElements/ActionBarsHud.cs @@ -72,19 +72,9 @@ namespace HSUI.Interface.GeneralElements } /// - /// Visibility for HSUI Action Bars is driven by Visibility → Hotbars (Hotbar 1–10), not the per-element config. + /// Visibility for HSUI Action Bars is configured per hotbar in each Hotbar 1–10 menu. /// - public VisibilityConfig VisibilityConfig => GetHotbarVisibilityConfig(); - - private VisibilityConfig GetHotbarVisibilityConfig() - { - var hotbars = ConfigurationManager.Instance?.GetConfigObject(); - if (hotbars == null) return Config.VisibilityConfig; - var list = hotbars.GetHotbarConfigs(); - int idx = Config.HotbarIndex - 1; - if (idx < 0 || idx >= list.Count) return Config.VisibilityConfig; - return list[idx]; - } + public VisibilityConfig VisibilityConfig => Config.VisibilityConfig; public IGameObject? Actor { get; set; } diff --git a/Interface/GeneralElements/HotbarsConfig.cs b/Interface/GeneralElements/HotbarsConfig.cs index a52fe8c..5e01f82 100644 --- a/Interface/GeneralElements/HotbarsConfig.cs +++ b/Interface/GeneralElements/HotbarsConfig.cs @@ -153,23 +153,9 @@ namespace HSUI.Interface.GeneralElements { if (bar == null) continue; bar.Enabled = true; + bar.VisibilityConfig.CopyFrom(new VisibilityConfig()); HotbarBarConfig.ApplyDefaults(bar, idx); } - var vis = cfg.GetConfigObject(); - if (vis != null) - { - var defaults = new VisibilityConfig(); - vis.HotbarConfig1.CopyFrom(defaults); - vis.HotbarConfig2.CopyFrom(defaults); - vis.HotbarConfig3.CopyFrom(defaults); - vis.HotbarConfig4.CopyFrom(defaults); - vis.HotbarConfig5.CopyFrom(defaults); - vis.HotbarConfig6.CopyFrom(defaults); - vis.HotbarConfig7.CopyFrom(defaults); - vis.HotbarConfig8.CopyFrom(defaults); - vis.HotbarConfig9.CopyFrom(defaults); - vis.HotbarConfig10.CopyFrom(defaults); - } } } diff --git a/Interface/GeneralElements/HotbarsVisibilityConfig.cs b/Interface/GeneralElements/HotbarsVisibilityConfig.cs deleted file mode 100644 index c4f6791..0000000 --- a/Interface/GeneralElements/HotbarsVisibilityConfig.cs +++ /dev/null @@ -1,71 +0,0 @@ -using HSUI.Config; -using HSUI.Config.Attributes; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace HSUI.Interface.GeneralElements -{ - [Disableable(false)] - [Exportable(false)] - [Section("Visibility")] - [SubSection("Hotbars", 0)] - public class HotbarsVisibilityConfig : PluginConfigObject - { - public new static HotbarsVisibilityConfig DefaultConfig() { return new HotbarsVisibilityConfig(); } - - [NestedConfig("Hotbar 1", 50)] - public VisibilityConfig HotbarConfig1 = new VisibilityConfig(); - - [NestedConfig("Hotbar 2", 51)] - public VisibilityConfig HotbarConfig2 = new VisibilityConfig(); - - [NestedConfig("Hotbar 3", 52)] - public VisibilityConfig HotbarConfig3 = new VisibilityConfig(); - - [NestedConfig("Hotbar 4", 53)] - public VisibilityConfig HotbarConfig4 = new VisibilityConfig(); - - [NestedConfig("Hotbar 5", 54)] - public VisibilityConfig HotbarConfig5 = new VisibilityConfig(); - - [NestedConfig("Hotbar 6", 55)] - public VisibilityConfig HotbarConfig6 = new VisibilityConfig(); - - [NestedConfig("Hotbar 7", 56)] - public VisibilityConfig HotbarConfig7 = new VisibilityConfig(); - - [NestedConfig("Hotbar 8", 57)] - public VisibilityConfig HotbarConfig8 = new VisibilityConfig(); - - [NestedConfig("Hotbar 9", 58)] - public VisibilityConfig HotbarConfig9 = new VisibilityConfig(); - - [NestedConfig("Hotbar 10", 59)] - public VisibilityConfig HotbarConfig10 = new VisibilityConfig(); - - [NestedConfig("Cross Hotbar", 60)] - public VisibilityConfig HotbarConfigCross = new VisibilityConfig(); - - private List _configs; - public List GetHotbarConfigs() => _configs; - - public HotbarsVisibilityConfig() - { - _configs = new List() { - HotbarConfig1, - HotbarConfig2, - HotbarConfig3, - HotbarConfig4, - HotbarConfig5, - HotbarConfig6, - HotbarConfig7, - HotbarConfig8, - HotbarConfig9, - HotbarConfig10 - }; - } - } -} diff --git a/changelog.md b/changelog.md index 3de642b..2db066f 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,6 @@ +# 1.0.8.19 +- **Hotbars**: Visibility settings moved from Visibility → Hotbars to each Hotbar 1–10 menu. The Visibility → Hotbars tab has been removed. + # 1.0.8.18 - **Visibility**: "Hide unless hovered" — per-element option in Visibility to hide any UI element unless the cursor is over it (requires HUD locked). diff --git a/pluginmaster.json b/pluginmaster.json index 685e853..8f199b9 100644 --- a/pluginmaster.json +++ b/pluginmaster.json @@ -1 +1 @@ -[{"Author":"Knack117","Name":"HSUI","Punchline":"A modern HUD replacement built for customization.","Description":"HSUI provides a highly configurable HUD replacement for FFXIV, recreated from DelvUI using KamiToolKit, FFXIVClientStructs, and Dalamud. Features unit frames, castbars, job gauges, nameplates, party frames, status effects, enemy list, configurable hotbars with drag-and-drop, and profiles.","Changelog":"1.0.8.18: Visibility \"Hide unless hovered\" option. 1.0.8.17: Controller hotbars (cross layout, separate storage, sync with game). 1.0.8.16: Show HUD during dialogue and interaction. 1.0.8.15: Tooltips game-style formatting. 1.0.8.14: Mouse GCD Indicator. 1.0.8.13: Item tooltips now show. 1.0.8.12: Item/HQ icons now draw on hotbar. 1.0.8.11: Hotbar tooltip crash fix. 1.0.8.10: Hotbar crash fix when dragging inventory items. 1.0.8.9: Gearset persists on slot. 1.0.8.8: Gearset drag-drop fix. 1.0.8.7: Fixed Gearset icon clearing. 1.0.8.6: Crafting action tooltips full description. 1.0.8.4: Alliance Frames 1 and 2 fix; Hide in duty no longer hides alliance frames. 1.0.8.3: Fix left-click staying broken after disable. 1.0.8.2: Charge icons stay lit until all charges spent.","InternalName":"HSUI","AssemblyVersion":"1.0.8.18","RepoUrl":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI","ApplicableVersion":"any","Tags":["UI","HUD","Unit Frames","Nameplates","Party Frames","Hotbars"],"CategoryTags":["UI"],"DalamudApiLevel":14,"IconUrl":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/raw/branch/main/Media/Images/icon.png","ImageUrls":[],"DownloadLinkInstall":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/releases/download/v1.0.8.18/latest.zip","IsHide":false,"IsTestingExclusive":false,"DownloadLinkTesting":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/releases/download/v1.0.8.18/latest.zip","DownloadLinkUpdate":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/releases/download/v1.0.8.18/latest.zip","LastUpdate":"1762238400"}] +[{"Author":"Knack117","Name":"HSUI","Punchline":"A modern HUD replacement built for customization.","Description":"HSUI provides a highly configurable HUD replacement for FFXIV, recreated from DelvUI using KamiToolKit, FFXIVClientStructs, and Dalamud. Features unit frames, castbars, job gauges, nameplates, party frames, status effects, enemy list, configurable hotbars with drag-and-drop, and profiles.","Changelog":"1.0.8.19: Hotbar visibility moved to per-hotbar menus; removed Visibility → Hotbars tab. 1.0.8.18: Visibility \"Hide unless hovered\" option. 1.0.8.17: Controller hotbars (cross layout, separate storage, sync with game). 1.0.8.16: Show HUD during dialogue and interaction. 1.0.8.15: Tooltips game-style formatting. 1.0.8.14: Mouse GCD Indicator. 1.0.8.13: Item tooltips now show. 1.0.8.12: Item/HQ icons now draw on hotbar. 1.0.8.11: Hotbar tooltip crash fix. 1.0.8.10: Hotbar crash fix when dragging inventory items. 1.0.8.9: Gearset persists on slot. 1.0.8.8: Gearset drag-drop fix. 1.0.8.7: Fixed Gearset icon clearing. 1.0.8.6: Crafting action tooltips full description. 1.0.8.4: Alliance Frames 1 and 2 fix; Hide in duty no longer hides alliance frames. 1.0.8.3: Fix left-click staying broken after disable. 1.0.8.2: Charge icons stay lit until all charges spent.","InternalName":"HSUI","AssemblyVersion":"1.0.8.19","RepoUrl":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI","ApplicableVersion":"any","Tags":["UI","HUD","Unit Frames","Nameplates","Party Frames","Hotbars"],"CategoryTags":["UI"],"DalamudApiLevel":14,"IconUrl":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/raw/branch/main/Media/Images/icon.png","ImageUrls":[],"DownloadLinkInstall":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/releases/download/v1.0.8.19/latest.zip","IsHide":false,"IsTestingExclusive":false,"DownloadLinkTesting":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/releases/download/v1.0.8.19/latest.zip","DownloadLinkUpdate":"http://brassnet.ddns.net:33983/KnackAtNite/HSUI/releases/download/v1.0.8.19/latest.zip","LastUpdate":"1772292053"}]