@oidoid/void 0.1.8 → 0.1.10

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 (78) hide show
  1. package/dist/public/atlas.webp +0 -0
  2. package/dist/public/index.js +84 -21
  3. package/dist/public/index.js.map +4 -4
  4. package/dist/public/void-v0.1.10+20260107.d15e519.html +178 -0
  5. package/dist/schema/level-file.v0.json +74 -75
  6. package/dist/src/demo/assets/void.game.json +24 -21
  7. package/dist/src/demo/ents/cam.js +1 -1
  8. package/dist/src/demo/ents/cam.js.map +1 -1
  9. package/dist/src/demo/ents/ent.d.ts +3 -0
  10. package/dist/src/demo/ents/ent.d.ts.map +1 -1
  11. package/dist/src/demo/ents/render-toggle.d.ts.map +1 -1
  12. package/dist/src/demo/ents/render-toggle.js +19 -0
  13. package/dist/src/demo/ents/render-toggle.js.map +1 -1
  14. package/dist/src/demo/ents/rotate.d.ts +11 -0
  15. package/dist/src/demo/ents/rotate.d.ts.map +1 -0
  16. package/dist/src/demo/ents/rotate.js +9 -0
  17. package/dist/src/demo/ents/rotate.js.map +1 -0
  18. package/dist/src/demo/level/level-file.v0.json +74 -75
  19. package/dist/src/demo/level/level-parser.d.ts.map +1 -1
  20. package/dist/src/demo/level/level-parser.js +1 -0
  21. package/dist/src/demo/level/level-parser.js.map +1 -1
  22. package/dist/src/demo/level/level-schema.d.ts +3 -0
  23. package/dist/src/demo/level/level-schema.d.ts.map +1 -1
  24. package/dist/src/demo/level/loader.d.ts.map +1 -1
  25. package/dist/src/demo/level/loader.js +2 -0
  26. package/dist/src/demo/level/loader.js.map +1 -1
  27. package/dist/src/demo/level/schema.json +15 -0
  28. package/dist/src/demo/level/tags.json +3 -1
  29. package/dist/src/demo/types/decl.d.ts +4 -2
  30. package/dist/src/demo/types/decl.d.ts.map +1 -1
  31. package/dist/src/ents/button.d.ts.map +1 -1
  32. package/dist/src/ents/button.js +7 -6
  33. package/dist/src/ents/button.js.map +1 -1
  34. package/dist/src/ents/cursor.js +4 -4
  35. package/dist/src/ents/cursor.js.map +1 -1
  36. package/dist/src/ents/cursor.test.js +4 -4
  37. package/dist/src/ents/cursor.test.js.map +1 -1
  38. package/dist/src/graphics/sprite-frag.glsl.d.ts.map +1 -1
  39. package/dist/src/graphics/sprite-frag.glsl.js +34 -5
  40. package/dist/src/graphics/sprite-frag.glsl.js.map +1 -1
  41. package/dist/src/graphics/sprite-vert.glsl.d.ts.map +1 -1
  42. package/dist/src/graphics/sprite-vert.glsl.js +42 -8
  43. package/dist/src/graphics/sprite-vert.glsl.js.map +1 -1
  44. package/dist/src/graphics/sprite.d.ts +16 -7
  45. package/dist/src/graphics/sprite.d.ts.map +1 -1
  46. package/dist/src/graphics/sprite.js +42 -17
  47. package/dist/src/graphics/sprite.js.map +1 -1
  48. package/dist/src/graphics/sprite.test.js +60 -13
  49. package/dist/src/graphics/sprite.test.js.map +1 -1
  50. package/dist/src/input/input.js +10 -10
  51. package/dist/src/input/input.js.map +1 -1
  52. package/dist/src/level/level-parser.d.ts.map +1 -1
  53. package/dist/src/level/level-parser.js +8 -3
  54. package/dist/src/level/level-parser.js.map +1 -1
  55. package/dist/src/level/level-parser.test.js +6 -4
  56. package/dist/src/level/level-parser.test.js.map +1 -1
  57. package/dist/src/level/level-schema.d.ts +10 -8
  58. package/dist/src/level/level-schema.d.ts.map +1 -1
  59. package/dist/src/looper.d.ts.map +1 -1
  60. package/dist/src/looper.js +9 -2
  61. package/dist/src/looper.js.map +1 -1
  62. package/dist/src/types/geo.d.ts +2 -0
  63. package/dist/src/types/geo.d.ts.map +1 -1
  64. package/dist/src/types/geo.js +11 -0
  65. package/dist/src/types/geo.js.map +1 -1
  66. package/dist/src/types/geo.test.js +28 -1
  67. package/dist/src/types/geo.test.js.map +1 -1
  68. package/dist/src/utils/debug.d.ts +2 -0
  69. package/dist/src/utils/debug.d.ts.map +1 -1
  70. package/dist/src/utils/debug.js +5 -1
  71. package/dist/src/utils/debug.js.map +1 -1
  72. package/dist/src/utils/math.d.ts +1 -0
  73. package/dist/src/utils/math.d.ts.map +1 -1
  74. package/dist/src/utils/math.js +3 -0
  75. package/dist/src/utils/math.js.map +1 -1
  76. package/package.json +3 -3
  77. package/schema/level-file.v0.json +74 -75
  78. package/dist/public/void-v0.1.8+20260106.f2ce523.html +0 -115
