using System; namespace HSUI.Enums; // Hashes from HUD layout (AddonNameHash). Sources: HSUI, HUDManager plugin public enum ElementKind : uint { Hotbar1 = 0xC48D3605, // _ActionBar_a Hotbar2 = 0xFB7B6E1E, // _ActionBar01_a Hotbar3 = 0xF93DD047, // _ActionBar02_a Hotbar4 = 0xF8FFBA70, // _ActionBar03_a Hotbar5 = 0xFDB0ACF5, // _ActionBar04_a Hotbar6 = 0xFC72C6C2, // _ActionBar05_a Hotbar7 = 0xFE34789B, // _ActionBar06_a Hotbar8 = 0xFFF612AC, // _ActionBar07_a Hotbar9 = 0xF4AA5591, // _ActionBar08_a Hotbar10 = 0xF5683FA6, // _ActionBar09_a PetHotbar = 0xD8D188FF, // _ActionBarEx_a CrossHotbar = 0xBA81E8D1, // _ActionCross_a LeftWCrossHotbar = 0x6665735D, // _ActionDoubleCrossL_a RightWCrossHotbar = 0x70DDFD27, // _ActionDoubleCrossR_a ParameterBar = 0x9818E23E, // _ParameterWidget - player HP/MP TargetBar = 0x9139E9FD, // target info FocusTargetBar = 0xC28E7D1F, ProgressBar = 0xECB1E391, // cast bar ExperienceBar = 0x21E32D4E, LimitGauge = 0xC7A40A8A, StatusEffects = 0x4A5B6A16, // player buffs/debuffs StatusInfoEnhancements = 0x1F320624, StatusInfoEnfeeblements = 0x1E7A7A83, TargetInfoHp = 0xBD411F17, TargetInfoProgressBar = 0xCB5BCCCF, TargetInfoStatus = 0x070F4E6B, PartyList = 0x3D3B34F9, EnemyList = 0xB8C30AC5, } public static class ElementKindHelper { public static ElementKind ElementKindByHotBarId(int hotBarId) { return hotBarId switch { 0 => ElementKind.Hotbar1, 1 => ElementKind.Hotbar2, 2 => ElementKind.Hotbar3, 3 => ElementKind.Hotbar4, 4 => ElementKind.Hotbar5, 5 => ElementKind.Hotbar6, 6 => ElementKind.Hotbar7, 7 => ElementKind.Hotbar8, 8 => ElementKind.Hotbar9, 9 => ElementKind.Hotbar10, 10 => ElementKind.PetHotbar, _ => throw new ArgumentOutOfRangeException(nameof(hotBarId)) }; } }