Healthstone count shows up wrong when the Demonic Healthstone talent is taken.
The two stones are registered as two unrelated item presets in EllesmereUICooldownManager/EllesmereUICooldownManager.lua:602-615:
{
key = "healthstone",
name = "Healthstone",
icon = 538745,
itemID = 5512,
spellID = 6262,
combatLockout = true,
},
{
key = "demonic_healthstone",
name = "Demonic Healthstone",
itemID = 224464,
spellID = 452930,
},
Neither carries displayOrder, swapWith or altItemIDs, so neither participates in the variant-resolution path. PotSwap.Ensure bails immediately for them (EllesmereUICdmHooks.lua:5795):
if not (preset and preset.displayOrder and f._presetItemID == preset.itemID) then return nil end
So the count each icon shows is a single-item count for its own literal itemID. A warlock with the talent carries 224464, while the icon most people have on their bar is the plain healthstone preset (5512) - that one counts 0, and the Demonic preset is a separate icon you have to add on purpose. Taking or dropping the talent silently changes which of the two icons is the live one.
The codebase already has the mechanism for exactly this: liquid_luster uses altItemIDs (line 600), and the potion presets use displayOrder + swapWith to walk a chain and display whichever variant is actually in bags (PotSwap.Chain, EllesmereUICdmHooks.lua:5757-5775). The healthstones look like they just never got wired into it. Making Demonic Healthstone a variant of the Healthstone preset rather than a sibling would make one icon count both.
Note AuraBuffReminders already handles this correctly (HEALTHSTONE_ITEM_IDS = { 5512, 224464 }, line 1203) and only uses it as a boolean hasStone, so the ABR reminder is not affected - it is specifically the CDM count.
Environment: retail, EllesmereUI 9.2.1.
Reported from reading the source; the read of which icon is on the user's bar is inferred, so correct me if the intended setup is to add the Demonic preset manually.
Filed by an AI agent (OpenHands) on behalf of the repo user.
Healthstone count shows up wrong when the Demonic Healthstone talent is taken.
The two stones are registered as two unrelated item presets in
EllesmereUICooldownManager/EllesmereUICooldownManager.lua:602-615:{ key = "healthstone", name = "Healthstone", icon = 538745, itemID = 5512, spellID = 6262, combatLockout = true, }, { key = "demonic_healthstone", name = "Demonic Healthstone", itemID = 224464, spellID = 452930, },Neither carries
displayOrder,swapWithoraltItemIDs, so neither participates in the variant-resolution path.PotSwap.Ensurebails immediately for them (EllesmereUICdmHooks.lua:5795):So the count each icon shows is a single-item count for its own literal itemID. A warlock with the talent carries 224464, while the icon most people have on their bar is the plain
healthstonepreset (5512) - that one counts 0, and the Demonic preset is a separate icon you have to add on purpose. Taking or dropping the talent silently changes which of the two icons is the live one.The codebase already has the mechanism for exactly this:
liquid_lusterusesaltItemIDs(line 600), and the potion presets usedisplayOrder+swapWithto walk a chain and display whichever variant is actually in bags (PotSwap.Chain,EllesmereUICdmHooks.lua:5757-5775). The healthstones look like they just never got wired into it. Making Demonic Healthstone a variant of the Healthstone preset rather than a sibling would make one icon count both.Note AuraBuffReminders already handles this correctly (
HEALTHSTONE_ITEM_IDS = { 5512, 224464 }, line 1203) and only uses it as a booleanhasStone, so the ABR reminder is not affected - it is specifically the CDM count.Environment: retail, EllesmereUI 9.2.1.
Reported from reading the source; the read of which icon is on the user's bar is inferred, so correct me if the intended setup is to add the Demonic preset manually.
Filed by an AI agent (OpenHands) on behalf of the repo user.