ugly-app 0.1.1003 → 0.1.1005

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/character/client/CharacterCanvas.d.ts +6 -1
  2. package/dist/character/client/CharacterCanvas.d.ts.map +1 -1
  3. package/dist/character/client/CharacterCanvas.js +28 -5
  4. package/dist/character/client/CharacterCanvas.js.map +1 -1
  5. package/dist/character/client/CharacterCreator.d.ts.map +1 -1
  6. package/dist/character/client/CharacterCreator.js +101 -10
  7. package/dist/character/client/CharacterCreator.js.map +1 -1
  8. package/dist/character/client/index.d.ts +1 -0
  9. package/dist/character/client/index.d.ts.map +1 -1
  10. package/dist/character/client/index.js.map +1 -1
  11. package/dist/character/client/lib/characterDebugOverlay.d.ts +7 -0
  12. package/dist/character/client/lib/characterDebugOverlay.d.ts.map +1 -1
  13. package/dist/character/client/lib/characterDebugOverlay.js +8 -0
  14. package/dist/character/client/lib/characterDebugOverlay.js.map +1 -1
  15. package/dist/character/client/lib/characterScene.d.ts +5 -0
  16. package/dist/character/client/lib/characterScene.d.ts.map +1 -1
  17. package/dist/character/client/lib/characterScene.js +5 -0
  18. package/dist/character/client/lib/characterScene.js.map +1 -1
  19. package/dist/character/client/lib/previewCharacterController.d.ts +55 -2
  20. package/dist/character/client/lib/previewCharacterController.d.ts.map +1 -1
  21. package/dist/character/client/lib/previewCharacterController.js +225 -28
  22. package/dist/character/client/lib/previewCharacterController.js.map +1 -1
  23. package/dist/character/client/lib/tryOutInput.d.ts +12 -0
  24. package/dist/character/client/lib/tryOutInput.d.ts.map +1 -1
  25. package/dist/character/client/lib/tryOutInput.js +13 -0
  26. package/dist/character/client/lib/tryOutInput.js.map +1 -1
  27. package/dist/character/game/index.d.ts +22 -0
  28. package/dist/character/game/index.d.ts.map +1 -1
  29. package/dist/character/game/index.js +163 -16
  30. package/dist/character/game/index.js.map +1 -1
  31. package/dist/character/shared/canonicalFixture.d.ts +41 -0
  32. package/dist/character/shared/canonicalFixture.d.ts.map +1 -0
  33. package/dist/character/shared/canonicalFixture.js +128 -0
  34. package/dist/character/shared/canonicalFixture.js.map +1 -0
  35. package/dist/character/shared/index.d.ts +2 -0
  36. package/dist/character/shared/index.d.ts.map +1 -1
  37. package/dist/character/shared/index.js +1 -0
  38. package/dist/character/shared/index.js.map +1 -1
  39. package/dist/cli/version.d.ts +1 -1
  40. package/dist/cli/version.js +1 -1
  41. package/package.json +1 -1
  42. package/src/character/client/CharacterCanvas.tsx +41 -6
  43. package/src/character/client/CharacterCreator.tsx +122 -17
  44. package/src/character/client/index.ts +6 -0
  45. package/src/character/client/lib/characterDebugOverlay.ts +15 -0
  46. package/src/character/client/lib/characterScene.ts +10 -0
  47. package/src/character/client/lib/previewCharacterController.ts +271 -26
  48. package/src/character/client/lib/tryOutInput.ts +26 -0
  49. package/src/character/game/index.ts +188 -18
  50. package/src/character/shared/canonicalFixture.ts +157 -0
  51. package/src/character/shared/index.ts +13 -0
  52. package/src/cli/version.ts +1 -1
@@ -3,6 +3,7 @@ import type { CharKitFacts } from '../shared/lib/charSpec.js';
3
3
  import { type FbxClipIndex } from './lib/fbxClips.js';
4
4
  import type { CharacterKitSource } from './lib/kitSource.js';
5
5
  import { type CharacterTrace, type GameCharacter, type ReplayCharacterTraceResult } from '../game/index.js';
6
+ import { type PreviewCharacterControllerIR, type PreviewControlIntent } from './lib/previewCharacterController.js';
6
7
  /** The framings the canvas knows. `full` head-to-toe, `head` shoulders-up, `face` for a thumbnail. */
7
8
  export type CharacterCameraPreset = 'full' | 'head' | 'face';
8
9
  export interface CharacterCanvasProps {
@@ -72,8 +73,12 @@ export interface CharacterCanvasHandle {
72
73
  }): void;
73
74
  /** The same actor used by a game; available after WebGPU initialization. */
74
75
  character(): GameCharacter | null;
75
- /** Restore the creator's collision-free Try Out room to its spawn state. */
76
+ /** Restore the deterministic Stage 1 Try Out room to its spawn state. */
76
77
  resetTryOut(): void;
78
+ /** Apply one held-input sample to the deterministic Stage 1 test-room controller. */
79
+ setTryOutControl(control: PreviewControlIntent): void;
80
+ /** Preview-only KCC/contact diagnostics shown beside the public actor IR. */
81
+ tryOutControllerIR(): PreviewCharacterControllerIR | null;
77
82
  /** Move relative to the actor's current facing through `GameCharacter.moveTo()`. */
78
83
  moveTryOut(direction: 'forward' | 'back' | 'left' | 'right', speed: 'walk' | 'run'): void;
79
84
  /** Turn the preview controller in place; games normally obtain this from their KCC. */
@@ -1 +1 @@
1
- {"version":3,"file":"CharacterCanvas.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CharacterCanvas.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"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"}
@@ -28,7 +28,7 @@ import { loadGarments } from './lib/charGarment.js';
28
28
  import { makeGarmentCache } from './lib/skinTextures.js';
29
29
  import { fbxClipNames, loadFbxClip, } from './lib/fbxClips.js';
30
30
  import { createGameCharacterWorld, replayCharacterTrace, } from '../game/index.js';
31
- import { PreviewCharacterController } from './lib/previewCharacterController.js';
31
+ import { PreviewCharacterController, PREVIEW_TEST_ROOM, } from './lib/previewCharacterController.js';
32
32
  import { buildCharacterDebugOverlay, } from './lib/characterDebugOverlay.js';
33
33
  /**
34
34
  * The loading cover's own two rules.
@@ -458,14 +458,14 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
458
458
  nowMs - debugUpdateMsRef.current >= 100) {
459
459
  debugUpdateMsRef.current = nowMs;
460
460
  const transform = actor.getTransform();
461
+ const controllerIR = controller.inspect();
461
462
  setDebugOverlay(buildCharacterDebugOverlay({
462
463
  root: transform.position,
463
464
  up: transform.up,
464
465
  grounded: actor.state.grounded,
465
- capsule: {
466
- radiusM: Math.max(0.2, scene.bodyHeight * 0.18),
467
- heightM: scene.bodyHeight,
468
- },
466
+ capsule: controllerIR.capsule,
467
+ obstacle: PREVIEW_TEST_ROOM.obstacle,
468
+ controllerContact: controllerIR.contact,
469
469
  sockets: scene.debugRigReport().sockets,
470
470
  }, camVP, c.clientWidth || 640, c.clientHeight || 480));
471
471
  }
@@ -572,7 +572,30 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
572
572
  st.actor.stopMoving('try out reset');
573
573
  st.actor.stopAnimation('try out reset');
574
574
  st.controller.reset();
575
+ // Reset is also the boundary of a new replayable diagnostic epoch. A
576
+ // long-running preview may have truncated its bounded boot history.
577
+ st.world.clearTrace();
575
578
  },
579
+ setTryOutControl: (control) => {
580
+ const st = gpuRef.current;
581
+ if (!st)
582
+ return;
583
+ st.actor.stopMoving('manual try out control');
584
+ st.controller.setControlIntent(control);
585
+ const moving = control.forward !== 0 || control.strafe !== 0;
586
+ const gait = animsRef.current
587
+ ? fbxClipNames(animsRef.current).find((id) => id.toLowerCase().includes(control.speed))
588
+ : undefined;
589
+ if (moving && gait && st.actor.state.animation?.id !== gait)
590
+ st.actor.playAnimation(gait, { loop: true, layer: 'fullBody' });
591
+ if (!moving) {
592
+ const active = st.actor.state.animation?.id;
593
+ if (active &&
594
+ ['walk', 'run'].some((name) => active.toLowerCase().includes(name)))
595
+ st.actor.stopAnimation('manual movement ended');
596
+ }
597
+ },
598
+ tryOutControllerIR: () => gpuRef.current?.controller.inspect() ?? null,
576
599
  moveTryOut: (direction, speed) => {
577
600
  const st = gpuRef.current;
578
601
  if (!st)
@@ -1 +1 @@
1
- {"version":3,"file":"CharacterCanvas.js","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CharacterCanvas.js","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CharacterCreator.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCreator.tsx"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAyBvE,OAAO,EAA0B,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAU/E,uEAAuE;AACvE,MAAM,MAAM,iBAAiB,GAC3B,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtE,iGAAiG;AACjG,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAID,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,oGAAoG;AACpG,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,kFAAkF;IAClF,MAAM,EAAE,kBAAkB,CAAC;IAC3B,+FAA+F;IAC/F,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;IACrD,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAChE;;;;OAIG;IACH,MAAM,CAAC,EACH,CAAC,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GACtE,SAAS,CAAC;IACd;;;;OAIG;IACH,iBAAiB,CAAC,EACd,CAAC,CACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,KACd,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC,GAC5C,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AA+wBD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,KAAK,EACL,WAAW,EACX,WAAW,EACX,MAAM,EACN,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,SAAS,GACV,EAAE,qBAAqB,+BAwjDvB"}
1
+ {"version":3,"file":"CharacterCreator.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCreator.tsx"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAyBvE,OAAO,EAA0B,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAW/E,uEAAuE;AACvE,MAAM,MAAM,iBAAiB,GAC3B,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtE,iGAAiG;AACjG,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAID,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,oGAAoG;AACpG,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,kFAAkF;IAClF,MAAM,EAAE,kBAAkB,CAAC;IAC3B,+FAA+F;IAC/F,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;IACrD,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAChE;;;;OAIG;IACH,MAAM,CAAC,EACH,CAAC,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GACtE,SAAS,CAAC;IACd;;;;OAIG;IACH,iBAAiB,CAAC,EACd,CAAC,CACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,KACd,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC,GAC5C,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AA+wBD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,KAAK,EACL,WAAW,EACX,WAAW,EACX,MAAM,EACN,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,SAAS,GACV,EAAE,qBAAqB,+BA+pDvB"}
@@ -38,7 +38,7 @@ import { CHAR_MATERIALS, GLASS_ALPHA, } from '../shared/lib/charMaterial.js';
38
38
  import { DEFAULT_CHARACTER_SPEC } from '../shared/spec.js';
39
39
  import { randomCharacterSpec, pickVoiceId } from '../shared/lib/randomSpec.js';
40
40
  import { sanitizeSpec } from '../shared/specAdapter.js';
41
- import { dispatchTryOutIntent, tryOutIntentForKey, } from './lib/tryOutInput.js';
41
+ import { dispatchTryOutIntent, tryOutControlForKeys, } from './lib/tryOutInput.js';
42
42
  /* ============================== option presets ============================== */
43
43
  //
44
44
  // The friendly stops the Body panel offers. Each is one point on a macro axis, not a new
@@ -741,6 +741,8 @@ export function CharacterCreator({ source, anims, initialSpec, initialName, voic
741
741
  const [tryIr, setTryIr] = useState('Preview is starting…');
742
742
  const [tryReplayStatus, setTryReplayStatus] = useState('');
743
743
  const [tryDebugOverlays, setTryDebugOverlays] = useState(true);
744
+ const tryHeldKeys = useRef(new Set());
745
+ const tryHeldButtons = useRef(new Set());
744
746
  // The ancestry blend starts folded away: the four tiles are the answer for almost everybody,
745
747
  // and three sliders open by default make the Body panel read as a settings screen.
746
748
  const [blendOpen, setBlendOpen] = useState(false);
@@ -1043,19 +1045,25 @@ export function CharacterCreator({ source, anims, initialSpec, initialName, voic
1043
1045
  void speech.play(`Hi, I'm ${name.trim() || 'your new character'}. This is the voice you picked for me.`);
1044
1046
  };
1045
1047
  const refreshTryIr = useCallback(() => {
1046
- const ir = canvasRef.current?.character()?.inspect();
1048
+ const handle = canvasRef.current;
1049
+ const ir = handle?.character()?.inspect();
1047
1050
  if (!ir) {
1048
1051
  setTryIr('Preview is starting…');
1049
1052
  return;
1050
1053
  }
1054
+ const controller = handle?.tryOutControllerIR() ?? null;
1051
1055
  setTryIr(JSON.stringify({
1052
1056
  position: ir.spatial.position.map((v) => Number(v.toFixed(2))),
1053
1057
  orientation: ir.spatial.rotation.map((v) => Number(v.toFixed(3))),
1054
1058
  up: ir.spatial.up,
1055
1059
  velocity: ir.spatial.velocity.map((v) => Number(v.toFixed(2))),
1056
1060
  grounded: ir.spatial.grounded,
1057
- motion: ir.motion.action,
1061
+ motion: controller && controller.locomotion !== 'idle'
1062
+ ? controller.locomotion
1063
+ : ir.motion.action,
1064
+ controller,
1058
1065
  animation: ir.animation,
1066
+ animations: ir.animations,
1059
1067
  render: ir.render,
1060
1068
  findings: ir.findings.map((f) => f.code),
1061
1069
  }, null, 2));
@@ -1070,25 +1078,98 @@ export function CharacterCreator({ source, anims, initialSpec, initialName, voic
1070
1078
  useEffect(() => {
1071
1079
  if (category !== 'tryout' || tryMode !== 'control')
1072
1080
  return;
1081
+ const applyKeys = () => {
1082
+ dispatchTryOutIntent(canvasRef.current, {
1083
+ type: 'control',
1084
+ control: tryOutControlForKeys(tryHeldKeys.current, trySpeed),
1085
+ });
1086
+ };
1073
1087
  const onKeyDown = (event) => {
1074
1088
  const target = event.target;
1075
1089
  if (target instanceof Element &&
1076
1090
  target.matches('input, textarea, select, [contenteditable="true"]'))
1077
1091
  return;
1078
- const intent = tryOutIntentForKey(event, trySpeed);
1079
- if (!intent)
1092
+ const key = event.key.toLowerCase();
1093
+ if (event.code === 'Space' || event.key === ' ') {
1094
+ event.preventDefault();
1095
+ if (!event.repeat)
1096
+ dispatchTryOutIntent(canvasRef.current, { type: 'jump' });
1097
+ return;
1098
+ }
1099
+ if (!['w', 'a', 's', 'd', 'arrowleft', 'arrowright', 'shift'].includes(key))
1100
+ return;
1101
+ event.preventDefault();
1102
+ tryHeldKeys.current.add(key);
1103
+ applyKeys();
1104
+ };
1105
+ const onKeyUp = (event) => {
1106
+ const key = event.key.toLowerCase();
1107
+ if (!tryHeldKeys.current.delete(key))
1080
1108
  return;
1081
1109
  event.preventDefault();
1082
- dispatchTryOutIntent(canvasRef.current, intent);
1110
+ applyKeys();
1111
+ };
1112
+ const release = () => {
1113
+ tryHeldKeys.current.clear();
1114
+ dispatchTryOutIntent(canvasRef.current, {
1115
+ type: 'control',
1116
+ control: tryOutControlForKeys([], trySpeed),
1117
+ });
1083
1118
  };
1084
1119
  window.addEventListener('keydown', onKeyDown);
1085
- return () => window.removeEventListener('keydown', onKeyDown);
1120
+ window.addEventListener('keyup', onKeyUp);
1121
+ window.addEventListener('blur', release);
1122
+ return () => {
1123
+ window.removeEventListener('keydown', onKeyDown);
1124
+ window.removeEventListener('keyup', onKeyUp);
1125
+ window.removeEventListener('blur', release);
1126
+ release();
1127
+ };
1086
1128
  }, [category, tryMode, trySpeed]);
1087
1129
  const sendTryIntent = (intent) => {
1088
1130
  dispatchTryOutIntent(canvasRef.current, intent);
1089
1131
  refreshTryIr();
1090
1132
  };
1091
- const tryMove = (direction) => sendTryIntent({ type: 'move', direction, speed: trySpeed });
1133
+ const pointerControl = () => ({
1134
+ forward: Number(tryHeldButtons.current.has('forward')) -
1135
+ Number(tryHeldButtons.current.has('back')),
1136
+ strafe: Number(tryHeldButtons.current.has('right')) -
1137
+ Number(tryHeldButtons.current.has('left')),
1138
+ turn: Number(tryHeldButtons.current.has('turn-right')) -
1139
+ Number(tryHeldButtons.current.has('turn-left')),
1140
+ speed: trySpeed,
1141
+ });
1142
+ const setPointerControl = (control, pressed) => {
1143
+ if (pressed)
1144
+ tryHeldButtons.current.add(control);
1145
+ else
1146
+ tryHeldButtons.current.delete(control);
1147
+ sendTryIntent({ type: 'control', control: pointerControl() });
1148
+ };
1149
+ const tryControlPointerHandlers = (control) => ({
1150
+ onPointerDown: (event) => {
1151
+ event.preventDefault();
1152
+ event.currentTarget.setPointerCapture?.(event.pointerId);
1153
+ setPointerControl(control, true);
1154
+ },
1155
+ onPointerUp: (event) => {
1156
+ event.preventDefault();
1157
+ if (event.currentTarget.hasPointerCapture?.(event.pointerId))
1158
+ event.currentTarget.releasePointerCapture?.(event.pointerId);
1159
+ setPointerControl(control, false);
1160
+ },
1161
+ onPointerCancel: () => setPointerControl(control, false),
1162
+ onLostPointerCapture: () => setPointerControl(control, false),
1163
+ });
1164
+ useEffect(() => {
1165
+ if (category === 'tryout' && tryMode === 'control')
1166
+ return;
1167
+ tryHeldButtons.current.clear();
1168
+ dispatchTryOutIntent(canvasRef.current, {
1169
+ type: 'control',
1170
+ control: { forward: 0, strafe: 0, turn: 0, speed: trySpeed },
1171
+ });
1172
+ }, [category, tryMode, trySpeed]);
1092
1173
  const trySpeak = () => {
1093
1174
  if (speech.playing) {
1094
1175
  speech.stop();
@@ -1207,11 +1288,21 @@ export function CharacterCreator({ source, anims, initialSpec, initialName, voic
1207
1288
  width: '100%',
1208
1289
  resize: 'vertical',
1209
1290
  boxSizing: 'border-box',
1210
- } }), _jsx("button", { type: "button", "data-id": "tryout-speak", "aria-label": "Speak try out text", className: "ucc-btn-primary ucc-btn-sm", style: { marginTop: 8 }, onClick: trySpeak, children: speech.playing ? 'Stop speaking' : 'Speak' })] })), tryMode === 'control' && (_jsxs(Sect, { eyebrow: "Control", children: [_jsx("div", { style: { display: 'flex', gap: 8, marginBottom: 10 }, children: ['walk', 'run'].map((speed) => (_jsx("button", { type: "button", "data-id": `tryout-speed-${speed}`, "aria-pressed": trySpeed === speed, className: "ucc-btn-ghost ucc-btn-sm", onClick: () => setTrySpeed(speed), children: friendlyId(speed) }, speed))) }), _jsxs("div", { "data-id": "tryout-movement-controls", style: {
1291
+ } }), _jsx("button", { type: "button", "data-id": "tryout-speak", "aria-label": "Speak try out text", className: "ucc-btn-primary ucc-btn-sm", style: { marginTop: 8 }, onClick: trySpeak, children: speech.playing ? 'Stop speaking' : 'Speak' })] })), tryMode === 'control' && (_jsxs(Sect, { eyebrow: "Control", children: [_jsx("div", { style: { display: 'flex', gap: 8, marginBottom: 10 }, children: ['walk', 'run'].map((speed) => (_jsx("button", { type: "button", "data-id": `tryout-speed-${speed}`, "aria-pressed": trySpeed === speed, className: "ucc-btn-ghost ucc-btn-sm", onClick: () => {
1292
+ setTrySpeed(speed);
1293
+ sendTryIntent({
1294
+ type: 'control',
1295
+ control: { ...pointerControl(), speed },
1296
+ });
1297
+ }, children: friendlyId(speed) }, speed))) }), _jsxs("div", { "data-id": "tryout-movement-controls", style: {
1211
1298
  display: 'grid',
1212
1299
  gridTemplateColumns: 'repeat(3, 1fr)',
1213
1300
  gap: 7,
1214
- }, children: [_jsx("span", {}), _jsx("button", { type: "button", "data-id": "tryout-forward", "aria-label": "Move forward", className: "ucc-btn-ghost ucc-btn-sm", onClick: () => tryMove('forward'), children: "\u2191" }), _jsx("span", {}), _jsx("button", { type: "button", "data-id": "tryout-left", "aria-label": "Strafe left", className: "ucc-btn-ghost ucc-btn-sm", onClick: () => tryMove('left'), children: "\u2190" }), _jsx("button", { type: "button", "data-id": "tryout-back", "aria-label": "Move backward", className: "ucc-btn-ghost ucc-btn-sm", onClick: () => tryMove('back'), children: "\u2193" }), _jsx("button", { type: "button", "data-id": "tryout-right", "aria-label": "Strafe right", className: "ucc-btn-ghost ucc-btn-sm", onClick: () => tryMove('right'), children: "\u2192" }), _jsx("button", { type: "button", "data-id": "tryout-turn-left", "aria-label": "Turn left", className: "ucc-btn-ghost ucc-btn-sm", onClick: () => sendTryIntent({ type: 'turn', deltaDeg: -30 }), children: "\u21B6" }), _jsx("button", { type: "button", "data-id": "tryout-jump", "aria-label": "Jump", className: "ucc-btn-primary ucc-btn-sm", onClick: () => sendTryIntent({ type: 'jump' }), children: "Jump" }), _jsx("button", { type: "button", "data-id": "tryout-turn-right", "aria-label": "Turn right", className: "ucc-btn-ghost ucc-btn-sm", onClick: () => sendTryIntent({ type: 'turn', deltaDeg: 30 }), children: "\u21B7" })] }), _jsx("button", { type: "button", "data-id": "tryout-reset", className: "ucc-btn-ghost ucc-btn-sm", style: { marginTop: 8 }, onClick: () => sendTryIntent({ type: 'reset' }), children: "Reset room" }), _jsx("button", { type: "button", "data-id": "tryout-debug-overlays", "aria-pressed": tryDebugOverlays, className: "ucc-btn-ghost ucc-btn-sm", style: { marginTop: 8, marginLeft: 7 }, onClick: () => setTryDebugOverlays((shown) => !shown), children: tryDebugOverlays ? 'Hide diagnostics' : 'Show diagnostics' })] })), tryMode === 'animations' && (_jsxs(Sect, { eyebrow: "Animations", children: [_jsxs("div", { style: {
1301
+ }, children: [_jsx("span", {}), _jsx("button", { type: "button", "data-id": "tryout-forward", "aria-label": "Move forward", className: "ucc-btn-ghost ucc-btn-sm", ...tryControlPointerHandlers('forward'), children: "\u2191" }), _jsx("span", {}), _jsx("button", { type: "button", "data-id": "tryout-left", "aria-label": "Strafe left", className: "ucc-btn-ghost ucc-btn-sm", ...tryControlPointerHandlers('left'), children: "\u2190" }), _jsx("button", { type: "button", "data-id": "tryout-back", "aria-label": "Move backward", className: "ucc-btn-ghost ucc-btn-sm", ...tryControlPointerHandlers('back'), children: "\u2193" }), _jsx("button", { type: "button", "data-id": "tryout-right", "aria-label": "Strafe right", className: "ucc-btn-ghost ucc-btn-sm", ...tryControlPointerHandlers('right'), children: "\u2192" }), _jsx("button", { type: "button", "data-id": "tryout-turn-left", "aria-label": "Turn left", className: "ucc-btn-ghost ucc-btn-sm", ...tryControlPointerHandlers('turn-left'), children: "\u21B6" }), _jsx("button", { type: "button", "data-id": "tryout-jump", "aria-label": "Jump", className: "ucc-btn-primary ucc-btn-sm", onClick: () => sendTryIntent({ type: 'jump' }), children: "Jump" }), _jsx("button", { type: "button", "data-id": "tryout-turn-right", "aria-label": "Turn right", className: "ucc-btn-ghost ucc-btn-sm", ...tryControlPointerHandlers('turn-right'), children: "\u21B7" })] }), _jsx("button", { type: "button", "data-id": "tryout-reset", className: "ucc-btn-ghost ucc-btn-sm", style: { marginTop: 8 }, onClick: () => {
1302
+ tryHeldButtons.current.clear();
1303
+ tryHeldKeys.current.clear();
1304
+ sendTryIntent({ type: 'reset' });
1305
+ }, children: "Reset room" }), _jsx("button", { type: "button", "data-id": "tryout-debug-overlays", "aria-pressed": tryDebugOverlays, className: "ucc-btn-ghost ucc-btn-sm", style: { marginTop: 8, marginLeft: 7 }, onClick: () => setTryDebugOverlays((shown) => !shown), children: tryDebugOverlays ? 'Hide diagnostics' : 'Show diagnostics' })] })), tryMode === 'animations' && (_jsxs(Sect, { eyebrow: "Animations", children: [_jsxs("div", { style: {
1215
1306
  display: 'grid',
1216
1307
  gridTemplateColumns: '1fr 1fr',
1217
1308
  gap: 8,