@@ -4,8 +4,8 @@ import type { Layer } from '../graphics/layer.ts';
4
4
  import type { Border, CompassDir, WH, XY } from '../types/geo.ts';
5
5
  export type BorderSchema = number | Partial<XY> | Partial<Border>;
6
6
  export type ButtonSchema = {
7
- pressed: SpriteSchema | Tag;
8
- selected: SpriteSchema | Tag;
7
+ pressed: SpritePropsSchema | Tag;
8
+ selected: SpritePropsSchema | Tag;
9
9
  type?: ButtonType;
10
10
  z?: LayerSchema;
11
11
  };
@@ -30,9 +30,7 @@ export interface EntSchema {
30
30
  name?: string;
31
31
  ninePatch?: NinePatchSchema;
32
32
  override?: OverrideSchema;
33
- sprite?: (SpriteSchema & Partial<WH> & Partial<XY> & {
34
- scale?: number | Partial<XY>;
35
- }) | Tag;
33
+ sprite?: SpriteSchema | Tag;
36
34
  text?: string;
37
35
  textWH?: TextWHSchema;
38
36
  textXY?: TextXYSchema;
@@ -60,22 +58,26 @@ export type NinePatchSchema = {
60
58
  border?: BorderSchema;
61
59
  pad?: BorderSchema;
62
60
  patch: {
63
- [dir in Lowercase<CompassDir>]?: SpriteSchema | Tag;
61
+ [dir in Lowercase<CompassDir>]?: SpritePropsSchema | Tag;
64
62
  };
65
63
  };
66
64
  export type OverrideSchema = {
67
65
  invalid?: boolean;
68
66
  };
69
67
  export type PoolSchema = 'Default' | string;
70
- export type SpriteSchema = {
68
+ export type SpritePropsSchema = {
71
69
  flip?: XYFlag;
70
+ hidden?: boolean;
72
71
  pool?: PoolSchema;
73
72
  stretch?: boolean;
74
73
  tag?: Tag;
75
- visible?: boolean;
76
74
  z?: LayerSchema;
77
75
  zend?: boolean;
78
76
  };
77
+ export type SpriteSchema = SpritePropsSchema & {
78
+ angle?: number;
79
+ scale?: number | Partial<XY>;
80
+ } & Partial<WH> & Partial<XY>;
79
81
  export type TextWHSchema = {
80
82
  maxW?: number;
81
83
  pad?: BorderSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"level-schema.d.ts","sourceRoot":"","sources":["../../../src/level/level-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"level-schema.d.ts","sourceRoot":"","sources":["../../../src/level/level-schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"looper.d.ts","sourceRoot":"","sources":["../../src/looper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AAE3C;;;;;;GAMG;AACH,qBAAa,MAAM;;IACjB,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAI;IACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAK/C,QAAQ,CAAC,EAAE,EAAE,KAAK,GAAG,QAAQ,GAAG,IAAI;IASpC,YAAY,IAAI,IAAI;IAMpB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CAsBzB"}
1
+ {"version":3,"file":"looper.d.ts","sourceRoot":"","sources":["../../src/looper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AAG3C;;;;;;GAMG;AACH,qBAAa,MAAM;;IACjB,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAI;IACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAK/C,QAAQ,CAAC,EAAE,EAAE,KAAK,GAAG,QAAQ,GAAG,IAAI;IASpC,YAAY,IAAI,IAAI;IAMpB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CA2BzB"}
@@ -1,3 +1,4 @@
1
+ import { debug } from "./utils/debug.js";
1
2
  /**
2
3
  * frame manager. passes frame requests when not hidden. callers should request
3
4
  * frames when an update occurs or a check for an update occurs. eg, gamepads
@@ -45,10 +46,16 @@ export class Looper {
45
46
  #onVisibility = (ev) => {
46
47
  if (!ev.isTrusted)
47
48
  return;
48
- if (document.hidden)
49
+ if (document.hidden) {
49
50
  this.#cancel();
50
- else
51
+ if (debug?.looper)
52
+ console.debug('[looper] paused');
53
+ }
54
+ else {
51
55
  this.requestFrame();
56
+ if (debug?.looper)
57
+ console.debug('[looper] resumed');
58
+ }
52
59
  };
53
60
  }
54
61
  //# sourceMappingURL=looper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"looper.js","sourceRoot":"","sources":["../../src/looper.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,OAAO,MAAM;IACjB,mCAAmC;IACnC,GAAG,GAAW,CAAC,CAAA;IACf,OAAO,CAAwC;IAC/C,IAAI,GAAW,CAAC,CAAA;IAChB,WAAW,GAAY,KAAK,CAAA;IAC5B,MAAM,GAAW,CAAC,CAAA;IAElB,QAAQ,CAAC,EAAoB;QAC3B,MAAM,EAAE,GAAG,GAAG,EAAE,eAAwB,CAAA;QACxC,QAAQ,CAAC,EAAE,CAAC,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;QACpD,IAAI,EAAE,KAAK,QAAQ;YAAE,IAAI,CAAC,OAAO,EAAE,CAAA;QACnC,mEAAmE;QACnE,IAAI,CAAC,WAAW,GAAG,EAAE,KAAK,KAAK,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAM;QAC7D,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAC/B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClD,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,IAAI;YAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IACf,CAAC;IAED,QAAQ,GAAG,GAAS,EAAE;QACpB,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAC7B,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAW,CAAA;QAC5C,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;QACb,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,aAAa,GAAG,CAAC,EAAS,EAAQ,EAAE;QAClC,IAAI,CAAC,EAAE,CAAC,SAAS;YAAE,OAAM;QACzB,IAAI,QAAQ,CAAC,MAAM;YAAE,IAAI,CAAC,OAAO,EAAE,CAAA;;YAC9B,IAAI,CAAC,YAAY,EAAE,CAAA;IAC1B,CAAC,CAAA;CACF"}
1
+ {"version":3,"file":"looper.js","sourceRoot":"","sources":["../../src/looper.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,kBAAkB,CAAA;AAEtC;;;;;;GAMG;AACH,MAAM,OAAO,MAAM;IACjB,mCAAmC;IACnC,GAAG,GAAW,CAAC,CAAA;IACf,OAAO,CAAwC;IAC/C,IAAI,GAAW,CAAC,CAAA;IAChB,WAAW,GAAY,KAAK,CAAA;IAC5B,MAAM,GAAW,CAAC,CAAA;IAElB,QAAQ,CAAC,EAAoB;QAC3B,MAAM,EAAE,GAAG,GAAG,EAAE,eAAwB,CAAA;QACxC,QAAQ,CAAC,EAAE,CAAC,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;QACpD,IAAI,EAAE,KAAK,QAAQ;YAAE,IAAI,CAAC,OAAO,EAAE,CAAA;QACnC,mEAAmE;QACnE,IAAI,CAAC,WAAW,GAAG,EAAE,KAAK,KAAK,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAM;QAC7D,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAC/B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClD,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,IAAI;YAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IACf,CAAC;IAED,QAAQ,GAAG,GAAS,EAAE;QACpB,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAC7B,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAW,CAAA;QAC5C,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;QACb,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,aAAa,GAAG,CAAC,EAAS,EAAQ,EAAE;QAClC,IAAI,CAAC,EAAE,CAAC,SAAS;YAAE,OAAM;QACzB,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,IAAI,KAAK,EAAE,MAAM;gBAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACrD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,EAAE,CAAA;YACnB,IAAI,KAAK,EAAE,MAAM;gBAAE,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACtD,CAAC;IACH,CAAC,CAAA;CACF"}
@@ -22,6 +22,8 @@ export declare function boxEq(l: Readonly<Box>, r: Readonly<Box>): boolean;
22
22
  export declare function borderEq(l: Readonly<Border>, r: Readonly<Border>): boolean;
23
23
  export declare function borderAssign(l: Border, r: Readonly<Border>): void;
24
24
  export declare function boxHits(l: Readonly<Partial<XY> & WH>, r: Readonly<XY & Partial<WH>>): boolean;
25
+ /** overlap of boxes or a flipped box. */
26
+ export declare function boxIntersect(l: Readonly<Box>, r: Readonly<Box>): Box;
25
27
  export declare function whAssign(l: WH, r: Readonly<WH>): void;
26
28
  export declare function whEq(l: Readonly<WH>, r: Readonly<WH>): boolean;
27
29
  /** l + r. */
@@ -1 +1 @@
1
- {"version":3,"file":"geo.d.ts","sourceRoot":"","sources":["../../../src/types/geo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geo.d.ts","sourceRoot":"","sources":["../../../src/types/geo.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,17 @@ export function boxHits(l, r) {
27
27
  lXY.y < r.y + rWH.h &&
28
28
  lXY.y + l.h > r.y);
29
29
  }
30
+ /** overlap of boxes or a flipped box. */
31
+ export function boxIntersect(l, r) {
32
+ const x = Math.max(l.x, r.x);
33
+ const y = Math.max(l.y, r.y);
34
+ return {
35
+ x,
36
+ y,
37
+ w: Math.min(l.x + l.w, r.x + r.w) - x,
38
+ h: Math.min(l.y + l.h, r.y + r.h) - y
39
+ };
40
+ }
30
41
  export function whAssign(l, r) {
31
42
  l.w = r.w;
32
43
  l.h = r.h;
@@ -1 +1 @@
1
- {"version":3,"file":"geo.js","sourceRoot":"","sources":["../../../src/types/geo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geo.js","sourceRoot":"","sources":["../../../src/types/geo.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { test } from 'node:test';
2
2
  import { assert } from "../test/assert.js";
3
- import { borderAssign, borderEq, boxHits, whEq, xyAdd, xyAddTo, xyDistance, xyDiv, xyEq, xyMagnitude, xyMax, xyMin, xySub } from "./geo.js";
3
+ import { borderAssign, borderEq, boxHits, boxIntersect, whEq, xyAdd, xyAddTo, xyDistance, xyDiv, xyEq, xyMagnitude, xyMax, xyMin, xySub } from "./geo.js";
4
4
  test('borderEq()', () => {
5
5
  assert(borderEq({ n: 0, s: 0, w: 0, e: 0 }, { n: 0, s: 0, w: 0, e: 0 }), true);
6
6
  assert(borderEq({ n: 1, s: 2, w: 3, e: 4 }, { n: 1, s: 2, w: 3, e: 4 }), true);
@@ -632,6 +632,33 @@ test('boxHits()', async (ctx) => {
632
632
  await ctx.test('box hits point', () => assert(boxHits({ x: 0, y: 0, w: 1, h: 1 }, { x: 0.5, y: 0.5 }), true));
633
633
  await ctx.test("flipped box doesn't hit nonempty box", () => assert(boxHits({ x: 0.5, y: 0.5, w: -1, h: -1 }, { x: 0, y: 0, w: 1, h: 1 }), false));
634
634
  });
635
+ test('boxIntersect()', async (ctx) => {
636
+ await ctx.test('overlapping boxes', () => assert(boxIntersect({ x: 0, y: 0, w: 10, h: 10 }, { x: 5, y: 5, w: 10, h: 10 }), { x: 5, y: 5, w: 5, h: 5 }));
637
+ await ctx.test('identical boxes', () => assert(boxIntersect({ x: 0, y: 0, w: 10, h: 10 }, { x: 0, y: 0, w: 10, h: 10 }), { x: 0, y: 0, w: 10, h: 10 }));
638
+ await ctx.test('one box inside another', () => assert(boxIntersect({ x: 0, y: 0, w: 20, h: 20 }, { x: 5, y: 5, w: 5, h: 5 }), {
639
+ x: 5,
640
+ y: 5,
641
+ w: 5,
642
+ h: 5
643
+ }));
644
+ await ctx.test('disjoint boxes returns flipped box', () => {
645
+ assert(boxIntersect({ x: 0, y: 0, w: 5, h: 5 }, { x: 10, y: 10, w: 5, h: 5 }), {
646
+ x: 10,
647
+ y: 10,
648
+ w: -5,
649
+ h: -5
650
+ });
651
+ });
652
+ await ctx.test('touching boxes (no overlap)', () => {
653
+ assert(boxIntersect({ x: 0, y: 0, w: 5, h: 5 }, { x: 5, y: 0, w: 5, h: 5 }), {
654
+ x: 5,
655
+ y: 0,
656
+ w: 0,
657
+ h: 5
658
+ });
659
+ });
660
+ await ctx.test('partial vertical overlap', () => assert(boxIntersect({ x: 0, y: 0, w: 10, h: 20 }, { x: 5, y: 10, w: 10, h: 20 }), { x: 5, y: 10, w: 5, h: 10 }));
661
+ });
635
662
  test('whEq()', () => {
636
663
  assert(whEq({ w: 1, h: 2 }, { w: 1, h: 2 }), true);
637
664
  assert(whEq({ w: 1, h: 2 }, { w: 3, h: 2 }), false);
@@ -1 +1 @@
1
- {"version":3,"file":"geo.test.js","sourceRoot":"","sources":["../../../src/types/geo.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geo.test.js","sourceRoot":"","sources":["../../../src/types/geo.test.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,12 @@ export interface Debug {
11
11
  input?: string;
12
12
  /** debug render invalidations. */
13
13
  invalid?: string;
14
+ looper?: string;
14
15
  mem?: string;
15
16
  render?: 'always' | string;
16
17
  }
17
18
  export declare const debug: Readonly<Debug> | undefined;
19
+ export declare function findDebugParam(url: string): string | undefined;
18
20
  /** @internal */
19
21
  export declare function Debug(url: string | undefined): Debug | undefined;
20
22
  //# sourceMappingURL=debug.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/utils/debug.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,KAAK;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC3B;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,SAErC,CAAA;AAED,gBAAgB;AAChB,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,CAgChE"}
1
+ {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/utils/debug.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,KAAK;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC3B;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,SAErC,CAAA;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI9D;AAED,gBAAgB;AAChB,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,CA+BhE"}
@@ -1,9 +1,12 @@
1
1
  export const debug = Debug(globalThis.location?.href);
2
+ export function findDebugParam(url) {
3
+ return [...new URL(url).searchParams].find(([k]) => k.toLowerCase() === 'debug')?.[1];
4
+ }
2
5
  /** @internal */
3
6
  export function Debug(url) {
4
7
  if (!url)
5
8
  return;
6
- const csv = [...new URL(url).searchParams].find(([k]) => k.toLowerCase() === 'debug')?.[1];
9
+ const csv = findDebugParam(url);
7
10
  if (csv == null)
8
11
  return;
9
12
  const map = Object.fromEntries(csv
@@ -17,6 +20,7 @@ export function Debug(url) {
17
20
  const voidKeyset = {
18
21
  cam: '',
19
22
  input: '',
23
+ looper: '',
20
24
  mem: '',
21
25
  render: ''
22
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/utils/debug.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,MAAM,KAAK,GAAgC,KAAK,CACrD,UAAU,CAAC,QAAQ,EAAE,IAAI,CAC1B,CAAA;AAED,gBAAgB;AAChB,MAAM,UAAU,KAAK,CAAC,GAAuB;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAM;IAChB,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAC7C,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CACrC,EAAE,CAAC,CAAC,CAAC,CAAA;IACN,IAAI,GAAG,IAAI,IAAI;QAAE,OAAM;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAC5B,GAAG;SACA,KAAK,CAAC,GAAG,CAAC,CAAC,kBAAkB;SAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB;SAChC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB;KAChD,CAAA;IAED,MAAM,MAAM,GAA0B,EAAE,CAAA;IACxC,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAA;IAE/D,MAAM,UAAU,GAAqC;QACnD,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE;QACP,MAAM,EAAE,EAAE;KACX,CAAA;IAED,OAAO,IAAI,KAAK,CAAwB,MAAM,EAAE;QAC9C,GAAG,CAAC,MAAM,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC,CAAsB,CAAC,CAAA;YAChE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;YACnB,IAAI,MAAM,CAAC,CAAC,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;YAC/B,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC,CAAC,IAAI,UAAU,IAAI,MAAM,IAAI,GAAG,CAAC;gBAC5D,OAAO,MAAM,CAAA;QACjB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/utils/debug.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAC,MAAM,KAAK,GAAgC,KAAK,CACrD,UAAU,CAAC,QAAQ,EAAE,IAAI,CAC1B,CAAA;AAED,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CACxC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CACrC,EAAE,CAAC,CAAC,CAAC,CAAA;AACR,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,KAAK,CAAC,GAAuB;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAM;IAChB,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;IAC/B,IAAI,GAAG,IAAI,IAAI;QAAE,OAAM;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAC5B,GAAG;SACA,KAAK,CAAC,GAAG,CAAC,CAAC,kBAAkB;SAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB;SAChC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB;KAChD,CAAA;IAED,MAAM,MAAM,GAA0B,EAAE,CAAA;IACxC,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAA;IAE/D,MAAM,UAAU,GAAqC;QACnD,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,GAAG,EAAE,EAAE;QACP,MAAM,EAAE,EAAE;KACX,CAAA;IAED,OAAO,IAAI,KAAK,CAAwB,MAAM,EAAE;QAC9C,GAAG,CAAC,MAAM,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC,CAAsB,CAAC,CAAA;YAChE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;YACnB,IAAI,MAAM,CAAC,CAAC,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;YAC/B,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC,CAAC,IAAI,UAAU,IAAI,MAAM,IAAI,GAAG,CAAC;gBAC5D,OAAO,MAAM,CAAA;QACjB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -4,4 +4,5 @@ export declare function closeTo(lhs: number, rhs: number, tolerance: number): bo
4
4
  export declare function lerp(start: number, end: number, ratio: number): number;
5
5
  /** returns positive modulo. */
6
6
  export declare function mod(dividend: number, divisor: number): number;
7
+ export declare function snap(v: number, mod: number): number;
7
8
  //# sourceMappingURL=math.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/utils/math.ts"],"names":[],"mappings":"AACA,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAE5E;AAGD,8CAA8C;AAC9C,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtE;AAGD,+BAA+B;AAC/B,wBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE7D"}
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/utils/math.ts"],"names":[],"mappings":"AACA,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAE5E;AAGD,8CAA8C;AAC9C,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtE;AAGD,+BAA+B;AAC/B,wBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD"}
@@ -15,4 +15,7 @@ export function lerp(start, end, ratio) {
15
15
  export function mod(dividend, divisor) {
16
16
  return ((dividend % divisor) + divisor) % divisor;
17
17
  }
18
+ export function snap(v, mod) {
19
+ return Math.round(v / mod) * mod;
20
+ }
18
21
  //# sourceMappingURL=math.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"math.js","sourceRoot":"","sources":["../../../src/utils/math.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,MAAM,UAAU,KAAK,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW;IACzD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAW,EAAE,GAAW,EAAE,SAAiB;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,SAAS,CAAA;AACzC,CAAC;AAED,qBAAqB;AACrB,8CAA8C;AAC9C,MAAM,UAAU,IAAI,CAAC,KAAa,EAAE,GAAW,EAAE,KAAa;IAC5D,OAAO,KAAK,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,KAAK,CAAA;AACtC,CAAC;AAED,mCAAmC;AACnC,+BAA+B;AAC/B,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,OAAe;IACnD,OAAO,CAAC,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,OAAO,CAAA;AACnD,CAAC"}
1
+ {"version":3,"file":"math.js","sourceRoot":"","sources":["../../../src/utils/math.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,MAAM,UAAU,KAAK,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW;IACzD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAW,EAAE,GAAW,EAAE,SAAiB;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,SAAS,CAAA;AACzC,CAAC;AAED,qBAAqB;AACrB,8CAA8C;AAC9C,MAAM,UAAU,IAAI,CAAC,KAAa,EAAE,GAAW,EAAE,KAAa;IAC5D,OAAO,KAAK,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,KAAK,CAAA;AACtC,CAAC;AAED,mCAAmC;AACnC,+BAA+B;AAC/B,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,OAAe;IACnD,OAAO,CAAC,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,OAAO,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,CAAS,EAAE,GAAW;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;AAClC,CAAC"}
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  },
13
13
  "description": "basic 2D game library.",
14
14
  "devDependencies": {
15
- "@oidoid/config": "0.0.6",
15
+ "@oidoid/config": "0.0.7",
16
16
  "@types/jsdom": "27.0.0",
17
17
  "@types/node": "24.4.0",
18
18
  "typescript": "5.9.3"
@@ -47,7 +47,7 @@
47
47
  "publishConfig": {
48
48
  "access": "public"
49
49
  },
50
- "published": "20260106",
50
+ "published": "20260107",
51
51
  "repository": {
52
52
  "type": "git",
53
53
  "url": "git+https://github.com/oidoid/void.git"
@@ -65,5 +65,5 @@
65
65
  "version": "npm pkg set published=$(date +%Y%m%d) && npm run clean && npm test"
66
66
  },
67
67
  "type": "module",
68
- "version": "0.1.8"
68
+ "version": "0.1.10"
69
69
  }