refactor(animation): extract live PartArray presenter
Move final live part composition, exact-incarnation schedule handoff, MotionDone binding, and presentation diagnostics out of GameWindow while preserving the retail frame order. Reject stale schedule and completion ABA at the new owner boundary. Co-Authored-By: OpenAI Codex <codex@openai.com>
This commit is contained in:
parent
9760ff5a8d
commit
f004ac5562
14 changed files with 963 additions and 438 deletions
|
|
@ -15,7 +15,7 @@ public sealed class LiveAppearanceAnimationTests
|
|||
var animation = new Animation();
|
||||
var sequencer = new AnimationSequencer(setup, new MotionTable(), new NullLoader());
|
||||
var oldEntity = Entity(0x70000001u, 0x01000001u);
|
||||
var state = new GameWindow.AnimatedEntity
|
||||
var state = new LiveEntityAnimationState
|
||||
{
|
||||
Entity = oldEntity,
|
||||
Setup = setup,
|
||||
|
|
@ -24,7 +24,7 @@ public sealed class LiveAppearanceAnimationTests
|
|||
HighFrame = 9,
|
||||
Framerate = 30f,
|
||||
Scale = 1f,
|
||||
PartTemplate = [new GameWindow.AnimatedPartTemplate(0x01000001u, null, true)],
|
||||
PartTemplate = [new LiveAnimationPartTemplate(0x01000001u, null, true)],
|
||||
PartAvailability = [true],
|
||||
CurrFrame = 6.5f,
|
||||
Sequencer = sequencer,
|
||||
|
|
@ -42,8 +42,8 @@ public sealed class LiveAppearanceAnimationTests
|
|||
setup,
|
||||
1.25f,
|
||||
[
|
||||
new GameWindow.AnimatedPartTemplate(0x01000002u, null, true),
|
||||
new GameWindow.AnimatedPartTemplate(0x01000003u, null, true),
|
||||
new LiveAnimationPartTemplate(0x01000002u, null, true),
|
||||
new LiveAnimationPartTemplate(0x01000003u, null, true),
|
||||
],
|
||||
[true, true]);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue