P3-19 : RIG debug overlay (F6 toggle)

Scope reduced to overlay only — E2E integration test deferred.

Overlay displays current living motion + composite motion, equipped bondage
count, livingAnimations bindings count, active layers w/ priority + anim.
Critical for dev-visible feedback when placeholder identity anims don't
change the visual rig but the pipeline is running correctly.

Keybind : F6 (configurable in Controls menu, category TiedUp!). F6 chosen
because unused by vanilla and preserves F3 for debug screen.

No new accessor needed on Animator — getLivingAnimations() already exists
(returns ImmutableMap.copyOf, safe for debug read). Layer priority reading
falls back on Layer.toString() parsing for composite layers where the
priority field is protected ; base layer uses the public getBaseLayerPriority().

Tests : 6 pure unit tests (toggle flag, null-player branch, motionName on
vanilla+tiedup enums+null). Real render path is MC-runtime-bound and
validated gameday only.
This commit is contained in:
notevil
2026-04-24 00:31:26 +02:00
parent a2bcfe2dda
commit de691e24ec
4 changed files with 496 additions and 1 deletions

View File

@@ -134,6 +134,7 @@
"key.tiedup.bounties": "Bounty List",
"key.tiedup.force_seat": "Force Seat",
"key.tiedup.tighten": "Tighten Binds",
"key.tiedup.rig_debug": "Toggle RIG Debug Overlay",
"gui.tiedup.adjust_position": "Adjust Position",
"gui.tiedup.bondage_inventory": "Bondage Inventory",