feat(ui): share indicator detail panels
Port the authored Link Status, Vitae, and Mini Game detail roots and register every indicator page with retail's one-active gmPanelUI owner. Helpful/Harmful and the new pages now replace Inventory, Character, or Magic at one canonical window position while preserving the DAT restore-previous flag. Correct the retail ping wire to its payload-free request/response, publish measured RTT, and port Vitae recovery XP from the live modifier and player properties. Keep transport packet-loss averaging and mini-game gameplay explicitly tracked under AP-110. Release build and all 5,814 tests pass with five intentional skips. Connected visual gate pending. Co-authored-by: OpenAI Codex <codex@openai.com>
This commit is contained in:
parent
52c529be86
commit
a96767ba6d
28 changed files with 6539 additions and 32 deletions
|
|
@ -113,7 +113,7 @@ public sealed class RetailPanelUiControllerTests
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void RestorePreviousEffect_DoesNotReplaceMainPanelPlacement()
|
||||
public void IndicatorDetailPanel_SharesPlacementAndRestoresPreviousPanel()
|
||||
{
|
||||
var root = new UiRoot { Width = 1280f, Height = 720f };
|
||||
RetailWindowHandle inventory = Mount(root, WindowNames.Inventory, 40f, 60f);
|
||||
|
|
@ -122,13 +122,17 @@ public sealed class RetailPanelUiControllerTests
|
|||
using var controller = Create(root);
|
||||
controller.RegisterMainPanel(7u, WindowNames.Inventory, inventory);
|
||||
controller.RegisterMainPanel(11u, WindowNames.Character, character);
|
||||
controller.Register(4u, WindowNames.PositiveEffects, restorePrevious: true);
|
||||
controller.RegisterMainPanel(
|
||||
4u,
|
||||
WindowNames.PositiveEffects,
|
||||
effect,
|
||||
restorePrevious: true);
|
||||
|
||||
controller.SetPanelVisibility(7u, visible: true);
|
||||
inventory.MoveTo(280f, 120f);
|
||||
controller.SetPanelVisibility(4u, visible: true);
|
||||
|
||||
Assert.Equal((900f, 30f), (effect.Left, effect.Top));
|
||||
Assert.Equal((280f, 120f), (effect.Left, effect.Top));
|
||||
Assert.False(inventory.IsVisible);
|
||||
Assert.True(effect.IsVisible);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue