microboard-temp 0.13.5 → 0.13.6

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.
@@ -4674,7 +4674,13 @@ var conf = {
4674
4674
  CARD_DIMENSIONS: { width: 250, height: 400 },
4675
4675
  DEFAULT_GAME_ITEM_DIMENSIONS: { width: 200, height: 200 },
4676
4676
  MAX_CARD_SIZE: 500,
4677
- CONNECTOR_ITEM_OFFSET: 20
4677
+ CONNECTOR_ITEM_OFFSET: 20,
4678
+ GRAVITY_G: 80,
4679
+ GRAVITY_G_CENTER: 120,
4680
+ GRAVITY_DAMPING: 0.96,
4681
+ GRAVITY_RESTITUTION: 0.5,
4682
+ GRAVITY_REPULSION: 200,
4683
+ GRAVITY_MAX_DISTANCE: 3000
4678
4684
  };
4679
4685
  initDefaultI18N();
4680
4686
 
@@ -54348,14 +54354,8 @@ class GravityEngine {
54348
54354
  tickTimer = null;
54349
54355
  syncTimer = null;
54350
54356
  lastSyncedPositions = new Map;
54351
- G = 80;
54352
- G_CENTER = 120;
54353
- DAMPING = 0.96;
54354
- RESTITUTION = 0.5;
54355
- REPULSION = 200;
54356
54357
  TICK_MS = 33;
54357
54358
  SYNC_MS = 300;
54358
- MAX_DISTANCE = 3000;
54359
54359
  SOFTENING_SQ = 50 * 50;
54360
54360
  MIN_MOVE_PX = 0.1;
54361
54361
  constructor(board) {
@@ -54424,8 +54424,8 @@ class GravityEngine {
54424
54424
  const dcx = centerX - s1.cx;
54425
54425
  const dcy = centerY - s1.cy;
54426
54426
  const distCenter = Math.sqrt(dcx * dcx + dcy * dcy) + 1;
54427
- ax += this.G_CENTER * dcx / distCenter;
54428
- ay += this.G_CENTER * dcy / distCenter;
54427
+ ax += conf.GRAVITY_G_CENTER * dcx / distCenter;
54428
+ ay += conf.GRAVITY_G_CENTER * dcy / distCenter;
54429
54429
  for (let j = 0;j < snap.length; j++) {
54430
54430
  if (i === j)
54431
54431
  continue;
@@ -54433,7 +54433,7 @@ class GravityEngine {
54433
54433
  const dx = s2.cx - s1.cx;
54434
54434
  const dy = s2.cy - s1.cy;
54435
54435
  const dist = Math.sqrt(dx * dx + dy * dy) + 0.001;
54436
- if (dist > this.MAX_DISTANCE)
54436
+ if (dist > conf.GRAVITY_MAX_DISTANCE)
54437
54437
  continue;
54438
54438
  const overlapping = s1.right > s2.left && s2.right > s1.left && s1.bottom > s2.top && s2.bottom > s1.top;
54439
54439
  if (overlapping) {
@@ -54442,26 +54442,26 @@ class GravityEngine {
54442
54442
  if (overlapX < overlapY) {
54443
54443
  const sign = s1.cx < s2.cx ? -1 : 1;
54444
54444
  if (sign * vel.vx < 0)
54445
- vel.vx = -vel.vx * this.RESTITUTION;
54446
- ax += sign * this.REPULSION * overlapX;
54445
+ vel.vx = -vel.vx * conf.GRAVITY_RESTITUTION;
54446
+ ax += sign * conf.GRAVITY_REPULSION * overlapX;
54447
54447
  } else {
54448
54448
  const sign = s1.cy < s2.cy ? -1 : 1;
54449
54449
  if (sign * vel.vy < 0)
54450
- vel.vy = -vel.vy * this.RESTITUTION;
54451
- ay += sign * this.REPULSION * overlapY;
54450
+ vel.vy = -vel.vy * conf.GRAVITY_RESTITUTION;
54451
+ ay += sign * conf.GRAVITY_REPULSION * overlapY;
54452
54452
  }
54453
54453
  } else {
54454
54454
  const touchDist = (s1.w + s2.w + s1.h + s2.h) * 0.25;
54455
54455
  if (dist < touchDist + 5)
54456
54456
  continue;
54457
54457
  const distSq = dx * dx + dy * dy;
54458
- const gravAcc = this.G * s2.mass / (distSq + this.SOFTENING_SQ);
54458
+ const gravAcc = conf.GRAVITY_G * s2.mass / (distSq + this.SOFTENING_SQ);
54459
54459
  ax += gravAcc * dx / dist;
54460
54460
  ay += gravAcc * dy / dist;
54461
54461
  }
54462
54462
  }
54463
- vel.vx = (vel.vx + ax * dt) * this.DAMPING;
54464
- vel.vy = (vel.vy + ay * dt) * this.DAMPING;
54463
+ vel.vx = (vel.vx + ax * dt) * conf.GRAVITY_DAMPING;
54464
+ vel.vy = (vel.vy + ay * dt) * conf.GRAVITY_DAMPING;
54465
54465
  const moveX = vel.vx * dt;
54466
54466
  const moveY = vel.vy * dt;
54467
54467
  if (Math.abs(moveX) >= this.MIN_MOVE_PX || Math.abs(moveY) >= this.MIN_MOVE_PX) {
package/dist/cjs/index.js CHANGED
@@ -4674,7 +4674,13 @@ var conf = {
4674
4674
  CARD_DIMENSIONS: { width: 250, height: 400 },
4675
4675
  DEFAULT_GAME_ITEM_DIMENSIONS: { width: 200, height: 200 },
4676
4676
  MAX_CARD_SIZE: 500,
4677
- CONNECTOR_ITEM_OFFSET: 20
4677
+ CONNECTOR_ITEM_OFFSET: 20,
4678
+ GRAVITY_G: 80,
4679
+ GRAVITY_G_CENTER: 120,
4680
+ GRAVITY_DAMPING: 0.96,
4681
+ GRAVITY_RESTITUTION: 0.5,
4682
+ GRAVITY_REPULSION: 200,
4683
+ GRAVITY_MAX_DISTANCE: 3000
4678
4684
  };
4679
4685
  initDefaultI18N();
4680
4686
 
@@ -54348,14 +54354,8 @@ class GravityEngine {
54348
54354
  tickTimer = null;
54349
54355
  syncTimer = null;
54350
54356
  lastSyncedPositions = new Map;
54351
- G = 80;
54352
- G_CENTER = 120;
54353
- DAMPING = 0.96;
54354
- RESTITUTION = 0.5;
54355
- REPULSION = 200;
54356
54357
  TICK_MS = 33;
54357
54358
  SYNC_MS = 300;
54358
- MAX_DISTANCE = 3000;
54359
54359
  SOFTENING_SQ = 50 * 50;
54360
54360
  MIN_MOVE_PX = 0.1;
54361
54361
  constructor(board) {
@@ -54424,8 +54424,8 @@ class GravityEngine {
54424
54424
  const dcx = centerX - s1.cx;
54425
54425
  const dcy = centerY - s1.cy;
54426
54426
  const distCenter = Math.sqrt(dcx * dcx + dcy * dcy) + 1;
54427
- ax += this.G_CENTER * dcx / distCenter;
54428
- ay += this.G_CENTER * dcy / distCenter;
54427
+ ax += conf.GRAVITY_G_CENTER * dcx / distCenter;
54428
+ ay += conf.GRAVITY_G_CENTER * dcy / distCenter;
54429
54429
  for (let j = 0;j < snap.length; j++) {
54430
54430
  if (i === j)
54431
54431
  continue;
@@ -54433,7 +54433,7 @@ class GravityEngine {
54433
54433
  const dx = s2.cx - s1.cx;
54434
54434
  const dy = s2.cy - s1.cy;
54435
54435
  const dist = Math.sqrt(dx * dx + dy * dy) + 0.001;
54436
- if (dist > this.MAX_DISTANCE)
54436
+ if (dist > conf.GRAVITY_MAX_DISTANCE)
54437
54437
  continue;
54438
54438
  const overlapping = s1.right > s2.left && s2.right > s1.left && s1.bottom > s2.top && s2.bottom > s1.top;
54439
54439
  if (overlapping) {
@@ -54442,26 +54442,26 @@ class GravityEngine {
54442
54442
  if (overlapX < overlapY) {
54443
54443
  const sign = s1.cx < s2.cx ? -1 : 1;
54444
54444
  if (sign * vel.vx < 0)
54445
- vel.vx = -vel.vx * this.RESTITUTION;
54446
- ax += sign * this.REPULSION * overlapX;
54445
+ vel.vx = -vel.vx * conf.GRAVITY_RESTITUTION;
54446
+ ax += sign * conf.GRAVITY_REPULSION * overlapX;
54447
54447
  } else {
54448
54448
  const sign = s1.cy < s2.cy ? -1 : 1;
54449
54449
  if (sign * vel.vy < 0)
54450
- vel.vy = -vel.vy * this.RESTITUTION;
54451
- ay += sign * this.REPULSION * overlapY;
54450
+ vel.vy = -vel.vy * conf.GRAVITY_RESTITUTION;
54451
+ ay += sign * conf.GRAVITY_REPULSION * overlapY;
54452
54452
  }
54453
54453
  } else {
54454
54454
  const touchDist = (s1.w + s2.w + s1.h + s2.h) * 0.25;
54455
54455
  if (dist < touchDist + 5)
54456
54456
  continue;
54457
54457
  const distSq = dx * dx + dy * dy;
54458
- const gravAcc = this.G * s2.mass / (distSq + this.SOFTENING_SQ);
54458
+ const gravAcc = conf.GRAVITY_G * s2.mass / (distSq + this.SOFTENING_SQ);
54459
54459
  ax += gravAcc * dx / dist;
54460
54460
  ay += gravAcc * dy / dist;
54461
54461
  }
54462
54462
  }
54463
- vel.vx = (vel.vx + ax * dt) * this.DAMPING;
54464
- vel.vy = (vel.vy + ay * dt) * this.DAMPING;
54463
+ vel.vx = (vel.vx + ax * dt) * conf.GRAVITY_DAMPING;
54464
+ vel.vy = (vel.vy + ay * dt) * conf.GRAVITY_DAMPING;
54465
54465
  const moveX = vel.vx * dt;
54466
54466
  const moveY = vel.vy * dt;
54467
54467
  if (Math.abs(moveX) >= this.MIN_MOVE_PX || Math.abs(moveY) >= this.MIN_MOVE_PX) {
package/dist/cjs/node.js CHANGED
@@ -5711,7 +5711,13 @@ var conf = {
5711
5711
  CARD_DIMENSIONS: { width: 250, height: 400 },
5712
5712
  DEFAULT_GAME_ITEM_DIMENSIONS: { width: 200, height: 200 },
5713
5713
  MAX_CARD_SIZE: 500,
5714
- CONNECTOR_ITEM_OFFSET: 20
5714
+ CONNECTOR_ITEM_OFFSET: 20,
5715
+ GRAVITY_G: 80,
5716
+ GRAVITY_G_CENTER: 120,
5717
+ GRAVITY_DAMPING: 0.96,
5718
+ GRAVITY_RESTITUTION: 0.5,
5719
+ GRAVITY_REPULSION: 200,
5720
+ GRAVITY_MAX_DISTANCE: 3000
5715
5721
  };
5716
5722
  initDefaultI18N();
5717
5723
 
@@ -56821,14 +56827,8 @@ class GravityEngine {
56821
56827
  tickTimer = null;
56822
56828
  syncTimer = null;
56823
56829
  lastSyncedPositions = new Map;
56824
- G = 80;
56825
- G_CENTER = 120;
56826
- DAMPING = 0.96;
56827
- RESTITUTION = 0.5;
56828
- REPULSION = 200;
56829
56830
  TICK_MS = 33;
56830
56831
  SYNC_MS = 300;
56831
- MAX_DISTANCE = 3000;
56832
56832
  SOFTENING_SQ = 50 * 50;
56833
56833
  MIN_MOVE_PX = 0.1;
56834
56834
  constructor(board) {
@@ -56897,8 +56897,8 @@ class GravityEngine {
56897
56897
  const dcx = centerX - s1.cx;
56898
56898
  const dcy = centerY - s1.cy;
56899
56899
  const distCenter = Math.sqrt(dcx * dcx + dcy * dcy) + 1;
56900
- ax += this.G_CENTER * dcx / distCenter;
56901
- ay += this.G_CENTER * dcy / distCenter;
56900
+ ax += conf.GRAVITY_G_CENTER * dcx / distCenter;
56901
+ ay += conf.GRAVITY_G_CENTER * dcy / distCenter;
56902
56902
  for (let j = 0;j < snap.length; j++) {
56903
56903
  if (i === j)
56904
56904
  continue;
@@ -56906,7 +56906,7 @@ class GravityEngine {
56906
56906
  const dx = s2.cx - s1.cx;
56907
56907
  const dy = s2.cy - s1.cy;
56908
56908
  const dist = Math.sqrt(dx * dx + dy * dy) + 0.001;
56909
- if (dist > this.MAX_DISTANCE)
56909
+ if (dist > conf.GRAVITY_MAX_DISTANCE)
56910
56910
  continue;
56911
56911
  const overlapping = s1.right > s2.left && s2.right > s1.left && s1.bottom > s2.top && s2.bottom > s1.top;
56912
56912
  if (overlapping) {
@@ -56915,26 +56915,26 @@ class GravityEngine {
56915
56915
  if (overlapX < overlapY) {
56916
56916
  const sign = s1.cx < s2.cx ? -1 : 1;
56917
56917
  if (sign * vel.vx < 0)
56918
- vel.vx = -vel.vx * this.RESTITUTION;
56919
- ax += sign * this.REPULSION * overlapX;
56918
+ vel.vx = -vel.vx * conf.GRAVITY_RESTITUTION;
56919
+ ax += sign * conf.GRAVITY_REPULSION * overlapX;
56920
56920
  } else {
56921
56921
  const sign = s1.cy < s2.cy ? -1 : 1;
56922
56922
  if (sign * vel.vy < 0)
56923
- vel.vy = -vel.vy * this.RESTITUTION;
56924
- ay += sign * this.REPULSION * overlapY;
56923
+ vel.vy = -vel.vy * conf.GRAVITY_RESTITUTION;
56924
+ ay += sign * conf.GRAVITY_REPULSION * overlapY;
56925
56925
  }
56926
56926
  } else {
56927
56927
  const touchDist = (s1.w + s2.w + s1.h + s2.h) * 0.25;
56928
56928
  if (dist < touchDist + 5)
56929
56929
  continue;
56930
56930
  const distSq = dx * dx + dy * dy;
56931
- const gravAcc = this.G * s2.mass / (distSq + this.SOFTENING_SQ);
56931
+ const gravAcc = conf.GRAVITY_G * s2.mass / (distSq + this.SOFTENING_SQ);
56932
56932
  ax += gravAcc * dx / dist;
56933
56933
  ay += gravAcc * dy / dist;
56934
56934
  }
56935
56935
  }
56936
- vel.vx = (vel.vx + ax * dt) * this.DAMPING;
56937
- vel.vy = (vel.vy + ay * dt) * this.DAMPING;
56936
+ vel.vx = (vel.vx + ax * dt) * conf.GRAVITY_DAMPING;
56937
+ vel.vy = (vel.vy + ay * dt) * conf.GRAVITY_DAMPING;
56938
56938
  const moveX = vel.vx * dt;
56939
56939
  const moveY = vel.vy * dt;
56940
56940
  if (Math.abs(moveX) >= this.MIN_MOVE_PX || Math.abs(moveY) >= this.MIN_MOVE_PX) {
@@ -4494,7 +4494,13 @@ var conf = {
4494
4494
  CARD_DIMENSIONS: { width: 250, height: 400 },
4495
4495
  DEFAULT_GAME_ITEM_DIMENSIONS: { width: 200, height: 200 },
4496
4496
  MAX_CARD_SIZE: 500,
4497
- CONNECTOR_ITEM_OFFSET: 20
4497
+ CONNECTOR_ITEM_OFFSET: 20,
4498
+ GRAVITY_G: 80,
4499
+ GRAVITY_G_CENTER: 120,
4500
+ GRAVITY_DAMPING: 0.96,
4501
+ GRAVITY_RESTITUTION: 0.5,
4502
+ GRAVITY_REPULSION: 200,
4503
+ GRAVITY_MAX_DISTANCE: 3000
4498
4504
  };
4499
4505
  initDefaultI18N();
4500
4506
 
@@ -54177,14 +54183,8 @@ class GravityEngine {
54177
54183
  tickTimer = null;
54178
54184
  syncTimer = null;
54179
54185
  lastSyncedPositions = new Map;
54180
- G = 80;
54181
- G_CENTER = 120;
54182
- DAMPING = 0.96;
54183
- RESTITUTION = 0.5;
54184
- REPULSION = 200;
54185
54186
  TICK_MS = 33;
54186
54187
  SYNC_MS = 300;
54187
- MAX_DISTANCE = 3000;
54188
54188
  SOFTENING_SQ = 50 * 50;
54189
54189
  MIN_MOVE_PX = 0.1;
54190
54190
  constructor(board) {
@@ -54253,8 +54253,8 @@ class GravityEngine {
54253
54253
  const dcx = centerX - s1.cx;
54254
54254
  const dcy = centerY - s1.cy;
54255
54255
  const distCenter = Math.sqrt(dcx * dcx + dcy * dcy) + 1;
54256
- ax += this.G_CENTER * dcx / distCenter;
54257
- ay += this.G_CENTER * dcy / distCenter;
54256
+ ax += conf.GRAVITY_G_CENTER * dcx / distCenter;
54257
+ ay += conf.GRAVITY_G_CENTER * dcy / distCenter;
54258
54258
  for (let j = 0;j < snap.length; j++) {
54259
54259
  if (i === j)
54260
54260
  continue;
@@ -54262,7 +54262,7 @@ class GravityEngine {
54262
54262
  const dx = s2.cx - s1.cx;
54263
54263
  const dy = s2.cy - s1.cy;
54264
54264
  const dist = Math.sqrt(dx * dx + dy * dy) + 0.001;
54265
- if (dist > this.MAX_DISTANCE)
54265
+ if (dist > conf.GRAVITY_MAX_DISTANCE)
54266
54266
  continue;
54267
54267
  const overlapping = s1.right > s2.left && s2.right > s1.left && s1.bottom > s2.top && s2.bottom > s1.top;
54268
54268
  if (overlapping) {
@@ -54271,26 +54271,26 @@ class GravityEngine {
54271
54271
  if (overlapX < overlapY) {
54272
54272
  const sign = s1.cx < s2.cx ? -1 : 1;
54273
54273
  if (sign * vel.vx < 0)
54274
- vel.vx = -vel.vx * this.RESTITUTION;
54275
- ax += sign * this.REPULSION * overlapX;
54274
+ vel.vx = -vel.vx * conf.GRAVITY_RESTITUTION;
54275
+ ax += sign * conf.GRAVITY_REPULSION * overlapX;
54276
54276
  } else {
54277
54277
  const sign = s1.cy < s2.cy ? -1 : 1;
54278
54278
  if (sign * vel.vy < 0)
54279
- vel.vy = -vel.vy * this.RESTITUTION;
54280
- ay += sign * this.REPULSION * overlapY;
54279
+ vel.vy = -vel.vy * conf.GRAVITY_RESTITUTION;
54280
+ ay += sign * conf.GRAVITY_REPULSION * overlapY;
54281
54281
  }
54282
54282
  } else {
54283
54283
  const touchDist = (s1.w + s2.w + s1.h + s2.h) * 0.25;
54284
54284
  if (dist < touchDist + 5)
54285
54285
  continue;
54286
54286
  const distSq = dx * dx + dy * dy;
54287
- const gravAcc = this.G * s2.mass / (distSq + this.SOFTENING_SQ);
54287
+ const gravAcc = conf.GRAVITY_G * s2.mass / (distSq + this.SOFTENING_SQ);
54288
54288
  ax += gravAcc * dx / dist;
54289
54289
  ay += gravAcc * dy / dist;
54290
54290
  }
54291
54291
  }
54292
- vel.vx = (vel.vx + ax * dt) * this.DAMPING;
54293
- vel.vy = (vel.vy + ay * dt) * this.DAMPING;
54292
+ vel.vx = (vel.vx + ax * dt) * conf.GRAVITY_DAMPING;
54293
+ vel.vy = (vel.vy + ay * dt) * conf.GRAVITY_DAMPING;
54294
54294
  const moveX = vel.vx * dt;
54295
54295
  const moveY = vel.vy * dt;
54296
54296
  if (Math.abs(moveX) >= this.MIN_MOVE_PX || Math.abs(moveY) >= this.MIN_MOVE_PX) {
package/dist/esm/index.js CHANGED
@@ -4487,7 +4487,13 @@ var conf = {
4487
4487
  CARD_DIMENSIONS: { width: 250, height: 400 },
4488
4488
  DEFAULT_GAME_ITEM_DIMENSIONS: { width: 200, height: 200 },
4489
4489
  MAX_CARD_SIZE: 500,
4490
- CONNECTOR_ITEM_OFFSET: 20
4490
+ CONNECTOR_ITEM_OFFSET: 20,
4491
+ GRAVITY_G: 80,
4492
+ GRAVITY_G_CENTER: 120,
4493
+ GRAVITY_DAMPING: 0.96,
4494
+ GRAVITY_RESTITUTION: 0.5,
4495
+ GRAVITY_REPULSION: 200,
4496
+ GRAVITY_MAX_DISTANCE: 3000
4491
4497
  };
4492
4498
  initDefaultI18N();
4493
4499
 
@@ -54170,14 +54176,8 @@ class GravityEngine {
54170
54176
  tickTimer = null;
54171
54177
  syncTimer = null;
54172
54178
  lastSyncedPositions = new Map;
54173
- G = 80;
54174
- G_CENTER = 120;
54175
- DAMPING = 0.96;
54176
- RESTITUTION = 0.5;
54177
- REPULSION = 200;
54178
54179
  TICK_MS = 33;
54179
54180
  SYNC_MS = 300;
54180
- MAX_DISTANCE = 3000;
54181
54181
  SOFTENING_SQ = 50 * 50;
54182
54182
  MIN_MOVE_PX = 0.1;
54183
54183
  constructor(board) {
@@ -54246,8 +54246,8 @@ class GravityEngine {
54246
54246
  const dcx = centerX - s1.cx;
54247
54247
  const dcy = centerY - s1.cy;
54248
54248
  const distCenter = Math.sqrt(dcx * dcx + dcy * dcy) + 1;
54249
- ax += this.G_CENTER * dcx / distCenter;
54250
- ay += this.G_CENTER * dcy / distCenter;
54249
+ ax += conf.GRAVITY_G_CENTER * dcx / distCenter;
54250
+ ay += conf.GRAVITY_G_CENTER * dcy / distCenter;
54251
54251
  for (let j = 0;j < snap.length; j++) {
54252
54252
  if (i === j)
54253
54253
  continue;
@@ -54255,7 +54255,7 @@ class GravityEngine {
54255
54255
  const dx = s2.cx - s1.cx;
54256
54256
  const dy = s2.cy - s1.cy;
54257
54257
  const dist = Math.sqrt(dx * dx + dy * dy) + 0.001;
54258
- if (dist > this.MAX_DISTANCE)
54258
+ if (dist > conf.GRAVITY_MAX_DISTANCE)
54259
54259
  continue;
54260
54260
  const overlapping = s1.right > s2.left && s2.right > s1.left && s1.bottom > s2.top && s2.bottom > s1.top;
54261
54261
  if (overlapping) {
@@ -54264,26 +54264,26 @@ class GravityEngine {
54264
54264
  if (overlapX < overlapY) {
54265
54265
  const sign = s1.cx < s2.cx ? -1 : 1;
54266
54266
  if (sign * vel.vx < 0)
54267
- vel.vx = -vel.vx * this.RESTITUTION;
54268
- ax += sign * this.REPULSION * overlapX;
54267
+ vel.vx = -vel.vx * conf.GRAVITY_RESTITUTION;
54268
+ ax += sign * conf.GRAVITY_REPULSION * overlapX;
54269
54269
  } else {
54270
54270
  const sign = s1.cy < s2.cy ? -1 : 1;
54271
54271
  if (sign * vel.vy < 0)
54272
- vel.vy = -vel.vy * this.RESTITUTION;
54273
- ay += sign * this.REPULSION * overlapY;
54272
+ vel.vy = -vel.vy * conf.GRAVITY_RESTITUTION;
54273
+ ay += sign * conf.GRAVITY_REPULSION * overlapY;
54274
54274
  }
54275
54275
  } else {
54276
54276
  const touchDist = (s1.w + s2.w + s1.h + s2.h) * 0.25;
54277
54277
  if (dist < touchDist + 5)
54278
54278
  continue;
54279
54279
  const distSq = dx * dx + dy * dy;
54280
- const gravAcc = this.G * s2.mass / (distSq + this.SOFTENING_SQ);
54280
+ const gravAcc = conf.GRAVITY_G * s2.mass / (distSq + this.SOFTENING_SQ);
54281
54281
  ax += gravAcc * dx / dist;
54282
54282
  ay += gravAcc * dy / dist;
54283
54283
  }
54284
54284
  }
54285
- vel.vx = (vel.vx + ax * dt) * this.DAMPING;
54286
- vel.vy = (vel.vy + ay * dt) * this.DAMPING;
54285
+ vel.vx = (vel.vx + ax * dt) * conf.GRAVITY_DAMPING;
54286
+ vel.vy = (vel.vy + ay * dt) * conf.GRAVITY_DAMPING;
54287
54287
  const moveX = vel.vx * dt;
54288
54288
  const moveY = vel.vy * dt;
54289
54289
  if (Math.abs(moveX) >= this.MIN_MOVE_PX || Math.abs(moveY) >= this.MIN_MOVE_PX) {
package/dist/esm/node.js CHANGED
@@ -5271,7 +5271,13 @@ var conf = {
5271
5271
  CARD_DIMENSIONS: { width: 250, height: 400 },
5272
5272
  DEFAULT_GAME_ITEM_DIMENSIONS: { width: 200, height: 200 },
5273
5273
  MAX_CARD_SIZE: 500,
5274
- CONNECTOR_ITEM_OFFSET: 20
5274
+ CONNECTOR_ITEM_OFFSET: 20,
5275
+ GRAVITY_G: 80,
5276
+ GRAVITY_G_CENTER: 120,
5277
+ GRAVITY_DAMPING: 0.96,
5278
+ GRAVITY_RESTITUTION: 0.5,
5279
+ GRAVITY_REPULSION: 200,
5280
+ GRAVITY_MAX_DISTANCE: 3000
5275
5281
  };
5276
5282
  initDefaultI18N();
5277
5283
 
@@ -56638,14 +56644,8 @@ class GravityEngine {
56638
56644
  tickTimer = null;
56639
56645
  syncTimer = null;
56640
56646
  lastSyncedPositions = new Map;
56641
- G = 80;
56642
- G_CENTER = 120;
56643
- DAMPING = 0.96;
56644
- RESTITUTION = 0.5;
56645
- REPULSION = 200;
56646
56647
  TICK_MS = 33;
56647
56648
  SYNC_MS = 300;
56648
- MAX_DISTANCE = 3000;
56649
56649
  SOFTENING_SQ = 50 * 50;
56650
56650
  MIN_MOVE_PX = 0.1;
56651
56651
  constructor(board) {
@@ -56714,8 +56714,8 @@ class GravityEngine {
56714
56714
  const dcx = centerX - s1.cx;
56715
56715
  const dcy = centerY - s1.cy;
56716
56716
  const distCenter = Math.sqrt(dcx * dcx + dcy * dcy) + 1;
56717
- ax += this.G_CENTER * dcx / distCenter;
56718
- ay += this.G_CENTER * dcy / distCenter;
56717
+ ax += conf.GRAVITY_G_CENTER * dcx / distCenter;
56718
+ ay += conf.GRAVITY_G_CENTER * dcy / distCenter;
56719
56719
  for (let j = 0;j < snap.length; j++) {
56720
56720
  if (i === j)
56721
56721
  continue;
@@ -56723,7 +56723,7 @@ class GravityEngine {
56723
56723
  const dx = s2.cx - s1.cx;
56724
56724
  const dy = s2.cy - s1.cy;
56725
56725
  const dist = Math.sqrt(dx * dx + dy * dy) + 0.001;
56726
- if (dist > this.MAX_DISTANCE)
56726
+ if (dist > conf.GRAVITY_MAX_DISTANCE)
56727
56727
  continue;
56728
56728
  const overlapping = s1.right > s2.left && s2.right > s1.left && s1.bottom > s2.top && s2.bottom > s1.top;
56729
56729
  if (overlapping) {
@@ -56732,26 +56732,26 @@ class GravityEngine {
56732
56732
  if (overlapX < overlapY) {
56733
56733
  const sign = s1.cx < s2.cx ? -1 : 1;
56734
56734
  if (sign * vel.vx < 0)
56735
- vel.vx = -vel.vx * this.RESTITUTION;
56736
- ax += sign * this.REPULSION * overlapX;
56735
+ vel.vx = -vel.vx * conf.GRAVITY_RESTITUTION;
56736
+ ax += sign * conf.GRAVITY_REPULSION * overlapX;
56737
56737
  } else {
56738
56738
  const sign = s1.cy < s2.cy ? -1 : 1;
56739
56739
  if (sign * vel.vy < 0)
56740
- vel.vy = -vel.vy * this.RESTITUTION;
56741
- ay += sign * this.REPULSION * overlapY;
56740
+ vel.vy = -vel.vy * conf.GRAVITY_RESTITUTION;
56741
+ ay += sign * conf.GRAVITY_REPULSION * overlapY;
56742
56742
  }
56743
56743
  } else {
56744
56744
  const touchDist = (s1.w + s2.w + s1.h + s2.h) * 0.25;
56745
56745
  if (dist < touchDist + 5)
56746
56746
  continue;
56747
56747
  const distSq = dx * dx + dy * dy;
56748
- const gravAcc = this.G * s2.mass / (distSq + this.SOFTENING_SQ);
56748
+ const gravAcc = conf.GRAVITY_G * s2.mass / (distSq + this.SOFTENING_SQ);
56749
56749
  ax += gravAcc * dx / dist;
56750
56750
  ay += gravAcc * dy / dist;
56751
56751
  }
56752
56752
  }
56753
- vel.vx = (vel.vx + ax * dt) * this.DAMPING;
56754
- vel.vy = (vel.vy + ay * dt) * this.DAMPING;
56753
+ vel.vx = (vel.vx + ax * dt) * conf.GRAVITY_DAMPING;
56754
+ vel.vy = (vel.vy + ay * dt) * conf.GRAVITY_DAMPING;
56755
56755
  const moveX = vel.vx * dt;
56756
56756
  const moveY = vel.vy * dt;
56757
56757
  if (Math.abs(moveX) >= this.MIN_MOVE_PX || Math.abs(moveY) >= this.MIN_MOVE_PX) {
@@ -5,14 +5,8 @@ export declare class GravityEngine {
5
5
  private tickTimer;
6
6
  private syncTimer;
7
7
  private lastSyncedPositions;
8
- readonly G = 80;
9
- readonly G_CENTER = 120;
10
- readonly DAMPING = 0.96;
11
- readonly RESTITUTION = 0.5;
12
- readonly REPULSION = 200;
13
8
  readonly TICK_MS = 33;
14
9
  readonly SYNC_MS = 300;
15
- readonly MAX_DISTANCE = 3000;
16
10
  readonly SOFTENING_SQ: number;
17
11
  readonly MIN_MOVE_PX = 0.1;
18
12
  constructor(board: Board);
@@ -247,6 +247,12 @@ export declare const conf: {
247
247
  };
248
248
  MAX_CARD_SIZE: number;
249
249
  CONNECTOR_ITEM_OFFSET: number;
250
+ GRAVITY_G: number;
251
+ GRAVITY_G_CENTER: number;
252
+ GRAVITY_DAMPING: number;
253
+ GRAVITY_RESTITUTION: number;
254
+ GRAVITY_REPULSION: number;
255
+ GRAVITY_MAX_DISTANCE: number;
250
256
  };
251
257
  export type Settings = typeof conf;
252
258
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "microboard-temp",
3
- "version": "0.13.5",
3
+ "version": "0.13.6",
4
4
  "description": "A flexible interactive whiteboard library",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",