Action bars: use GetAdjustedActionId for Action slot display (combo/HSRCombos)
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -127,6 +127,23 @@ namespace HSUI.Helpers
|
|||||||
uint actionId = slot->ApparentActionId;
|
uint actionId = slot->ApparentActionId;
|
||||||
var slotType = slot->ApparentSlotType;
|
var slotType = slot->ApparentSlotType;
|
||||||
|
|
||||||
|
// Resolve adjusted action for Action type (combo/continuation replacement, e.g. HSRCombos / XIVCombo)
|
||||||
|
// so HSUI bars show the correct icon and action for the current combo step.
|
||||||
|
if (slotType == RaptureHotbarModule.HotbarSlotType.Action && actionId != 0)
|
||||||
|
{
|
||||||
|
var actionManager = Instance();
|
||||||
|
if (actionManager != null)
|
||||||
|
{
|
||||||
|
uint effectiveId = actionManager->GetAdjustedActionId(actionId);
|
||||||
|
if (effectiveId != actionId)
|
||||||
|
{
|
||||||
|
actionId = effectiveId;
|
||||||
|
// Use effective action id as icon (matches most actions); tooltip path will resolve correct icon by ActionId
|
||||||
|
iconId = effectiveId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
(int pct, int secsLeft) = GetSlotCooldown(slot);
|
(int pct, int secsLeft) = GetSlotCooldown(slot);
|
||||||
(int currentCharges, int maxCharges) = GetSlotCharges(slotType, actionId);
|
(int currentCharges, int maxCharges) = GetSlotCharges(slotType, actionId);
|
||||||
list.Add(new SlotInfo(iconId, false, usable, pct, secsLeft, actionId, slotType, keybind, currentCharges, maxCharges));
|
list.Add(new SlotInfo(iconId, false, usable, pct, secsLeft, actionId, slotType, keybind, currentCharges, maxCharges));
|
||||||
|
|||||||
Reference in New Issue
Block a user