fix(combat): preserve authored meter child geometry

Carry the consumed dark-range child's own retail edge policy into the procedural scrollbar, widening it to the authored post-reflow interval without covering the rendered labels. Restore the bright layer to live attack-charge feedback across the full bar from the left.

Co-Authored-By: Codex <codex@openai.com>
This commit is contained in:
Erik 2026-07-12 21:57:53 +02:00
parent f8c174d707
commit e671b8a5c4
10 changed files with 66 additions and 105 deletions

View file

@ -29,6 +29,7 @@ public sealed class CombatLayoutConformanceTests
Assert.Equal(0x06001923u, power.ThumbSprite);
Assert.Equal(0x06001200u, power.ScalarFillSprite);
Assert.Equal(0x0600715Eu, power.ScalarRangeSprite);
Assert.NotNull(power.ScalarRangeLayoutPolicy);
Assert.False(power.ScalarFillFromRight);
var speed = Assert.IsType<UiText>(
@ -39,6 +40,7 @@ public sealed class CombatLayoutConformanceTests
(8f, 507f, 12f, 100f, 411f, 100f),
(power.Left, power.Width, speed.Left, speed.Width,
powerLabel.Left, powerLabel.Width));
Assert.Equal((50f, 407f), power.ScalarRangeRect());
var repeat = Assert.IsType<UiButton>(
layout.FindElement(CombatUiController.RepeatAttacksId));