Files
HSUI/Enums/ElementKind.cs
T

58 lines
2.6 KiB
C#

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))
};
}
}