Add radial pose menu with hotkeys, remove C cycle hotkey

- PlayerPose: Icon (Sprite) + Title (string) UI properties
- PoseMenu: modal pause overlay building a radial menu from Icon Button
  prefab instances; active pose disabled (hover ring marks it); click
  applies pose via SetPoseIndex and closes
- OverviewMenu: pose button wiring with pause hand-off, Esc/Tab chain
  extended; hotkeys C (toggle pose menu) and V (paint mode) mirroring
  the buttons incl. identical gating
- PlayerPoseController: C cycle hotkey and NextPose() removed

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
adminandClaude Fable 5 committed 2026-07-12 16:17:40 +02:00
1 parent c3d9c06118
commit 3a2e8a7057
5 files changed
+216 -23

No files matched your search

@@ -8,6 +8,13 @@ using UnityEngine;
[CreateAssetMenu(fileName = "NewPose", menuName = "Chameleon/Pose")]
public class PlayerPose : ScriptableObject
{
[Header("UI")]
[Tooltip("Icon shown for this pose in the pose selection menu.")]
[SerializeField] private Sprite icon;
[Tooltip("Display name shown for this pose in the pose selection menu.")]
[SerializeField] private string title;
[Tooltip("Clip held while the player is idle in this pose (looped if the clip itself loops, " +
"otherwise frozen on its last frame). Authored for the paintman generic rig; clips for " +
"other hierarchies will not retarget.")]
@@ -68,6 +75,8 @@ public class PlayerPose : ScriptableObject
[SerializeField] private float firstPersonCameraTargetYOffset;
// Read-only accessors; semantics are documented on the serialized fields' tooltips above.
public Sprite Icon => icon;
public string Title => title;
public AnimationClip Clip => clip;
public float ClipSpeed => clipSpeed;
public AnimationClip WalkClip => walkClip;