@bloopjs/web 0.0.92 → 0.0.93

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/mod.js CHANGED
@@ -415,6 +415,7 @@ var NET_CTX_PEERS_OFFSET = 32;
415
415
  var NET_CTX_LAST_ROLLBACK_DEPTH_OFFSET = 128;
416
416
  var NET_CTX_TOTAL_ROLLBACKS_OFFSET = 132;
417
417
  var NET_CTX_FRAMES_RESIMULATED_OFFSET = 136;
418
+ var NET_CTX_CONFIRMED_MATCH_FRAME_OFFSET = 144;
418
419
  var SCREEN_CTX_WIDTH_OFFSET = 0;
419
420
  var SCREEN_CTX_HEIGHT_OFFSET = 4;
420
421
  var SCREEN_CTX_PHYSICAL_WIDTH_OFFSET = 8;
@@ -1334,6 +1335,23 @@ class NetContext {
1334
1335
  }
1335
1336
  return Number(this.dataView.getBigUint64(NET_CTX_FRAMES_RESIMULATED_OFFSET, true));
1336
1337
  }
1338
+ get confirmedMatchFrame() {
1339
+ if (!this.#hasValidBuffer()) {
1340
+ throw new Error("NetContext dataView is not valid");
1341
+ }
1342
+ return this.dataView.getInt32(NET_CTX_CONFIRMED_MATCH_FRAME_OFFSET, true);
1343
+ }
1344
+ get isConfirmFrame() {
1345
+ if (this.peerCount <= 1)
1346
+ return true;
1347
+ const confirmed = this.confirmedMatchFrame;
1348
+ if (confirmed < 0)
1349
+ return false;
1350
+ return this.matchFrame <= confirmed;
1351
+ }
1352
+ get isPredictionFrame() {
1353
+ return !this.isConfirmFrame;
1354
+ }
1337
1355
  }
1338
1356
 
1339
1357
  class ScreenContext {
@@ -1432,7 +1450,7 @@ function readTapeHeader(tape) {
1432
1450
  eventCount: view.getUint16(14, true)
1433
1451
  };
1434
1452
  }
1435
- var DEFAULT_WASM_URL = new URL("https://unpkg.com/@bloopjs/engine@0.0.92/wasm/bloop.wasm");
1453
+ var DEFAULT_WASM_URL = new URL("https://unpkg.com/@bloopjs/engine@0.0.93/wasm/bloop.wasm");
1436
1454
  var MAX_ROLLBACK_FRAMES = 500;
1437
1455
  var TIME_CTX_OFFSET = 0;
1438
1456
  var INPUT_CTX_OFFSET = TIME_CTX_OFFSET + 4;
@@ -2343,6 +2361,7 @@ var NET_CTX_PEERS_OFFSET2 = 32;
2343
2361
  var NET_CTX_LAST_ROLLBACK_DEPTH_OFFSET2 = 128;
2344
2362
  var NET_CTX_TOTAL_ROLLBACKS_OFFSET2 = 132;
2345
2363
  var NET_CTX_FRAMES_RESIMULATED_OFFSET2 = 136;
2364
+ var NET_CTX_CONFIRMED_MATCH_FRAME_OFFSET2 = 144;
2346
2365
  var MOUSE_CTX_X_OFFSET2 = 0;
2347
2366
  var MOUSE_CTX_Y_OFFSET2 = 4;
2348
2367
  var MOUSE_CTX_WHEEL_X_OFFSET2 = 8;
@@ -3254,6 +3273,23 @@ class NetContext2 {
3254
3273
  }
3255
3274
  return Number(this.dataView.getBigUint64(NET_CTX_FRAMES_RESIMULATED_OFFSET2, true));
3256
3275
  }
3276
+ get confirmedMatchFrame() {
3277
+ if (!this.#hasValidBuffer()) {
3278
+ throw new Error("NetContext dataView is not valid");
3279
+ }
3280
+ return this.dataView.getInt32(NET_CTX_CONFIRMED_MATCH_FRAME_OFFSET2, true);
3281
+ }
3282
+ get isConfirmFrame() {
3283
+ if (this.peerCount <= 1)
3284
+ return true;
3285
+ const confirmed = this.confirmedMatchFrame;
3286
+ if (confirmed < 0)
3287
+ return false;
3288
+ return this.matchFrame <= confirmed;
3289
+ }
3290
+ get isPredictionFrame() {
3291
+ return !this.isConfirmFrame;
3292
+ }
3257
3293
  }
3258
3294
  function mouseButtonCodeToMouseButton2(code) {
3259
3295
  return MouseButton2[code];
@@ -3273,7 +3309,7 @@ function readTapeHeader2(tape) {
3273
3309
  eventCount: view.getUint16(14, true)
3274
3310
  };
3275
3311
  }
3276
- var DEFAULT_WASM_URL2 = new URL("https://unpkg.com/@bloopjs/engine@0.0.92/wasm/bloop.wasm");
3312
+ var DEFAULT_WASM_URL2 = new URL("https://unpkg.com/@bloopjs/engine@0.0.93/wasm/bloop.wasm");
3277
3313
  var TIME_CTX_OFFSET2 = 0;
3278
3314
  var INPUT_CTX_OFFSET2 = TIME_CTX_OFFSET2 + 4;
3279
3315
  var EVENTS_OFFSET2 = INPUT_CTX_OFFSET2 + 4;
@@ -7450,5 +7486,5 @@ export {
7450
7486
  App
7451
7487
  };
7452
7488
 
7453
- //# debugId=B02D4DB9DDB2D5FC64756E2164756E21
7489
+ //# debugId=18A1E6B20945E8E464756E2164756E21
7454
7490
  //# sourceMappingURL=mod.js.map