fix: Duty List hide-unless-hovered + tooltip job gauge cost section formatting

Duty List & Scenario Guide:
- Fix 'Hide unless hovered' visibility option not working. Override
  GetScreenBounds() in DutyListScenarioHud so the hover hit-test rect
  matches the drawn panel position exactly (same formula as draw code).

Tooltips (game-style formatting):
- Treat job gauge/resource costs as a new section with section label color
  (e.g. Soul Gauge Cost, Beast Gauge Cost, Lily Cost, Kenki, Ninki,
  Cartridge, Oath, Polyglot, Addersgall, Astral/Lunar Sign, Battery/Heat).
- In BuildFormattedActionTooltipBody: recognize gauge cost lines in the
  stats block and emit them as their own section (newline + green label).
- Fix tooltip break when stats and description share the first block:
  switch to description on first non-stats line instead of dropping it,
  so ability description text is never lost.

Made-with: Cursor
This commit is contained in:
Jorg
2026-03-02 13:33:30 -06:00
parent 27e743c80f
commit 7a61e11e37
2 changed files with 43 additions and 11 deletions
@@ -21,6 +21,13 @@ namespace HSUI.Interface.GeneralElements
return (new List<Vector2> { Config.Position }, new List<Vector2> { Config.Size });
}
/// <summary>Screen-space bounds for visibility "hide unless hovered" must match the draw position exactly.</summary>
public override (Vector2 min, Vector2 max) GetScreenBounds(Vector2 origin)
{
Vector2 topLeft = Utils.GetAnchoredPosition(origin + ParentPos() + Config.Position, Config.Size, Config.Anchor);
return (topLeft, topLeft + Config.Size);
}
public override void DrawChildren(Vector2 origin)
{
if (!Config.Enabled)