createCooldownMaterial() uses step(normalized, uValue) as a pie wipe. uValue is therefore either a full overlay or none — it never tracks remaining/max, so a 3s-remaining spell looks identical to a 1s-remaining spell. SpellSlot also has no max-duration field, so the HUD cannot compute a ratio today.
Expected:uValue should be remaining/max (or 1 - remaining/max) so the pie shrinks as the cooldown ticks, matching the seconds label.
Found by Wave 8 a2 coverage tests.
**Where:** `projects/spikersoft/src/app/_components/_games/dungeon-crawler/hud/skill-bar-hud.ts` — `updateCooldowns()`.
**What:** Remaining cooldown is written as a seconds label (`${cd}s`), but the radial overlay uniform is binary:
```ts
this.cooldownMats[i].uniforms["uValue"].value = cd > 0 ? 1.0 : 0.0;
```
`createCooldownMaterial()` uses `step(normalized, uValue)` as a pie wipe. `uValue` is therefore either a full overlay or none — it never tracks remaining/max, so a 3s-remaining spell looks identical to a 1s-remaining spell. `SpellSlot` also has no max-duration field, so the HUD cannot compute a ratio today.
**Expected:** `uValue` should be remaining/max (or 1 - remaining/max) so the pie shrinks as the cooldown ticks, matching the seconds label.
Found by Wave 8 a2 coverage tests.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Where:
projects/spikersoft/src/app/_components/_games/dungeon-crawler/hud/skill-bar-hud.ts—updateCooldowns().What: Remaining cooldown is written as a seconds label (
${cd}s), but the radial overlay uniform is binary:createCooldownMaterial()usesstep(normalized, uValue)as a pie wipe.uValueis therefore either a full overlay or none — it never tracks remaining/max, so a 3s-remaining spell looks identical to a 1s-remaining spell.SpellSlotalso has no max-duration field, so the HUD cannot compute a ratio today.Expected:
uValueshould be remaining/max (or 1 - remaining/max) so the pie shrinks as the cooldown ticks, matching the seconds label.Found by Wave 8 a2 coverage tests.
Resolved in spikersoft-angular PR #819 (merged to
master). SkillBarHUD cooldown radial shrinks with remaining seconds. Closing.