@bloopjs/engine 0.0.88 → 0.0.90
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/dist/codegen/enums.d.ts +2 -1
- package/dist/codegen/enums.d.ts.map +1 -1
- package/dist/codegen/offsets.d.ts +46 -0
- package/dist/codegen/offsets.d.ts.map +1 -0
- package/dist/contexts/inputContext.d.ts +1 -0
- package/dist/contexts/inputContext.d.ts.map +1 -1
- package/dist/contexts/netContext.d.ts +2 -8
- package/dist/contexts/netContext.d.ts.map +1 -1
- package/dist/contexts/screenContext.d.ts +15 -0
- package/dist/contexts/screenContext.d.ts.map +1 -0
- package/dist/contexts/timeContext.d.ts.map +1 -1
- package/dist/engine.d.ts +2 -0
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +148 -77
- package/dist/engine.js.map +12 -10
- package/dist/inputs.d.ts +2 -7
- package/dist/inputs.d.ts.map +1 -1
- package/dist/wasmEngine.d.ts +13 -0
- package/dist/wasmEngine.d.ts.map +1 -1
- package/js/codegen/enums.ts +1 -0
- package/js/codegen/offsets.ts +55 -0
- package/js/contexts/inputContext.ts +20 -12
- package/js/contexts/netContext.ts +50 -51
- package/js/contexts/screenContext.ts +55 -0
- package/js/contexts/timeContext.ts +9 -3
- package/js/defaultUrl.ts +1 -1
- package/js/engine.ts +2 -0
- package/js/inputs.ts +18 -14
- package/js/wasmEngine.ts +21 -0
- package/package.json +1 -1
- package/wasm/bloop.wasm +0 -0
package/dist/codegen/enums.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../js/codegen/enums.ts"],"names":[],"mappings":"AAEA,oBAAY,SAAS;IACnB,IAAI,IAAI;IACR,OAAO,IAAI;IACX,KAAK,IAAI;IACT,SAAS,IAAI;IACb,SAAS,IAAI;IACb,OAAO,IAAI;IACX,UAAU,IAAI;IACd,UAAU,IAAI;IACd,SAAS,IAAI;IACb,WAAW,IAAI;IACf,WAAW,KAAK;IAChB,YAAY,KAAK;IACjB,oBAAoB,KAAK;IACzB,iBAAiB,KAAK;IACtB,cAAc,KAAK;
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../js/codegen/enums.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export declare const TIME_CTX_FRAME_OFFSET = 0;
|
|
2
|
+
export declare const TIME_CTX_DT_MS_OFFSET = 4;
|
|
3
|
+
export declare const TIME_CTX_TOTAL_MS_OFFSET = 8;
|
|
4
|
+
export declare const TIME_CTX_IS_RESIMULATING_OFFSET = 16;
|
|
5
|
+
export declare const TIME_CTX_SIZE = 24;
|
|
6
|
+
export declare const PEER_CTX_CONNECTED_OFFSET = 0;
|
|
7
|
+
export declare const PEER_CTX_PACKET_COUNT_OFFSET = 1;
|
|
8
|
+
export declare const PEER_CTX_SEQ_OFFSET = 2;
|
|
9
|
+
export declare const PEER_CTX_ACK_OFFSET = 4;
|
|
10
|
+
export declare const PEER_CTX_ACK_COUNT_OFFSET = 6;
|
|
11
|
+
export declare const PEER_CTX_SIZE = 8;
|
|
12
|
+
export declare const NET_CTX_PEER_COUNT_OFFSET = 0;
|
|
13
|
+
export declare const NET_CTX_LOCAL_PEER_ID_OFFSET = 1;
|
|
14
|
+
export declare const NET_CTX_IN_SESSION_OFFSET = 2;
|
|
15
|
+
export declare const NET_CTX_STATUS_OFFSET = 3;
|
|
16
|
+
export declare const NET_CTX_MATCH_FRAME_OFFSET = 4;
|
|
17
|
+
export declare const NET_CTX_SESSION_START_FRAME_OFFSET = 8;
|
|
18
|
+
export declare const NET_CTX_ROOM_CODE_OFFSET = 12;
|
|
19
|
+
export declare const NET_CTX_WANTS_ROOM_CODE_OFFSET = 20;
|
|
20
|
+
export declare const NET_CTX_WANTS_DISCONNECT_OFFSET = 28;
|
|
21
|
+
export declare const NET_CTX_PEERS_OFFSET = 32;
|
|
22
|
+
export declare const NET_CTX_LAST_ROLLBACK_DEPTH_OFFSET = 128;
|
|
23
|
+
export declare const NET_CTX_TOTAL_ROLLBACKS_OFFSET = 132;
|
|
24
|
+
export declare const NET_CTX_FRAMES_RESIMULATED_OFFSET = 136;
|
|
25
|
+
export declare const NET_CTX_SIZE = 144;
|
|
26
|
+
export declare const SCREEN_CTX_WIDTH_OFFSET = 0;
|
|
27
|
+
export declare const SCREEN_CTX_HEIGHT_OFFSET = 4;
|
|
28
|
+
export declare const SCREEN_CTX_PHYSICAL_WIDTH_OFFSET = 8;
|
|
29
|
+
export declare const SCREEN_CTX_PHYSICAL_HEIGHT_OFFSET = 12;
|
|
30
|
+
export declare const SCREEN_CTX_PIXEL_RATIO_OFFSET = 16;
|
|
31
|
+
export declare const SCREEN_CTX_SIZE = 20;
|
|
32
|
+
export declare const MOUSE_CTX_X_OFFSET = 0;
|
|
33
|
+
export declare const MOUSE_CTX_Y_OFFSET = 4;
|
|
34
|
+
export declare const MOUSE_CTX_WHEEL_X_OFFSET = 8;
|
|
35
|
+
export declare const MOUSE_CTX_WHEEL_Y_OFFSET = 12;
|
|
36
|
+
export declare const MOUSE_CTX_BUTTON_STATES_OFFSET = 16;
|
|
37
|
+
export declare const MOUSE_CTX_SIZE = 24;
|
|
38
|
+
export declare const KEY_CTX_KEY_STATES_OFFSET = 0;
|
|
39
|
+
export declare const KEY_CTX_SIZE = 256;
|
|
40
|
+
export declare const PLAYER_INPUTS_KEY_CTX_OFFSET = 0;
|
|
41
|
+
export declare const PLAYER_INPUTS_MOUSE_CTX_OFFSET = 256;
|
|
42
|
+
export declare const PLAYER_INPUTS_SIZE = 280;
|
|
43
|
+
export declare const INPUT_CTX_PLAYERS_OFFSET = 0;
|
|
44
|
+
export declare const INPUT_CTX_SIZE = 3360;
|
|
45
|
+
export declare const MAX_PLAYERS = 12;
|
|
46
|
+
//# sourceMappingURL=offsets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"offsets.d.ts","sourceRoot":"","sources":["../../js/codegen/offsets.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAClD,eAAO,MAAM,aAAa,KAAK,CAAC;AAEhC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAC9C,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAC9C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,kCAAkC,IAAI,CAAC;AACpD,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,8BAA8B,KAAK,CAAC;AACjD,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAClD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,kCAAkC,MAAM,CAAC;AACtD,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAClD,eAAO,MAAM,iCAAiC,MAAM,CAAC;AACrD,eAAO,MAAM,YAAY,MAAM,CAAC;AAEhC,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAChD,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,8BAA8B,KAAK,CAAC;AACjD,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,YAAY,MAAM,CAAC;AAEhC,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAC9C,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAClD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC,eAAO,MAAM,WAAW,KAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputContext.d.ts","sourceRoot":"","sources":["../../js/contexts/inputContext.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inputContext.d.ts","sourceRoot":"","sources":["../../js/contexts/inputContext.ts"],"names":[],"mappings":"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Q,CAEjB;IACD,IAAI,EAAE,IAAI,QAAQ,CAEjB;IACD,IAAI,EAAE,IAAI,QAAQ,CAEjB;IACD,IAAI,EAAE,IAAI,QAAQ,CAEjB;IACD,IAAI,EAAE,IAAI,QAAQ,CAEjB;IACD,IAAI,EAAE,IAAI,QAAQ,CAEjB;IACD,IAAI,EAAE,IAAI,QAAQ,CAEjB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;IACD,IAAI,GAAG,IAAI,QAAQ,CAElB;CAoBF"}
|
|
@@ -46,14 +46,8 @@ export type PeerInfo = {
|
|
|
46
46
|
ack: number;
|
|
47
47
|
};
|
|
48
48
|
/**
|
|
49
|
-
* NetCtx struct layout
|
|
50
|
-
*
|
|
51
|
-
* - local_peer_id: u8 (offset 1)
|
|
52
|
-
* - in_session: u8 (offset 2)
|
|
53
|
-
* - status: u8 (offset 3)
|
|
54
|
-
* - match_frame: u32 (offset 4)
|
|
55
|
-
* - session_start_frame: u32 (offset 8)
|
|
56
|
-
* - room_code: [8]u8 (offset 12)
|
|
49
|
+
* NetCtx struct layout is defined in context.zig.
|
|
50
|
+
* Field offsets are generated in codegen/offsets.ts.
|
|
57
51
|
*
|
|
58
52
|
* All getters read directly from the engine's memory via DataView.
|
|
59
53
|
* State is managed by the Zig engine, not TypeScript.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"netContext.d.ts","sourceRoot":"","sources":["../../js/contexts/netContext.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"netContext.d.ts","sourceRoot":"","sources":["../../js/contexts/netContext.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,OAAO,GACP,cAAc,GACd,WAAW,GACX,cAAc,CAAC;AAEnB,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,CAAC;AAEzD,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAUF;;;;;;GAMG;AACH,qBAAa,UAAU;;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;gBAUR,QAAQ,CAAC,EAAE,QAAQ;IAW/B,iFAAiF;IACjF,IAAI,SAAS,IAAI,MAAM,CAKtB;IAED,mCAAmC;IACnC,IAAI,WAAW,IAAI,MAAM,CAKxB;IAED,qDAAqD;IACrD,IAAI,WAAW,IAAI,OAAO,CAKzB;IAED,6BAA6B;IAC7B,IAAI,MAAM,IAAI,SAAS,CAMtB;IAED,wEAAwE;IACxE,IAAI,UAAU,IAAI,MAAM,CAKvB;IAED;;;OAGG;IACH,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,wDAAwD;IACxD,IAAI,QAAQ,IAAI,MAAM,CAYrB;IAED,oDAAoD;IACpD,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAYtC;IAED,IAAI,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAczC;IAED,mDAAmD;IACnD,IAAI,eAAe,IAAI,OAAO,CAK7B;IAED,IAAI,eAAe,CAAC,KAAK,EAAE,OAAO,EAKjC;IAED;;;;;;;;;;;OAWG;IACH,IAAI,KAAK,IAAI,QAAQ,EAAE,CA+CtB;IAED,6DAA6D;IAC7D,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,oDAAoD;IACpD,IAAI,cAAc,IAAI,MAAM,CAK3B;IAED,mDAAmD;IACnD,IAAI,iBAAiB,IAAI,MAAM,CAM9B;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare class ScreenContext {
|
|
2
|
+
dataView?: DataView;
|
|
3
|
+
constructor(dataView?: DataView);
|
|
4
|
+
/** Logical width in CSS pixels */
|
|
5
|
+
get width(): number;
|
|
6
|
+
/** Logical height in CSS pixels */
|
|
7
|
+
get height(): number;
|
|
8
|
+
/** Physical width in device pixels */
|
|
9
|
+
get physicalWidth(): number;
|
|
10
|
+
/** Physical height in device pixels */
|
|
11
|
+
get physicalHeight(): number;
|
|
12
|
+
/** Device pixel ratio (physical pixels / logical pixels) */
|
|
13
|
+
get pixelRatio(): number;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=screenContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenContext.d.ts","sourceRoot":"","sources":["../../js/contexts/screenContext.ts"],"names":[],"mappings":"AAQA,qBAAa,aAAa;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;gBAER,QAAQ,CAAC,EAAE,QAAQ;IAI/B,kCAAkC;IAClC,IAAI,KAAK,IAAI,MAAM,CAKlB;IAED,mCAAmC;IACnC,IAAI,MAAM,IAAI,MAAM,CAKnB;IAED,sCAAsC;IACtC,IAAI,aAAa,IAAI,MAAM,CAK1B;IAED,uCAAuC;IACvC,IAAI,cAAc,IAAI,MAAM,CAK3B;IAED,4DAA4D;IAC5D,IAAI,UAAU,IAAI,MAAM,CAKvB;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeContext.d.ts","sourceRoot":"","sources":["../../js/contexts/timeContext.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"timeContext.d.ts","sourceRoot":"","sources":["../../js/contexts/timeContext.ts"],"names":[],"mappings":"AAMA,qBAAa,WAAW;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;gBAER,QAAQ,CAAC,EAAE,QAAQ;IAI/B,4EAA4E;IAC5E,IAAI,KAAK,IAAI,MAAM,CAKlB;IAED,iDAAiD;IACjD,IAAI,EAAE,IAAI,MAAM,CAKf;IAED,2DAA2D;IAC3D,IAAI,IAAI,IAAI,MAAM,CAKjB;CACF"}
|
package/dist/engine.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * as Enums from "./codegen/enums";
|
|
2
2
|
export * from "./contexts/inputContext";
|
|
3
3
|
export * from "./contexts/netContext";
|
|
4
|
+
export * from "./contexts/screenContext";
|
|
4
5
|
export * from "./contexts/timeContext";
|
|
5
6
|
export * from "./inputs";
|
|
6
7
|
export * from "./tape";
|
|
@@ -26,6 +27,7 @@ export declare const TIME_CTX_OFFSET = 0;
|
|
|
26
27
|
export declare const INPUT_CTX_OFFSET: number;
|
|
27
28
|
export declare const EVENTS_OFFSET: number;
|
|
28
29
|
export declare const NET_CTX_OFFSET: number;
|
|
30
|
+
export declare const SCREEN_CTX_OFFSET: number;
|
|
29
31
|
/**
|
|
30
32
|
* Size of snapshot header in bytes
|
|
31
33
|
*/
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../js/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,mBAAmB,cAAc,CAAC;AAElC;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,gBAAgB,QAAsB,CAAC;AACpD,eAAO,MAAM,aAAa,QAAuB,CAAC;AAClD,eAAO,MAAM,cAAc,QAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../js/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,mBAAmB,cAAc,CAAC;AAElC;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,gBAAgB,QAAsB,CAAC;AACpD,eAAO,MAAM,aAAa,QAAuB,CAAC;AAClD,eAAO,MAAM,cAAc,QAAoB,CAAC;AAChD,eAAO,MAAM,iBAAiB,QAAqB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,eAAO,MAAM,iCAAiC,IAAI,CAAC"}
|
package/dist/engine.js
CHANGED
|
@@ -35,6 +35,7 @@ var EventType;
|
|
|
35
35
|
EventType2[EventType2["NetPeerAssignLocalId"] = 12] = "NetPeerAssignLocalId";
|
|
36
36
|
EventType2[EventType2["NetPacketReceived"] = 13] = "NetPacketReceived";
|
|
37
37
|
EventType2[EventType2["NetSessionInit"] = 14] = "NetSessionInit";
|
|
38
|
+
EventType2[EventType2["Resize"] = 15] = "Resize";
|
|
38
39
|
})(EventType ||= {});
|
|
39
40
|
var MouseButton;
|
|
40
41
|
((MouseButton2) => {
|
|
@@ -286,34 +287,44 @@ var NetJoinFailReason;
|
|
|
286
287
|
NetJoinFailReason2[NetJoinFailReason2["room_not_found"] = 3] = "room_not_found";
|
|
287
288
|
NetJoinFailReason2[NetJoinFailReason2["already_in_room"] = 4] = "already_in_room";
|
|
288
289
|
})(NetJoinFailReason ||= {});
|
|
289
|
-
// js/
|
|
290
|
-
var
|
|
291
|
-
var
|
|
292
|
-
var
|
|
293
|
-
var
|
|
294
|
-
var
|
|
290
|
+
// js/codegen/offsets.ts
|
|
291
|
+
var TIME_CTX_FRAME_OFFSET = 0;
|
|
292
|
+
var TIME_CTX_DT_MS_OFFSET = 4;
|
|
293
|
+
var TIME_CTX_TOTAL_MS_OFFSET = 8;
|
|
294
|
+
var PEER_CTX_CONNECTED_OFFSET = 0;
|
|
295
|
+
var PEER_CTX_SEQ_OFFSET = 2;
|
|
296
|
+
var PEER_CTX_ACK_OFFSET = 4;
|
|
297
|
+
var PEER_CTX_SIZE = 8;
|
|
298
|
+
var NET_CTX_PEER_COUNT_OFFSET = 0;
|
|
299
|
+
var NET_CTX_LOCAL_PEER_ID_OFFSET = 1;
|
|
300
|
+
var NET_CTX_IN_SESSION_OFFSET = 2;
|
|
301
|
+
var NET_CTX_STATUS_OFFSET = 3;
|
|
302
|
+
var NET_CTX_MATCH_FRAME_OFFSET = 4;
|
|
303
|
+
var NET_CTX_SESSION_START_FRAME_OFFSET = 8;
|
|
304
|
+
var NET_CTX_ROOM_CODE_OFFSET = 12;
|
|
305
|
+
var NET_CTX_WANTS_ROOM_CODE_OFFSET = 20;
|
|
306
|
+
var NET_CTX_WANTS_DISCONNECT_OFFSET = 28;
|
|
307
|
+
var NET_CTX_PEERS_OFFSET = 32;
|
|
308
|
+
var NET_CTX_LAST_ROLLBACK_DEPTH_OFFSET = 128;
|
|
309
|
+
var NET_CTX_TOTAL_ROLLBACKS_OFFSET = 132;
|
|
310
|
+
var NET_CTX_FRAMES_RESIMULATED_OFFSET = 136;
|
|
311
|
+
var SCREEN_CTX_WIDTH_OFFSET = 0;
|
|
312
|
+
var SCREEN_CTX_HEIGHT_OFFSET = 4;
|
|
313
|
+
var SCREEN_CTX_PHYSICAL_WIDTH_OFFSET = 8;
|
|
314
|
+
var SCREEN_CTX_PHYSICAL_HEIGHT_OFFSET = 12;
|
|
315
|
+
var SCREEN_CTX_PIXEL_RATIO_OFFSET = 16;
|
|
316
|
+
var MOUSE_CTX_X_OFFSET = 0;
|
|
317
|
+
var MOUSE_CTX_Y_OFFSET = 4;
|
|
318
|
+
var MOUSE_CTX_WHEEL_X_OFFSET = 8;
|
|
319
|
+
var MOUSE_CTX_WHEEL_Y_OFFSET = 12;
|
|
320
|
+
var MOUSE_CTX_BUTTON_STATES_OFFSET = 16;
|
|
321
|
+
var MOUSE_CTX_SIZE = 24;
|
|
322
|
+
var KEY_CTX_SIZE = 256;
|
|
323
|
+
var PLAYER_INPUTS_KEY_CTX_OFFSET = 0;
|
|
324
|
+
var PLAYER_INPUTS_MOUSE_CTX_OFFSET = 256;
|
|
295
325
|
var PLAYER_INPUTS_SIZE = 280;
|
|
296
|
-
var INPUT_CTX_SIZE =
|
|
297
|
-
var
|
|
298
|
-
var EVENT_PAYLOAD_ALIGN = 4;
|
|
299
|
-
function keyToKeyCode(key) {
|
|
300
|
-
return Key[key];
|
|
301
|
-
}
|
|
302
|
-
function keyCodeToKey(code) {
|
|
303
|
-
return Key[code];
|
|
304
|
-
}
|
|
305
|
-
function mouseButtonToMouseButtonCode(button) {
|
|
306
|
-
return MouseButton[button];
|
|
307
|
-
}
|
|
308
|
-
function mouseButtonCodeToMouseButton(code) {
|
|
309
|
-
return MouseButton[code];
|
|
310
|
-
}
|
|
311
|
-
function inputSourceToInputSourceCode(source) {
|
|
312
|
-
return InputSource[source];
|
|
313
|
-
}
|
|
314
|
-
function inputSourceCodeToInputSource(code) {
|
|
315
|
-
return InputSource[code];
|
|
316
|
-
}
|
|
326
|
+
var INPUT_CTX_SIZE = 3360;
|
|
327
|
+
var MAX_PLAYERS = 12;
|
|
317
328
|
|
|
318
329
|
// js/contexts/inputContext.ts
|
|
319
330
|
class PlayerInputContext {
|
|
@@ -325,13 +336,13 @@ class PlayerInputContext {
|
|
|
325
336
|
}
|
|
326
337
|
get keys() {
|
|
327
338
|
if (!this.#keys) {
|
|
328
|
-
this.#keys = new KeyboardContext(new DataView(this.#dataView.buffer, this.#dataView.byteOffset +
|
|
339
|
+
this.#keys = new KeyboardContext(new DataView(this.#dataView.buffer, this.#dataView.byteOffset + PLAYER_INPUTS_KEY_CTX_OFFSET));
|
|
329
340
|
}
|
|
330
341
|
return this.#keys;
|
|
331
342
|
}
|
|
332
343
|
get mouse() {
|
|
333
344
|
if (!this.#mouse) {
|
|
334
|
-
this.#mouse = new MouseContext(new DataView(this.#dataView.buffer, this.#dataView.byteOffset +
|
|
345
|
+
this.#mouse = new MouseContext(new DataView(this.#dataView.buffer, this.#dataView.byteOffset + PLAYER_INPUTS_MOUSE_CTX_OFFSET));
|
|
335
346
|
}
|
|
336
347
|
return this.#mouse;
|
|
337
348
|
}
|
|
@@ -356,6 +367,9 @@ class InputContext {
|
|
|
356
367
|
this.#dataView = dataView;
|
|
357
368
|
this.#buildPlayers();
|
|
358
369
|
}
|
|
370
|
+
hasDataView() {
|
|
371
|
+
return !!this.#dataView;
|
|
372
|
+
}
|
|
359
373
|
#buildPlayers() {
|
|
360
374
|
this.#players = [];
|
|
361
375
|
for (let i = 0;i < MAX_PLAYERS; i++) {
|
|
@@ -388,19 +402,19 @@ class MouseContext {
|
|
|
388
402
|
this.#dataView = dataView;
|
|
389
403
|
}
|
|
390
404
|
get x() {
|
|
391
|
-
return this.#dataView.getFloat32(
|
|
405
|
+
return this.#dataView.getFloat32(MOUSE_CTX_X_OFFSET, true);
|
|
392
406
|
}
|
|
393
407
|
get y() {
|
|
394
|
-
return this.#dataView.getFloat32(
|
|
408
|
+
return this.#dataView.getFloat32(MOUSE_CTX_Y_OFFSET, true);
|
|
395
409
|
}
|
|
396
410
|
get wheel() {
|
|
397
411
|
return { x: this.wheelX, y: this.wheelY };
|
|
398
412
|
}
|
|
399
413
|
get wheelX() {
|
|
400
|
-
return this.#dataView.getFloat32(
|
|
414
|
+
return this.#dataView.getFloat32(MOUSE_CTX_WHEEL_X_OFFSET, true);
|
|
401
415
|
}
|
|
402
416
|
get wheelY() {
|
|
403
|
-
return this.#dataView.getFloat32(
|
|
417
|
+
return this.#dataView.getFloat32(MOUSE_CTX_WHEEL_Y_OFFSET, true);
|
|
404
418
|
}
|
|
405
419
|
get left() {
|
|
406
420
|
return this.#buttonState(1 /* Left */);
|
|
@@ -419,7 +433,7 @@ class MouseContext {
|
|
|
419
433
|
state = { down: false, held: false, up: false };
|
|
420
434
|
this.#buttonStates.set(code, state);
|
|
421
435
|
}
|
|
422
|
-
const offset =
|
|
436
|
+
const offset = MOUSE_CTX_BUTTON_STATES_OFFSET;
|
|
423
437
|
state.held = !!(this.#dataView.getUint8(offset + code) & 1);
|
|
424
438
|
state.down = state.held && !(this.#dataView.getUint8(offset + code) & 2);
|
|
425
439
|
state.up = !state.held && !!(this.#dataView.getUint8(offset + code) & 2);
|
|
@@ -1042,15 +1056,6 @@ class KeyboardContext {
|
|
|
1042
1056
|
}
|
|
1043
1057
|
}
|
|
1044
1058
|
// js/contexts/netContext.ts
|
|
1045
|
-
var MAX_PEERS = 12;
|
|
1046
|
-
var PEERS_ARRAY_OFFSET = 32;
|
|
1047
|
-
var PEER_CTX_SIZE = 8;
|
|
1048
|
-
var LAST_ROLLBACK_DEPTH_OFFSET = 128;
|
|
1049
|
-
var TOTAL_ROLLBACKS_OFFSET = 132;
|
|
1050
|
-
var FRAMES_RESIMULATED_OFFSET = 136;
|
|
1051
|
-
var PEER_CONNECTED_OFFSET = 0;
|
|
1052
|
-
var PEER_SEQ_OFFSET = 2;
|
|
1053
|
-
var PEER_ACK_OFFSET = 4;
|
|
1054
1059
|
var STATUS_MAP = {
|
|
1055
1060
|
0: "offline",
|
|
1056
1061
|
1: "local",
|
|
@@ -1061,7 +1066,7 @@ var STATUS_MAP = {
|
|
|
1061
1066
|
|
|
1062
1067
|
class NetContext {
|
|
1063
1068
|
dataView;
|
|
1064
|
-
#peers = Array.from({ length:
|
|
1069
|
+
#peers = Array.from({ length: MAX_PLAYERS }, () => ({
|
|
1065
1070
|
isLocal: false,
|
|
1066
1071
|
seq: -1,
|
|
1067
1072
|
ack: -1
|
|
@@ -1079,38 +1084,38 @@ class NetContext {
|
|
|
1079
1084
|
if (!this.#hasValidBuffer()) {
|
|
1080
1085
|
throw new Error("NetContext dataView is not valid");
|
|
1081
1086
|
}
|
|
1082
|
-
return this.dataView.getUint8(
|
|
1087
|
+
return this.dataView.getUint8(NET_CTX_PEER_COUNT_OFFSET);
|
|
1083
1088
|
}
|
|
1084
1089
|
get localPeerId() {
|
|
1085
1090
|
if (!this.#hasValidBuffer()) {
|
|
1086
1091
|
throw new Error("NetContext dataView is not valid");
|
|
1087
1092
|
}
|
|
1088
|
-
return this.dataView.getUint8(
|
|
1093
|
+
return this.dataView.getUint8(NET_CTX_LOCAL_PEER_ID_OFFSET);
|
|
1089
1094
|
}
|
|
1090
1095
|
get isInSession() {
|
|
1091
1096
|
if (!this.#hasValidBuffer()) {
|
|
1092
1097
|
throw new Error("NetContext dataView is not valid");
|
|
1093
1098
|
}
|
|
1094
|
-
return this.dataView.getUint8(
|
|
1099
|
+
return this.dataView.getUint8(NET_CTX_IN_SESSION_OFFSET) !== 0;
|
|
1095
1100
|
}
|
|
1096
1101
|
get status() {
|
|
1097
1102
|
if (!this.#hasValidBuffer()) {
|
|
1098
1103
|
throw new Error("NetContext dataView is not valid");
|
|
1099
1104
|
}
|
|
1100
|
-
const statusByte = this.dataView.getUint8(
|
|
1105
|
+
const statusByte = this.dataView.getUint8(NET_CTX_STATUS_OFFSET);
|
|
1101
1106
|
return STATUS_MAP[statusByte] ?? "local";
|
|
1102
1107
|
}
|
|
1103
1108
|
get matchFrame() {
|
|
1104
1109
|
if (!this.#hasValidBuffer()) {
|
|
1105
1110
|
throw new Error("NetContext dataView is not valid");
|
|
1106
1111
|
}
|
|
1107
|
-
return this.dataView.getUint32(
|
|
1112
|
+
return this.dataView.getUint32(NET_CTX_MATCH_FRAME_OFFSET, true);
|
|
1108
1113
|
}
|
|
1109
1114
|
get sessionStartFrame() {
|
|
1110
1115
|
if (!this.#hasValidBuffer()) {
|
|
1111
1116
|
throw new Error("NetContext dataView is not valid");
|
|
1112
1117
|
}
|
|
1113
|
-
return this.dataView.getUint32(
|
|
1118
|
+
return this.dataView.getUint32(NET_CTX_SESSION_START_FRAME_OFFSET, true);
|
|
1114
1119
|
}
|
|
1115
1120
|
get roomCode() {
|
|
1116
1121
|
if (!this.#hasValidBuffer()) {
|
|
@@ -1118,7 +1123,7 @@ class NetContext {
|
|
|
1118
1123
|
}
|
|
1119
1124
|
const bytes = [];
|
|
1120
1125
|
for (let i = 0;i < 8; i++) {
|
|
1121
|
-
const byte = this.dataView.getUint8(
|
|
1126
|
+
const byte = this.dataView.getUint8(NET_CTX_ROOM_CODE_OFFSET + i);
|
|
1122
1127
|
if (byte === 0)
|
|
1123
1128
|
break;
|
|
1124
1129
|
bytes.push(byte);
|
|
@@ -1131,7 +1136,7 @@ class NetContext {
|
|
|
1131
1136
|
}
|
|
1132
1137
|
const bytes = [];
|
|
1133
1138
|
for (let i = 0;i < 8; i++) {
|
|
1134
|
-
const byte = this.dataView.getUint8(
|
|
1139
|
+
const byte = this.dataView.getUint8(NET_CTX_WANTS_ROOM_CODE_OFFSET + i);
|
|
1135
1140
|
if (byte === 0)
|
|
1136
1141
|
break;
|
|
1137
1142
|
bytes.push(byte);
|
|
@@ -1143,11 +1148,11 @@ class NetContext {
|
|
|
1143
1148
|
throw new Error("NetContext dataView is not valid");
|
|
1144
1149
|
}
|
|
1145
1150
|
for (let i = 0;i < 8; i++) {
|
|
1146
|
-
this.dataView.setUint8(
|
|
1151
|
+
this.dataView.setUint8(NET_CTX_WANTS_ROOM_CODE_OFFSET + i, 0);
|
|
1147
1152
|
}
|
|
1148
1153
|
if (code) {
|
|
1149
1154
|
for (let i = 0;i < Math.min(code.length, 7); i++) {
|
|
1150
|
-
this.dataView.setUint8(
|
|
1155
|
+
this.dataView.setUint8(NET_CTX_WANTS_ROOM_CODE_OFFSET + i, code.charCodeAt(i));
|
|
1151
1156
|
}
|
|
1152
1157
|
}
|
|
1153
1158
|
}
|
|
@@ -1155,13 +1160,13 @@ class NetContext {
|
|
|
1155
1160
|
if (!this.#hasValidBuffer()) {
|
|
1156
1161
|
return false;
|
|
1157
1162
|
}
|
|
1158
|
-
return this.dataView.getUint8(
|
|
1163
|
+
return this.dataView.getUint8(NET_CTX_WANTS_DISCONNECT_OFFSET) !== 0;
|
|
1159
1164
|
}
|
|
1160
1165
|
set wantsDisconnect(value) {
|
|
1161
1166
|
if (!this.#hasValidBuffer()) {
|
|
1162
1167
|
throw new Error("NetContext dataView is not valid");
|
|
1163
1168
|
}
|
|
1164
|
-
this.dataView.setUint8(
|
|
1169
|
+
this.dataView.setUint8(NET_CTX_WANTS_DISCONNECT_OFFSET, value ? 1 : 0);
|
|
1165
1170
|
}
|
|
1166
1171
|
get peers() {
|
|
1167
1172
|
if (!this.#hasValidBuffer()) {
|
|
@@ -1171,13 +1176,13 @@ class NetContext {
|
|
|
1171
1176
|
const localPeerId = this.localPeerId;
|
|
1172
1177
|
const matchFrame = this.matchFrame;
|
|
1173
1178
|
let minRemoteSeq = -1;
|
|
1174
|
-
for (let i = 0;i <
|
|
1179
|
+
for (let i = 0;i < MAX_PLAYERS; i++) {
|
|
1175
1180
|
if (i === localPeerId)
|
|
1176
1181
|
continue;
|
|
1177
|
-
const peerOffset =
|
|
1178
|
-
if (dv.getUint8(peerOffset +
|
|
1182
|
+
const peerOffset = NET_CTX_PEERS_OFFSET + i * PEER_CTX_SIZE;
|
|
1183
|
+
if (dv.getUint8(peerOffset + PEER_CTX_CONNECTED_OFFSET) !== 1)
|
|
1179
1184
|
continue;
|
|
1180
|
-
const seq = dv.getInt16(peerOffset +
|
|
1185
|
+
const seq = dv.getInt16(peerOffset + PEER_CTX_SEQ_OFFSET, true);
|
|
1181
1186
|
if (seq < 0)
|
|
1182
1187
|
continue;
|
|
1183
1188
|
if (minRemoteSeq === -1 || seq < minRemoteSeq) {
|
|
@@ -1185,9 +1190,9 @@ class NetContext {
|
|
|
1185
1190
|
}
|
|
1186
1191
|
}
|
|
1187
1192
|
this.#peersResult.length = 0;
|
|
1188
|
-
for (let i = 0;i <
|
|
1189
|
-
const peerOffset =
|
|
1190
|
-
if (dv.getUint8(peerOffset +
|
|
1193
|
+
for (let i = 0;i < MAX_PLAYERS; i++) {
|
|
1194
|
+
const peerOffset = NET_CTX_PEERS_OFFSET + i * PEER_CTX_SIZE;
|
|
1195
|
+
if (dv.getUint8(peerOffset + PEER_CTX_CONNECTED_OFFSET) !== 1)
|
|
1191
1196
|
continue;
|
|
1192
1197
|
const peer = this.#peers[i];
|
|
1193
1198
|
if (!peer) {
|
|
@@ -1199,8 +1204,8 @@ class NetContext {
|
|
|
1199
1204
|
peer.seq = matchFrame;
|
|
1200
1205
|
peer.ack = minRemoteSeq;
|
|
1201
1206
|
} else {
|
|
1202
|
-
peer.seq = dv.getInt16(peerOffset +
|
|
1203
|
-
peer.ack = dv.getInt16(peerOffset +
|
|
1207
|
+
peer.seq = dv.getInt16(peerOffset + PEER_CTX_SEQ_OFFSET, true);
|
|
1208
|
+
peer.ack = dv.getInt16(peerOffset + PEER_CTX_ACK_OFFSET, true);
|
|
1204
1209
|
}
|
|
1205
1210
|
this.#peersResult.push(peer);
|
|
1206
1211
|
}
|
|
@@ -1210,19 +1215,56 @@ class NetContext {
|
|
|
1210
1215
|
if (!this.#hasValidBuffer()) {
|
|
1211
1216
|
throw new Error("NetContext dataView is not valid");
|
|
1212
1217
|
}
|
|
1213
|
-
return this.dataView.getUint32(
|
|
1218
|
+
return this.dataView.getUint32(NET_CTX_LAST_ROLLBACK_DEPTH_OFFSET, true);
|
|
1214
1219
|
}
|
|
1215
1220
|
get totalRollbacks() {
|
|
1216
1221
|
if (!this.#hasValidBuffer()) {
|
|
1217
1222
|
throw new Error("NetContext dataView is not valid");
|
|
1218
1223
|
}
|
|
1219
|
-
return this.dataView.getUint32(
|
|
1224
|
+
return this.dataView.getUint32(NET_CTX_TOTAL_ROLLBACKS_OFFSET, true);
|
|
1220
1225
|
}
|
|
1221
1226
|
get framesResimulated() {
|
|
1222
1227
|
if (!this.#hasValidBuffer()) {
|
|
1223
1228
|
throw new Error("NetContext dataView is not valid");
|
|
1224
1229
|
}
|
|
1225
|
-
return Number(this.dataView.getBigUint64(
|
|
1230
|
+
return Number(this.dataView.getBigUint64(NET_CTX_FRAMES_RESIMULATED_OFFSET, true));
|
|
1231
|
+
}
|
|
1232
|
+
}
|
|
1233
|
+
// js/contexts/screenContext.ts
|
|
1234
|
+
class ScreenContext {
|
|
1235
|
+
dataView;
|
|
1236
|
+
constructor(dataView) {
|
|
1237
|
+
this.dataView = dataView;
|
|
1238
|
+
}
|
|
1239
|
+
get width() {
|
|
1240
|
+
if (!this.dataView) {
|
|
1241
|
+
throw new Error("ScreenContext DataView is not initialized");
|
|
1242
|
+
}
|
|
1243
|
+
return this.dataView.getUint32(SCREEN_CTX_WIDTH_OFFSET, true);
|
|
1244
|
+
}
|
|
1245
|
+
get height() {
|
|
1246
|
+
if (!this.dataView) {
|
|
1247
|
+
throw new Error("ScreenContext DataView is not initialized");
|
|
1248
|
+
}
|
|
1249
|
+
return this.dataView.getUint32(SCREEN_CTX_HEIGHT_OFFSET, true);
|
|
1250
|
+
}
|
|
1251
|
+
get physicalWidth() {
|
|
1252
|
+
if (!this.dataView) {
|
|
1253
|
+
throw new Error("ScreenContext DataView is not initialized");
|
|
1254
|
+
}
|
|
1255
|
+
return this.dataView.getUint32(SCREEN_CTX_PHYSICAL_WIDTH_OFFSET, true);
|
|
1256
|
+
}
|
|
1257
|
+
get physicalHeight() {
|
|
1258
|
+
if (!this.dataView) {
|
|
1259
|
+
throw new Error("ScreenContext DataView is not initialized");
|
|
1260
|
+
}
|
|
1261
|
+
return this.dataView.getUint32(SCREEN_CTX_PHYSICAL_HEIGHT_OFFSET, true);
|
|
1262
|
+
}
|
|
1263
|
+
get pixelRatio() {
|
|
1264
|
+
if (!this.dataView) {
|
|
1265
|
+
throw new Error("ScreenContext DataView is not initialized");
|
|
1266
|
+
}
|
|
1267
|
+
return this.dataView.getFloat32(SCREEN_CTX_PIXEL_RATIO_OFFSET, true);
|
|
1226
1268
|
}
|
|
1227
1269
|
}
|
|
1228
1270
|
// js/contexts/timeContext.ts
|
|
@@ -1235,21 +1277,42 @@ class TimeContext {
|
|
|
1235
1277
|
if (!this.dataView) {
|
|
1236
1278
|
throw new Error("TimeContext DataView is not initialized");
|
|
1237
1279
|
}
|
|
1238
|
-
return this.dataView.getUint32(
|
|
1280
|
+
return this.dataView.getUint32(TIME_CTX_FRAME_OFFSET, true);
|
|
1239
1281
|
}
|
|
1240
1282
|
get dt() {
|
|
1241
1283
|
if (!this.dataView) {
|
|
1242
1284
|
throw new Error("TimeContext DataView is not initialized");
|
|
1243
1285
|
}
|
|
1244
|
-
return this.dataView.getUint32(
|
|
1286
|
+
return this.dataView.getUint32(TIME_CTX_DT_MS_OFFSET, true) / 1000;
|
|
1245
1287
|
}
|
|
1246
1288
|
get time() {
|
|
1247
1289
|
if (!this.dataView) {
|
|
1248
1290
|
throw new Error("TimeContext DataView is not initialized");
|
|
1249
1291
|
}
|
|
1250
|
-
return this.dataView.getUint32(
|
|
1292
|
+
return this.dataView.getUint32(TIME_CTX_TOTAL_MS_OFFSET, true) / 1000;
|
|
1251
1293
|
}
|
|
1252
1294
|
}
|
|
1295
|
+
// js/inputs.ts
|
|
1296
|
+
var EVENT_PAYLOAD_SIZE = 8;
|
|
1297
|
+
var EVENT_PAYLOAD_ALIGN = 4;
|
|
1298
|
+
function keyToKeyCode(key) {
|
|
1299
|
+
return Key[key];
|
|
1300
|
+
}
|
|
1301
|
+
function keyCodeToKey(code) {
|
|
1302
|
+
return Key[code];
|
|
1303
|
+
}
|
|
1304
|
+
function mouseButtonToMouseButtonCode(button) {
|
|
1305
|
+
return MouseButton[button];
|
|
1306
|
+
}
|
|
1307
|
+
function mouseButtonCodeToMouseButton(code) {
|
|
1308
|
+
return MouseButton[code];
|
|
1309
|
+
}
|
|
1310
|
+
function inputSourceToInputSourceCode(source) {
|
|
1311
|
+
return InputSource[source];
|
|
1312
|
+
}
|
|
1313
|
+
function inputSourceCodeToInputSource(code) {
|
|
1314
|
+
return InputSource[code];
|
|
1315
|
+
}
|
|
1253
1316
|
// js/tape.ts
|
|
1254
1317
|
var TAPE_MAGIC = 1413566533;
|
|
1255
1318
|
function readTapeHeader(tape) {
|
|
@@ -1267,7 +1330,7 @@ function readTapeHeader(tape) {
|
|
|
1267
1330
|
};
|
|
1268
1331
|
}
|
|
1269
1332
|
// js/defaultUrl.ts
|
|
1270
|
-
var DEFAULT_WASM_URL = new URL("https://unpkg.com/@bloopjs/engine@0.0.
|
|
1333
|
+
var DEFAULT_WASM_URL = new URL("https://unpkg.com/@bloopjs/engine@0.0.90/wasm/bloop.wasm");
|
|
1271
1334
|
|
|
1272
1335
|
// js/engine.ts
|
|
1273
1336
|
var MAX_ROLLBACK_FRAMES = 500;
|
|
@@ -1275,6 +1338,7 @@ var TIME_CTX_OFFSET = 0;
|
|
|
1275
1338
|
var INPUT_CTX_OFFSET = TIME_CTX_OFFSET + 4;
|
|
1276
1339
|
var EVENTS_OFFSET = INPUT_CTX_OFFSET + 4;
|
|
1277
1340
|
var NET_CTX_OFFSET = EVENTS_OFFSET + 4;
|
|
1341
|
+
var SCREEN_CTX_OFFSET = NET_CTX_OFFSET + 4;
|
|
1278
1342
|
var SNAPSHOT_HEADER_LEN = 16;
|
|
1279
1343
|
var SNAPSHOT_HEADER_USER_LEN_OFFSET = 4;
|
|
1280
1344
|
var SNAPSHOT_HEADER_ENGINE_LEN_OFFSET = 8;
|
|
@@ -1288,21 +1352,28 @@ export {
|
|
|
1288
1352
|
inputSourceCodeToInputSource,
|
|
1289
1353
|
TimeContext,
|
|
1290
1354
|
TIME_CTX_OFFSET,
|
|
1355
|
+
ScreenContext,
|
|
1291
1356
|
SNAPSHOT_HEADER_USER_LEN_OFFSET,
|
|
1292
1357
|
SNAPSHOT_HEADER_LEN,
|
|
1293
1358
|
SNAPSHOT_HEADER_ENGINE_LEN_OFFSET,
|
|
1359
|
+
SCREEN_CTX_OFFSET,
|
|
1294
1360
|
PlayerInputContext,
|
|
1295
1361
|
PLAYER_INPUTS_SIZE,
|
|
1362
|
+
PLAYER_INPUTS_MOUSE_CTX_OFFSET,
|
|
1363
|
+
PLAYER_INPUTS_KEY_CTX_OFFSET,
|
|
1296
1364
|
NetContext,
|
|
1297
1365
|
NET_CTX_OFFSET,
|
|
1298
1366
|
MouseContext,
|
|
1299
|
-
MOUSE_OFFSET,
|
|
1300
|
-
|
|
1367
|
+
PLAYER_INPUTS_MOUSE_CTX_OFFSET as MOUSE_OFFSET,
|
|
1368
|
+
MOUSE_CTX_SIZE,
|
|
1369
|
+
MOUSE_CTX_BUTTON_STATES_OFFSET,
|
|
1370
|
+
MOUSE_CTX_BUTTON_STATES_OFFSET as MOUSE_BUTTONS_OFFSET,
|
|
1301
1371
|
MAX_ROLLBACK_FRAMES,
|
|
1302
1372
|
MAX_PLAYERS,
|
|
1303
1373
|
KeyboardContext,
|
|
1304
|
-
|
|
1305
|
-
|
|
1374
|
+
KEY_CTX_SIZE,
|
|
1375
|
+
KEY_CTX_SIZE as KEYBOARD_SIZE,
|
|
1376
|
+
PLAYER_INPUTS_KEY_CTX_OFFSET as KEYBOARD_OFFSET,
|
|
1306
1377
|
InputContext,
|
|
1307
1378
|
INPUT_CTX_SIZE,
|
|
1308
1379
|
INPUT_CTX_OFFSET,
|
|
@@ -1313,5 +1384,5 @@ export {
|
|
|
1313
1384
|
DEFAULT_WASM_URL
|
|
1314
1385
|
};
|
|
1315
1386
|
|
|
1316
|
-
//# debugId=
|
|
1387
|
+
//# debugId=B38E2249C075557964756E2164756E21
|
|
1317
1388
|
//# sourceMappingURL=engine.js.map
|