fix(ui): match retail spell bar controls
Place favorite-bar arrows by their authored sides, import rollover and pressed media through the shared scrollbar, and preserve manual offsets across passive refreshes. Carry the mixed-parent DAT anchor chain to a fixed 18-cell favorite viewport so overflow controls and the Cast button remain inside the retail-sized combat frame. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
02c29e67c8
commit
0134122c28
17 changed files with 424 additions and 59 deletions
|
|
@ -230,24 +230,32 @@ public class DatWidgetFactoryTests
|
|||
const uint IncrementId = 0x10000072u;
|
||||
const uint DecrementSprite = 0x06004CDCu;
|
||||
const uint IncrementSprite = 0x06004CDEu;
|
||||
const uint DecrementRollover = 0x06004CDDu;
|
||||
const uint IncrementRollover = 0x06004CDFu;
|
||||
var decrement = new ElementInfo
|
||||
{
|
||||
Id = DecrementId, Type = 1u, Width = 23f, Height = 36f,
|
||||
Id = DecrementId, Type = 1u, X = 63f, Width = 23f, Height = 36f,
|
||||
};
|
||||
decrement.States[UiStateInfo.DirectStateId] = new UiStateInfo
|
||||
{
|
||||
Id = UiStateInfo.DirectStateId,
|
||||
Image = new UiImageMedia(DecrementSprite, 1),
|
||||
};
|
||||
decrement.StateMedia["Normal"] = (DecrementSprite, 1);
|
||||
decrement.StateMedia["Normal_rollover"] = (DecrementRollover, 1);
|
||||
decrement.StateMedia["Normal_pressed"] = (DecrementSprite, 1);
|
||||
var increment = new ElementInfo
|
||||
{
|
||||
Id = IncrementId, Type = 1u, Width = 23f, Height = 36f,
|
||||
Id = IncrementId, Type = 1u, X = 0f, Width = 23f, Height = 36f,
|
||||
};
|
||||
increment.States[UiStateInfo.DirectStateId] = new UiStateInfo
|
||||
{
|
||||
Id = UiStateInfo.DirectStateId,
|
||||
Image = new UiImageMedia(IncrementSprite, 1),
|
||||
};
|
||||
increment.StateMedia["Normal"] = (IncrementSprite, 1);
|
||||
increment.StateMedia["Normal_rollover"] = (IncrementRollover, 1);
|
||||
increment.StateMedia["Normal_pressed"] = (IncrementSprite, 1);
|
||||
var info = new ElementInfo
|
||||
{
|
||||
Type = 11u,
|
||||
|
|
@ -271,8 +279,12 @@ public class DatWidgetFactoryTests
|
|||
Assert.True(bar.HideWhenDisabled);
|
||||
Assert.Equal(23f, bar.DecrementButtonExtent);
|
||||
Assert.Equal(23f, bar.IncrementButtonExtent);
|
||||
Assert.Equal(DecrementSprite, bar.UpSprite);
|
||||
Assert.Equal(IncrementSprite, bar.DownSprite);
|
||||
Assert.Equal(IncrementSprite, bar.UpSprite);
|
||||
Assert.Equal(IncrementRollover, bar.UpRolloverSprite);
|
||||
Assert.Equal(IncrementSprite, bar.UpPressedSprite);
|
||||
Assert.Equal(DecrementSprite, bar.DownSprite);
|
||||
Assert.Equal(DecrementRollover, bar.DownRolloverSprite);
|
||||
Assert.Equal(DecrementSprite, bar.DownPressedSprite);
|
||||
Assert.Equal(0u, bar.TrackSprite);
|
||||
Assert.Equal(0u, bar.ThumbSprite);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue