@edv4h/usketch-plugin-character 0.5.1 → 0.6.1

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.
package/README.md CHANGED
@@ -84,6 +84,12 @@ createCharacterPlugin({
84
84
  - **Keys**: the jump (Space) and the drift (Shift) have their own keys. The HUD offers
85
85
  a few keys for each (`KEY_CHOICES`: Space, Shift, Z, X, C, J, K, L); `setKeys` takes
86
86
  any `KeyboardEvent.code`s and `getKeys` returns the bindings.
87
+ - **Standing up in 3D**: each spot (and the wrapper around the renderer's content) keeps
88
+ the 3D context (`transform-style: preserve-3d`), so under a 3D view (Mode 7) a
89
+ renderer can stand a flat sprite up out of the tilted ground instead of having it lie
90
+ on it: read the drawn camera from `view3dService` (`@edv4h/usketch-shared`) and turn
91
+ the sprite by `rotateX(-pitch)` around its bottom edge (`transform-origin: bottom`).
92
+ On the flat board `pitch` is 0, so the same renderer draws top-down there.
87
93
  - **Shadow**: pass `renderShadow` to draw a shadow; it is placed on the ground under
88
94
  each character while the body stands at its feet height `z`, so under a 3D view
89
95
  (Mode 7) a jump lifts the body off its shadow. `altitude` (`z - elevation`) lets it
@@ -129,6 +135,12 @@ createCharacterPlugin({
129
135
  down; a bigger drop falls (gravity applies even with jumping off). The render props
130
136
  carry `elevation` (the ground) and `z` (the feet), and under a 3D view (Mode 7) the
131
137
  character is lifted to its feet height.
138
+ - **Solids**: when a plugin provides `solidHeightService` (e.g. shape-3d's shapes with
139
+ a `collision`), its answer is combined with the ground: a wall (`Infinity`) blocks
140
+ every move into it (sliding along it like a cliff), and a finite top is a ledge that
141
+ is stepped or jumped onto and stood on (`blockingHeight` / `standingHeight`). A move
142
+ is checked in stretches of at most `SWEEP_STEP` (4) world units (`sweepToGround`), so
143
+ a fast character or vehicle can't skip a thin wall within one frame.
132
144
  - **Input**: held keys are tracked from window `keydown`/`keyup` (capture phase,
133
145
  `event.code`), swallowed while the character is on so single-letter tool
134
146
  shortcuts don't fire. Typing in text fields, and key chords with Ctrl/Cmd/Alt,
@@ -1 +1 @@
1
- {"version":3,"file":"character-layer.d.ts","sourceRoot":"","sources":["../src/character-layer.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,QAAQ,EAA4C,MAAM,uBAAuB,CAAC;AAEhG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,KAAK,cAAc,EAAgB,MAAM,sBAAsB,CAAC;AA6CzE,wBAAgB,cAAc,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,QAAQ,GACR,EAAE;IACF,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACpB,sCA4GA"}
1
+ {"version":3,"file":"character-layer.d.ts","sourceRoot":"","sources":["../src/character-layer.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,QAAQ,EAA4C,MAAM,uBAAuB,CAAC;AAEhG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,KAAK,cAAc,EAAgB,MAAM,sBAAsB,CAAC;AA0DzE,wBAAgB,cAAc,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,QAAQ,GACR,EAAE;IACF,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACpB,sCA4GA"}
@@ -20,7 +20,18 @@ function Spot({ shadow = false, x, y, lift, renderer, props, }) {
20
20
  height: 0,
21
21
  pointerEvents: "none",
22
22
  transform: lift > 0 ? `translateZ(${lift}px)` : undefined,
23
- }, children: _jsx("div", { style: { position: "absolute", left: 0, top: 0, transform: "translate(-50%, -50%)" }, children: renderer(props) }) }));
23
+ // Keep the 3D context down to the renderer's content, so under a 3D view
24
+ // (Mode 7) a renderer can stand its sprite up out of the ground (e.g.
25
+ // `rotateX(-pitch)` with the pitch from `view3dService`) instead of having it
26
+ // flattened onto the spot's plane. The flat board is unaffected.
27
+ transformStyle: "preserve-3d",
28
+ }, children: _jsx("div", { style: {
29
+ position: "absolute",
30
+ left: 0,
31
+ top: 0,
32
+ transform: "translate(-50%, -50%)",
33
+ transformStyle: "preserve-3d",
34
+ }, children: renderer(props) }) }));
24
35
  }
25
36
  export function CharacterLayer({ store, viewport, heightAt, }) {
26
37
  const state = useSyncExternalStore(store.subscribe, store.getState, store.getState);
@@ -1 +1 @@
1
- {"version":3,"file":"character-layer.js","sourceRoot":"","sources":["../src/character-layer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-layer.js","sourceRoot":"","sources":["../src/character-layer.tsx"],"names":[],"mappings":"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"}
@@ -142,6 +142,18 @@ export declare function inputSteer(input: MoveInput): number;
142
142
  export declare function stepCharacter(pose: CharacterPose, input: MoveInput, dt: number, scheme: ControlScheme, params: MotionParams, cameraRotation?: number, driftParams?: DriftParams | null): CharacterPose;
143
143
  /** Ground height at a world point (world units; see `groundHeightService`). */
144
144
  export type HeightAt = (x: number, y: number) => number;
145
+ /** A solid's top at a world point (see `solidHeightService`): `null` = none, `Infinity` = wall. */
146
+ export type SolidAt = (x: number, y: number) => number | null;
147
+ /**
148
+ * The height a move is checked against (`constrainToGround`): the ground, or a solid
149
+ * standing on it when that is higher — a wall (`Infinity`) always blocks. Pure.
150
+ */
151
+ export declare function blockingHeight(ground: number, solid: number | null): number;
152
+ /**
153
+ * The height the feet stand on (landing, shadow, 3D lift): like {@link blockingHeight}
154
+ * but only a top that can be stood on counts, never a wall. Pure.
155
+ */
156
+ export declare function standingHeight(ground: number, solid: number | null): number;
145
157
  /**
146
158
  * Keep a step from `prev` to `next` on climbable ground: moving onto ground more than
147
159
  * `maxStep` higher than where the character stands is blocked. A blocked move first
@@ -150,6 +162,16 @@ export type HeightAt = (x: number, y: number) => number;
150
162
  * vehicle also loses its speed, as if it bumped the wall). The heading still turns.
151
163
  */
152
164
  export declare function constrainToGround(prev: CharacterPose, next: CharacterPose, heightAt: HeightAt, maxStep: number): CharacterPose;
165
+ /** Longest stretch `sweepToGround` checks in one go, world units: thin walls (a stood-up
166
+ * shape's base) stay solid even when a frame moves farther than they are thick. */
167
+ export declare const SWEEP_STEP = 4;
168
+ /**
169
+ * {@link constrainToGround} over the whole move in stretches of at most `step` world
170
+ * units, so a fast move can't jump over something thinner than itself. Stops at the
171
+ * first stretch that is fully blocked. At most 256 stretches: a move longer than
172
+ * 256 × `step` (far beyond a frame's, whose `dt` the runtime caps) takes longer ones. Pure.
173
+ */
174
+ export declare function sweepToGround(prev: CharacterPose, next: CharacterPose, heightAt: HeightAt, maxStep: number, step?: number): CharacterPose;
153
175
  /**
154
176
  * Jump tuning. The arc is set by its apex `height` and `timeToApex`; gravity and the
155
177
  * take-off speed follow from them (see `jumpArc`).
@@ -1 +1 @@
1
- {"version":3,"file":"character-physics.d.ts","sourceRoot":"","sources":["../src/character-physics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-physics.d.ts","sourceRoot":"","sources":["../src/character-physics.ts"],"names":[],"mappings":"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"}
@@ -168,6 +168,20 @@ export function stepCharacter(pose, input, dt, scheme, params, cameraRotation =
168
168
  hoverGauge: pose.hoverGauge,
169
169
  };
170
170
  }
171
+ /**
172
+ * The height a move is checked against (`constrainToGround`): the ground, or a solid
173
+ * standing on it when that is higher — a wall (`Infinity`) always blocks. Pure.
174
+ */
175
+ export function blockingHeight(ground, solid) {
176
+ return solid !== null && solid > ground ? solid : ground;
177
+ }
178
+ /**
179
+ * The height the feet stand on (landing, shadow, 3D lift): like {@link blockingHeight}
180
+ * but only a top that can be stood on counts, never a wall. Pure.
181
+ */
182
+ export function standingHeight(ground, solid) {
183
+ return solid !== null && Number.isFinite(solid) && solid > ground ? solid : ground;
184
+ }
171
185
  /**
172
186
  * Keep a step from `prev` to `next` on climbable ground: moving onto ground more than
173
187
  * `maxStep` higher than where the character stands is blocked. A blocked move first
@@ -191,6 +205,31 @@ export function constrainToGround(prev, next, heightAt, maxStep) {
191
205
  return { ...next, x: prev.x };
192
206
  return { ...next, x: prev.x, y: prev.y, speed: 0, moving: false };
193
207
  }
208
+ /** Longest stretch `sweepToGround` checks in one go, world units: thin walls (a stood-up
209
+ * shape's base) stay solid even when a frame moves farther than they are thick. */
210
+ export const SWEEP_STEP = 4;
211
+ /**
212
+ * {@link constrainToGround} over the whole move in stretches of at most `step` world
213
+ * units, so a fast move can't jump over something thinner than itself. Stops at the
214
+ * first stretch that is fully blocked. At most 256 stretches: a move longer than
215
+ * 256 × `step` (far beyond a frame's, whose `dt` the runtime caps) takes longer ones. Pure.
216
+ */
217
+ export function sweepToGround(prev, next, heightAt, maxStep, step = SWEEP_STEP) {
218
+ const dx = next.x - prev.x;
219
+ const dy = next.y - prev.y;
220
+ const n = Math.min(256, Math.ceil(Math.hypot(dx, dy) / Math.max(0.5, step)));
221
+ if (n <= 1)
222
+ return constrainToGround(prev, next, heightAt, maxStep);
223
+ let cur = prev;
224
+ for (let i = 0; i < n; i++) {
225
+ const target = { ...next, x: cur.x + dx / n, y: cur.y + dy / n };
226
+ const moved = constrainToGround(cur, target, heightAt, maxStep);
227
+ if (moved.x === cur.x && moved.y === cur.y)
228
+ return moved;
229
+ cur = moved;
230
+ }
231
+ return cur;
232
+ }
194
233
  export const DEFAULT_HOVER = {
195
234
  duration: 1.5,
196
235
  fallSpeed: 15,
@@ -1 +1 @@
1
- {"version":3,"file":"character-physics.js","sourceRoot":"","sources":["../src/character-physics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-physics.js","sourceRoot":"","sources":["../src/character-physics.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"character-runtime.d.ts","sourceRoot":"","sources":["../src/character-runtime.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEN,KAAK,aAAa,EAClB,KAAK,KAAK,EAIV,MAAM,uBAAuB,CAAC;AAqB/B,OAAO,EAAE,KAAK,cAAc,EAAiC,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EACN,KAAK,kBAAkB,EAIvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,aAAa,EAAmB,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAIN,KAAK,YAAY,EAEjB,MAAM,8BAA8B,CAAC;AAEtC,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAG9C,sFAAsF;AACtF,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAiB9C;;;;GAIG;AACH,wBAAgB,UAAU,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkB9D;AAED,MAAM,WAAW,uBAAuB;IACvC,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAChC,qEAAqE;IACrE,aAAa,IAAI,IAAI,CAAC;IACtB,iFAAiF;IACjF,WAAW,IAAI,KAAK,CAAC;IACrB,iFAAiF;IACjF,IAAI,IAAI,IAAI,CAAC;IACb,OAAO,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,OAAO,IAAI,aAAa,CAAC;IACzB,iFAAiF;IACjF,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;IAC3D,eAAe,IAAI,YAAY,GAAG,IAAI,CAAC;IACvC,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,wBAAgB,qBAAqB,CACpC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,uBAAuB,GAC9B,gBAAgB,CA4PlB"}
1
+ {"version":3,"file":"character-runtime.d.ts","sourceRoot":"","sources":["../src/character-runtime.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEN,KAAK,aAAa,EAClB,KAAK,KAAK,EAKV,MAAM,uBAAuB,CAAC;AAwB/B,OAAO,EAAE,KAAK,cAAc,EAAiC,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EACN,KAAK,kBAAkB,EAIvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,aAAa,EAAmB,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAIN,KAAK,YAAY,EAEjB,MAAM,8BAA8B,CAAC;AAEtC,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAG9C,sFAAsF;AACtF,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAiB9C;;;;GAIG;AACH,wBAAgB,UAAU,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkB9D;AAED,MAAM,WAAW,uBAAuB;IACvC,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAChC,qEAAqE;IACrE,aAAa,IAAI,IAAI,CAAC;IACtB,iFAAiF;IACjF,WAAW,IAAI,KAAK,CAAC;IACrB,iFAAiF;IACjF,IAAI,IAAI,IAAI,CAAC;IACb,OAAO,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,OAAO,IAAI,aAAa,CAAC;IACzB,iFAAiF;IACjF,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;IAC3D,eAAe,IAAI,YAAY,GAAG,IAAI,CAAC;IACvC,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,wBAAgB,qBAAqB,CACpC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,uBAAuB,GAC9B,gBAAgB,CAkQlB"}
@@ -2,11 +2,11 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  // The runtime loop: held keys → physics step → follow camera → awareness publish,
3
3
  // plus smoothing of remote characters. One rAF loop that runs only while the local
4
4
  // character is enabled or a remote one is still easing into place.
5
- import { groundHeightService, screenToWorld, viewportRotation, } from "@edv4h/usketch-shared";
5
+ import { groundHeightService, screenToWorld, solidHeightService, viewportRotation, } from "@edv4h/usketch-shared";
6
6
  import { anchorPx, easeFocus, followViewport, sameViewport, smoothingAlpha, targetRotation, } from "./character-camera.js";
7
7
  import { createKeyInput } from "./character-input.js";
8
8
  import { CharacterLayer } from "./character-layer.js";
9
- import { constrainToGround, holdDriftForHop, IDLE_JUMP, stepCharacter, stepVertical, } from "./character-physics.js";
9
+ import { blockingHeight, holdDriftForHop, IDLE_JUMP, standingHeight, stepCharacter, stepVertical, sweepToGround, } from "./character-physics.js";
10
10
  import { driftHopHeight, effectiveJump } from "./character-store.js";
11
11
  import { createCharacterSync, easeRemotes, } from "./character-sync.js";
12
12
  import { combineInput, isVirtualInputActive, normalizeVirtualInput, virtualPresses, } from "./character-virtual-input.js";
@@ -95,7 +95,12 @@ export function setupCharacterRuntime(ctx, store, options) {
95
95
  const anchorPoint = () => anchorPx(store.getState().anchor, cachedCanvasSize());
96
96
  // Ground height from whichever plugin provides it (e.g. the map's raised terrain), looked up
97
97
  // per call so a provider registered later still counts. Absent = flat board.
98
- const heightAt = (x, y) => groundHeightService.get(ctx.services)?.heightAt(x, y) ?? 0;
98
+ const groundAt = (x, y) => groundHeightService.get(ctx.services)?.heightAt(x, y) ?? 0;
99
+ // Solids on the ground (e.g. raised 3D shapes): walls block, tops can be stood on.
100
+ const solidAt = (x, y) => solidHeightService.get(ctx.services)?.heightAt(x, y) ?? null;
101
+ // What a move must clear (walls included) and what the feet stand on (walls excluded).
102
+ const blockAt = (x, y) => blockingHeight(groundAt(x, y), solidAt(x, y));
103
+ const heightAt = (x, y) => standingHeight(groundAt(x, y), solidAt(x, y));
99
104
  const sync = options.awareness
100
105
  ? createCharacterSync(options.awareness, store, () => ensureLoop())
101
106
  : null;
@@ -147,8 +152,9 @@ export function setupCharacterRuntime(ctx, store, options) {
147
152
  const vp = ctx.store.getViewport();
148
153
  const hopHeight = driftHopHeight(s);
149
154
  const stepped = stepCharacter(s.pose, holdDriftForHop(input, s.pose, hopHeight), dt, s.controlScheme, s.motion, viewportRotation(vp), s.drift);
150
- // Cliffs taller than the climbable step block the move (slide along them).
151
- const moved = constrainToGround(s.pose, stepped, heightAt, s.motion.maxStep);
155
+ // Cliffs taller than the climbable step and walls block the move (slide along
156
+ // them), checked in short stretches so a fast move can't skip a thin wall.
157
+ const moved = sweepToGround(s.pose, stepped, blockAt, s.motion.maxStep);
152
158
  // Then up and down: jumps, falls off cliffs, landings.
153
159
  const vertical = stepVertical(moved, jumpTimers, input, dt, heightAt(moved.x, moved.y), s.motion.maxStep, effectiveJump(s), hopHeight);
154
160
  jumpTimers = vertical.timers;
@@ -1 +1 @@
1
- {"version":3,"file":"character-runtime.js","sourceRoot":"","sources":["../src/character-runtime.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-runtime.js","sourceRoot":"","sources":["../src/character-runtime.tsx"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { anchorPx, type CameraFocus, type CameraMode, easeFocus, followViewport, smoothingAlpha, targetRotation, } from "./character-camera.js";
2
2
  export { KEY_CHOICES, type KeyChoice, keyChoiceOf, withKeyChoice, } from "./character-key-choices.js";
3
- export { airJumpSpeed, type CharacterPose, type ControlScheme, DEFAULT_DRIFT, DEFAULT_HOVER, DEFAULT_JUMP, DEFAULT_MOTION, type DriftParams, drainHoverGauge, type HoverParams, headingVector, IDLE_JUMP, inputSteer, inputThrottle, type JumpParams, type JumpTimers, jumpArc, type MotionParams, type MoveInput, ORIGIN_POSE, rechargeHoverGauge, stepCharacter, stepVertical, turnToward, vectorHeading, } from "./character-physics.js";
3
+ export { airJumpSpeed, blockingHeight, type CharacterPose, type ControlScheme, DEFAULT_DRIFT, DEFAULT_HOVER, DEFAULT_JUMP, DEFAULT_MOTION, type DriftParams, drainHoverGauge, type HoverParams, headingVector, IDLE_JUMP, inputSteer, inputThrottle, type JumpParams, type JumpTimers, jumpArc, type MotionParams, type MoveInput, ORIGIN_POSE, rechargeHoverGauge, type SolidAt, SWEEP_STEP, standingHeight, stepCharacter, stepVertical, sweepToGround, turnToward, vectorHeading, } from "./character-physics.js";
4
4
  export { CHARACTER_LAYER_ID, CHARACTER_VIEWPORT_PRIORITY } from "./character-runtime.js";
5
5
  export { type CharacterApi, characterService, getCharacterApi, } from "./character-service.js";
6
6
  export { effectiveJump, hoverGaugeOf, type JumpInit, MAX_AIR_JUMPS, sanitizeHover, sanitizeJump, } from "./character-store.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,SAAS,EACT,cAAc,EACd,cAAc,EACd,cAAc,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACN,WAAW,EACX,KAAK,SAAS,EACd,WAAW,EACX,aAAa,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,KAAK,WAAW,EAChB,eAAe,EACf,KAAK,WAAW,EAChB,aAAa,EACb,SAAS,EACT,UAAU,EACV,aAAa,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EACf,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,UAAU,EACV,aAAa,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EACN,KAAK,YAAY,EACjB,gBAAgB,EAChB,eAAe,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,aAAa,EACb,YAAY,EACZ,KAAK,QAAQ,EACb,aAAa,EACb,aAAa,EACb,YAAY,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,eAAe,EACf,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,YAAY,EACZ,KAAK,eAAe,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,YAAY,EACjB,cAAc,GACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,SAAS,EACT,cAAc,EACd,cAAc,EACd,cAAc,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACN,WAAW,EACX,KAAK,SAAS,EACd,WAAW,EACX,aAAa,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,YAAY,EACZ,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,KAAK,WAAW,EAChB,eAAe,EACf,KAAK,WAAW,EAChB,aAAa,EACb,SAAS,EACT,UAAU,EACV,aAAa,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EACf,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,WAAW,EACX,kBAAkB,EAClB,KAAK,OAAO,EACZ,UAAU,EACV,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,UAAU,EACV,aAAa,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EACN,KAAK,YAAY,EACjB,gBAAgB,EAChB,eAAe,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,aAAa,EACb,YAAY,EACZ,KAAK,QAAQ,EACb,aAAa,EACb,aAAa,EACb,YAAY,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,eAAe,EACf,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,YAAY,EACZ,KAAK,eAAe,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,YAAY,EACjB,cAAc,GACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export { anchorPx, easeFocus, followViewport, smoothingAlpha, targetRotation, } from "./character-camera.js";
2
2
  export { KEY_CHOICES, keyChoiceOf, withKeyChoice, } from "./character-key-choices.js";
3
- export { airJumpSpeed, DEFAULT_DRIFT, DEFAULT_HOVER, DEFAULT_JUMP, DEFAULT_MOTION, drainHoverGauge, headingVector, IDLE_JUMP, inputSteer, inputThrottle, jumpArc, ORIGIN_POSE, rechargeHoverGauge, stepCharacter, stepVertical, turnToward, vectorHeading, } from "./character-physics.js";
3
+ export { airJumpSpeed, blockingHeight, DEFAULT_DRIFT, DEFAULT_HOVER, DEFAULT_JUMP, DEFAULT_MOTION, drainHoverGauge, headingVector, IDLE_JUMP, inputSteer, inputThrottle, jumpArc, ORIGIN_POSE, rechargeHoverGauge, SWEEP_STEP, standingHeight, stepCharacter, stepVertical, sweepToGround, turnToward, vectorHeading, } from "./character-physics.js";
4
4
  export { CHARACTER_LAYER_ID, CHARACTER_VIEWPORT_PRIORITY } from "./character-runtime.js";
5
5
  export { characterService, getCharacterApi, } from "./character-service.js";
6
6
  export { effectiveJump, hoverGaugeOf, MAX_AIR_JUMPS, sanitizeHover, sanitizeJump, } from "./character-store.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EAGR,SAAS,EACT,cAAc,EACd,cAAc,EACd,cAAc,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACN,WAAW,EAEX,WAAW,EACX,aAAa,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,YAAY,EAGZ,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EAEd,eAAe,EAEf,aAAa,EACb,SAAS,EACT,UAAU,EACV,aAAa,EAGb,OAAO,EAGP,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,UAAU,EACV,aAAa,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAEN,gBAAgB,EAChB,eAAe,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,aAAa,EACb,YAAY,EAEZ,aAAa,EACb,aAAa,EACb,YAAY,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,eAAe,EAGf,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAKN,YAAY,GAEZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EAErB,cAAc,GACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAA+B,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EAGR,SAAS,EACT,cAAc,EACd,cAAc,EACd,cAAc,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACN,WAAW,EAEX,WAAW,EACX,aAAa,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,YAAY,EACZ,cAAc,EAGd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EAEd,eAAe,EAEf,aAAa,EACb,SAAS,EACT,UAAU,EACV,aAAa,EAGb,OAAO,EAGP,WAAW,EACX,kBAAkB,EAElB,UAAU,EACV,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,UAAU,EACV,aAAa,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAEN,gBAAgB,EAChB,eAAe,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,aAAa,EACb,YAAY,EAEZ,aAAa,EACb,aAAa,EACb,YAAY,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,eAAe,EAGf,cAAc,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAKN,YAAY,GAEZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACN,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EAErB,cAAc,GACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAA+B,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edv4h/usketch-plugin-character",
3
- "version": "0.5.1",
3
+ "version": "0.6.1",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -12,7 +12,7 @@
12
12
  }
13
13
  },
14
14
  "dependencies": {
15
- "@edv4h/usketch-shared": "4.20.0"
15
+ "@edv4h/usketch-shared": "4.21.0"
16
16
  },
17
17
  "peerDependencies": {
18
18
  "react": ">=19"