@vworlds/vecs-physics 1.0.52 → 1.0.54
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/adapter/engine.d.ts +14 -4
- package/adapter/engine.js +14 -5
- package/adapter/engine.js.map +1 -1
- package/adapter/queries.d.ts +4 -4
- package/adapter/queries.js +19 -24
- package/adapter/queries.js.map +1 -1
- package/adapter/runtime.d.ts +14 -1
- package/adapter/runtime.js +27 -7
- package/adapter/runtime.js.map +1 -1
- package/body/components.d.ts +4 -1
- package/body/components.js +4 -1
- package/body/components.js.map +1 -1
- package/body/lifecycle.js +12 -17
- package/body/lifecycle.js.map +1 -1
- package/body/mass.js +47 -2
- package/body/mass.js.map +1 -1
- package/body/pose_in.js +7 -23
- package/body/pose_in.js.map +1 -1
- package/body/pose_out.d.ts +3 -0
- package/body/pose_out.js +59 -50
- package/body/pose_out.js.map +1 -1
- package/core/module.js +8 -2
- package/core/module.js.map +1 -1
- package/core/reaper.js +25 -16
- package/core/reaper.js.map +1 -1
- package/core/step.js +1 -1
- package/core/step.js.map +1 -1
- package/events/opt_in.js +8 -3
- package/events/opt_in.js.map +1 -1
- package/events/publish.d.ts +3 -0
- package/events/publish.js +138 -81
- package/events/publish.js.map +1 -1
- package/forces/gather.js +3 -5
- package/forces/gather.js.map +1 -1
- package/forces/impulses.js +10 -5
- package/forces/impulses.js.map +1 -1
- package/joints/lifecycle.js +6 -6
- package/joints/lifecycle.js.map +1 -1
- package/kinematic/targets.js +39 -40
- package/kinematic/targets.js.map +1 -1
- package/materials/sync.js +1 -1
- package/materials/sync.js.map +1 -1
- package/module.d.ts +3 -1
- package/module.js +6 -3
- package/module.js.map +1 -1
- package/package.json +3 -3
- package/shapes/chain.js +6 -3
- package/shapes/chain.js.map +1 -1
- package/shapes/lifecycle.js +8 -10
- package/shapes/lifecycle.js.map +1 -1
package/kinematic/targets.js
CHANGED
|
@@ -2,7 +2,7 @@ import { Module } from "@vworlds/vecs";
|
|
|
2
2
|
import { getPhysicsEngine, PhysicsSystemTag, } from "../adapter/engine.js";
|
|
3
3
|
import { Body } from "../body/components.js";
|
|
4
4
|
import { KinematicTargetPosition, KinematicTargetRotation } from "./components.js";
|
|
5
|
-
import {
|
|
5
|
+
import { rev, scr_fastOut } from "../adapter/runtime.js";
|
|
6
6
|
import { PhysicsCoreModule } from "../core/module.js";
|
|
7
7
|
export class KinematicTargetsModule extends Module {
|
|
8
8
|
init() {
|
|
@@ -32,61 +32,60 @@ function drivePositionTarget(engine, bodyId, target, dt) {
|
|
|
32
32
|
if (target === undefined) {
|
|
33
33
|
return;
|
|
34
34
|
}
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
35
|
+
const fast = engine.fast;
|
|
36
|
+
fast.module._b2x_Body_GetPosition(bodyId.index1, rev(bodyId), scr_fastOut);
|
|
37
|
+
fast.sync();
|
|
38
|
+
const out = scr_fastOut >> 2;
|
|
39
|
+
const px = fast.f32[out];
|
|
40
|
+
const py = fast.f32[out + 1];
|
|
41
|
+
const dx = target.x - px;
|
|
42
|
+
const dy = target.y - py;
|
|
43
|
+
const dist = Math.hypot(dx, dy);
|
|
44
|
+
if (dist > target.tolerance) {
|
|
45
|
+
let vx = dx / dt;
|
|
46
|
+
let vy = dy / dt;
|
|
47
|
+
const speed = Math.hypot(vx, vy);
|
|
48
|
+
if (speed > engine.maximumLinearSpeed) {
|
|
49
|
+
const scale = engine.maximumLinearSpeed / speed;
|
|
50
|
+
vx *= scale;
|
|
51
|
+
vy *= scale;
|
|
53
52
|
}
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
setLinearVelocity(engine, bodyId, vx, vy);
|
|
54
|
+
if (target.wake) {
|
|
55
|
+
fast.module._b2x_Body_SetAwake(bodyId.index1, rev(bodyId), 1);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
else {
|
|
59
|
+
setLinearVelocity(engine, bodyId, 0, 0);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
function driveRotationTarget(engine, bodyId, target, dt) {
|
|
63
63
|
if (target === undefined) {
|
|
64
64
|
return;
|
|
65
65
|
}
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
66
|
+
const fast = engine.fast;
|
|
67
|
+
const r = rev(bodyId);
|
|
68
|
+
fast.module._b2x_Body_GetPose(bodyId.index1, r, scr_fastOut);
|
|
69
|
+
fast.sync();
|
|
70
|
+
// The exact Box2D b2Atan2 result used by embind's GetAngle.
|
|
71
|
+
const angle = fast.f32[(scr_fastOut + fast.layout.pose.angle) >> 2];
|
|
72
|
+
const da = wrap(target.angle - angle, -Math.PI, Math.PI);
|
|
73
|
+
if (Math.abs(da) > target.tolerance) {
|
|
74
|
+
fast.module._b2x_Body_SetAngularVelocity(bodyId.index1, r, da / dt);
|
|
75
|
+
if (target.wake) {
|
|
76
|
+
fast.module._b2x_Body_SetAwake(bodyId.index1, r, 1);
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
else {
|
|
80
|
+
fast.module._b2x_Body_SetAngularVelocity(bodyId.index1, r, 0);
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
function isKinematicBody(engine, bodyId) {
|
|
84
|
-
return engine.
|
|
84
|
+
return (engine.fast.module._b2x_Body_GetType(bodyId.index1, rev(bodyId)) ===
|
|
85
|
+
engine.box2d.b2BodyType.b2_kinematicBody.value);
|
|
85
86
|
}
|
|
86
87
|
function setLinearVelocity(engine, bodyId, x, y) {
|
|
87
|
-
|
|
88
|
-
vec.Set(x, y);
|
|
89
|
-
engine.box2d.b2Body_SetLinearVelocity(bodyId, vec);
|
|
88
|
+
engine.fast.module._b2x_Body_SetLinearVelocity(bodyId.index1, rev(bodyId), x, y);
|
|
90
89
|
}
|
|
91
90
|
function wrap(value, min, max) {
|
|
92
91
|
const range = max - min;
|
package/kinematic/targets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"targets.js","sourceRoot":"","sources":["../../../../src/kinematic/targets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GAGjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"targets.js","sourceRoot":"","sources":["../../../../src/kinematic/targets.ts"],"names":[],"mappings":"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"}
|
package/materials/sync.js
CHANGED
|
@@ -25,7 +25,7 @@ export class MaterialFilterSyncModule extends Module {
|
|
|
25
25
|
inject: [SingleShape, { target: [ChildOf, [Body]] }],
|
|
26
26
|
}, (it, material, [shape, body]) => {
|
|
27
27
|
if (requiresMaterialRecreate(engine, shape, material)) {
|
|
28
|
-
//
|
|
28
|
+
// Keep the existing shape-recreation contract for rollingResistance,
|
|
29
29
|
// tangentSpeed, or userMaterialId, so those updates recreate the shape.
|
|
30
30
|
recreateSingleShapeForEntity(engine, it.entity, it.entity.target(ChildOf), body, shape);
|
|
31
31
|
return;
|
package/materials/sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../../src/materials/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,OAAO,wBAAyB,SAAQ,MAAM;IAC3C,IAAI;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;QACpC,KAAK;aACF,MAAM,CAAC,oCAAoC,CAAC;aAC5C,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC;aACzC,KAAK,CAAC,KAAK,CAAC;aACZ,MAAM,CACL;YACE,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;SACrD,EACD,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;YAC9B,IAAI,wBAAwB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACtD,
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../../src/materials/sync.ts"],"names":[],"mappings":"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"}
|
package/module.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { Module } from "@vworlds/vecs";
|
|
2
2
|
import { type PhysicsOptions } from "./core/module.js";
|
|
3
3
|
export type { PhysicsOptions } from "./core/module.js";
|
|
4
|
-
/** World module that installs physics when registered with `world.module`.
|
|
4
|
+
/** World module that installs physics when registered with `world.module`.
|
|
5
|
+
* Internal cleanup runs after preStep and before step, so a pre-step entity
|
|
6
|
+
* destruction cannot leave a colliding body behind for that step. */
|
|
5
7
|
export declare class PhysicsModule extends Module<PhysicsOptions | undefined> {
|
|
6
8
|
init(options: PhysicsOptions | undefined): void;
|
|
7
9
|
}
|
package/module.js
CHANGED
|
@@ -22,7 +22,9 @@ import { KinematicModule } from "./kinematic/module.js";
|
|
|
22
22
|
import { MaterialsModule } from "./materials/module.js";
|
|
23
23
|
import { ShapesModule } from "./shapes/module.js";
|
|
24
24
|
import { ShapePoseModule } from "./shapes/pose_sync.js";
|
|
25
|
-
/** World module that installs physics when registered with `world.module`.
|
|
25
|
+
/** World module that installs physics when registered with `world.module`.
|
|
26
|
+
* Internal cleanup runs after preStep and before step, so a pre-step entity
|
|
27
|
+
* destruction cannot leave a colliding body behind for that step. */
|
|
26
28
|
export class PhysicsModule extends Module {
|
|
27
29
|
init(options) {
|
|
28
30
|
const world = this.world;
|
|
@@ -38,13 +40,14 @@ export class PhysicsModule extends Module {
|
|
|
38
40
|
world.module(MaterialsModule);
|
|
39
41
|
world.module(EventsModule);
|
|
40
42
|
world.module(EventOptInModule);
|
|
41
|
-
world.module(PhysicsReaperModule);
|
|
42
43
|
world.module(ShapePoseModule);
|
|
43
44
|
world.module(BodyPoseInModule);
|
|
44
45
|
world.module(KinematicModule);
|
|
45
46
|
world.module(ForcesModule);
|
|
46
|
-
world.module(BodyMassModule);
|
|
47
47
|
world.module(DebugModule);
|
|
48
|
+
// physics-cleanup: drain flush-time teardown, then recompute surviving mass.
|
|
49
|
+
world.module(PhysicsReaperModule);
|
|
50
|
+
world.module(BodyMassModule);
|
|
48
51
|
// physics-step: integrator.
|
|
49
52
|
world.module(PhysicsStepModule);
|
|
50
53
|
// physics-post: writeback, events, and one-shot cleanup.
|
package/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/module.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,4EAA4E;AAC5E,6EAA6E;AAC7E,WAAW;AAEX,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAuB,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIxD
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/module.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,4EAA4E;AAC5E,6EAA6E;AAC7E,WAAW;AAEX,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAuB,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIxD;;qEAEqE;AACrE,MAAM,OAAO,aAAc,SAAQ,MAAkC;IAC5D,IAAI,CAAC,OAAmC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,2EAA2E;QAC3E,wEAAwE;QACxE,6DAA6D;QAC7D,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACpC,KAAK,CAAC,MAAM,CAAC,iBAAiB,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAE/C,6DAA6D;QAC7D,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC/B,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC/B,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAE1B,6EAA6E;QAC7E,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAClC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAE7B,4BAA4B;QAC5B,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEhC,yDAAyD;QACzD,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAChC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACjC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAClC,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vworlds/vecs-physics",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.54",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"types": "./index.d.ts",
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
"url": "git+https://github.com/vworlds/vecs.git"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@vworlds/
|
|
19
|
-
"
|
|
18
|
+
"@vworlds/box2d3-wasm": "6.0.1",
|
|
19
|
+
"@vworlds/vecs": "1.0.54"
|
|
20
20
|
},
|
|
21
21
|
"license": "MIT"
|
|
22
22
|
}
|
package/shapes/chain.js
CHANGED
|
@@ -18,14 +18,17 @@ export class ChainLifecycleModule extends Module {
|
|
|
18
18
|
.phase(phase)
|
|
19
19
|
.enter({ cursor: Iter, inject: [Chain, { target: [ChildOf, [Body]] }] }, (it, [chain, body]) => {
|
|
20
20
|
createChainForEntity(engine, it.entity, it.entity.target(ChildOf), body, chain);
|
|
21
|
-
})
|
|
22
|
-
.exit([Chain, { target: [ChildOf, Entity] }], (entity, [chain, parent]) => {
|
|
23
|
-
destroyChainForEntity(engine, entity, true, parent, chain);
|
|
24
21
|
})
|
|
25
22
|
.update({ watch: Chain, cursor: Iter, inject: [{ target: [ChildOf, [Body]] }] }, (it, chain, [body]) => {
|
|
26
23
|
recreateChainForEntity(engine, it.entity, it.entity.target(ChildOf), body, chain);
|
|
27
24
|
})
|
|
28
25
|
.add(PhysicsSystemTag);
|
|
26
|
+
world
|
|
27
|
+
.query("PhysicsChainTeardown")
|
|
28
|
+
.with(chainWithBodyParent)
|
|
29
|
+
.exit([Chain, { target: [ChildOf, Entity] }], (entity, [chain, parent]) => {
|
|
30
|
+
destroyChainForEntity(engine, entity, true, parent, chain);
|
|
31
|
+
});
|
|
29
32
|
world
|
|
30
33
|
.system("PhysicsChainLifecycle:ChildOf")
|
|
31
34
|
.with(ChildOf, chainWithBodyParent)
|
package/shapes/chain.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../../src/shapes/chain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GAGjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,aAAa,EACb,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAExB,MAAM,OAAO,oBAAqB,SAAQ,MAAM;IACvC,IAAI;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;QACpC,KAAK;aACF,MAAM,CAAC,uBAAuB,CAAC;aAC/B,IAAI,CAAC,mBAAmB,CAAC;aACzB,KAAK,CAAC,KAAK,CAAC;aACZ,KAAK,CACJ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAChE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;YACpB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAClF,CAAC,CACF;aACA,
|
|
1
|
+
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../../src/shapes/chain.ts"],"names":[],"mappings":"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"}
|
package/shapes/lifecycle.js
CHANGED
|
@@ -21,11 +21,6 @@ export class ShapeLifecycleModule extends Module {
|
|
|
21
21
|
.phase(phase)
|
|
22
22
|
.enter({ cursor: Iter, inject: [SingleShape, { target: [ChildOf, [Body]] }] }, (it, [shape, body]) => {
|
|
23
23
|
createShapeForEntity(engine, it.entity, it.entity.target(ChildOf), body, shape);
|
|
24
|
-
})
|
|
25
|
-
// Snapshot the target and shape while the relationship still exists; the
|
|
26
|
-
// exit callback may run after the source entity has been destroyed.
|
|
27
|
-
.exit([SingleShape, { target: [ChildOf, Entity] }], (entity, [shape, parent]) => {
|
|
28
|
-
destroyShapeForEntity(engine, entity, true, parent, shape);
|
|
29
24
|
})
|
|
30
25
|
.update({ watch: SingleShape, cursor: Iter, inject: [{ target: [ChildOf, [Body]] }] }, (it, shape, [body]) => {
|
|
31
26
|
if ((shape instanceof Capsule &&
|
|
@@ -36,6 +31,12 @@ export class ShapeLifecycleModule extends Module {
|
|
|
36
31
|
recreateSingleShapeForEntity(engine, it.entity, it.entity.target(ChildOf), body, shape);
|
|
37
32
|
})
|
|
38
33
|
.add(PhysicsSystemTag);
|
|
34
|
+
world
|
|
35
|
+
.query("PhysicsShapeTeardown")
|
|
36
|
+
.with(singleShapeWithBodyParent)
|
|
37
|
+
.exit([SingleShape, { target: [ChildOf, Entity] }], (entity, [shape, parent]) => {
|
|
38
|
+
destroyShapeForEntity(engine, entity, true, parent, shape);
|
|
39
|
+
});
|
|
39
40
|
world
|
|
40
41
|
.system("PhysicsShapeLifecycle:ChildOf")
|
|
41
42
|
.with(ChildOf, singleShapeWithBodyParent)
|
|
@@ -92,11 +93,8 @@ function destroyShapeForEntity(engine, entity, deferDestroy, parent, shape) {
|
|
|
92
93
|
engine.entityByShapeIndex.delete(shapeId.index1);
|
|
93
94
|
}
|
|
94
95
|
markParentBodyMassDirty(engine, resolvedParent);
|
|
95
|
-
// Clear the handle
|
|
96
|
-
//
|
|
97
|
-
// the lifecycle predicate). When `shape` was injected from an exit
|
|
98
|
-
// snapshot, `entity.get(Shape)` is already cleared by `_destroy` and this
|
|
99
|
-
// is a no-op.
|
|
96
|
+
// Clear the handle if the component is still readable at this exit flush
|
|
97
|
+
// (e.g. a surviving shape whose parent lost Body), before a later create pass.
|
|
100
98
|
const mutableShape = entity.get(SingleShape);
|
|
101
99
|
if (mutableShape !== undefined) {
|
|
102
100
|
mutableShape._shapeId = undefined;
|
package/shapes/lifecycle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../../src/shapes/lifecycle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../../src/shapes/lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GAIjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B,MAAM,OAAO,oBAAqB,SAAQ,MAAM;IACvC,IAAI;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;QACpC,KAAK;aACF,MAAM,CAAC,uBAAuB,CAAC;aAC/B,IAAI,CAAC,yBAAyB,CAAC;aAC/B,KAAK,CAAC,KAAK,CAAC;aACZ,KAAK,CACJ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EACtE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;YACpB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAClF,CAAC,CACF;aACA,MAAM,CACL,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAC7E,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE;YACpB,IACE,CAAC,KAAK,YAAY,OAAO;gBACvB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC7D,CAAC,KAAK,YAAY,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EACxF,CAAC;gBACD,OAAO;YACT,CAAC;YACD,4BAA4B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1F,CAAC,CACF;aACA,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAEzB,KAAK;aACF,KAAK,CAAC,sBAAsB,CAAC;aAC7B,IAAI,CAAC,yBAAyB,CAAC;aAC/B,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;YAC9E,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEL,KAAK;aACF,MAAM,CAAC,+BAA+B,CAAC;aACvC,IAAI,CAAC,OAAO,EAAE,yBAAyB,CAAC;aACxC,KAAK,CAAC,KAAK,CAAC;aACZ,MAAM,CACL;YACE,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;SACrD,EACD,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;YAC9B,4BAA4B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1F,CAAC,CACF;aACA,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3B,CAAC;CACF;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAAqB,EACrB,MAAc,EACd,YAAgC,EAChC,UAA4B,EAC5B,KAA8B;IAE9B,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAClE,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAqB,EACrB,MAAc,EACd,YAAgC,EAChC,UAA4B,EAC5B,KAA8B;IAE9B,MAAM,MAAM,GAAG,UAAU,EAAE,OAAO,CAAC;IACnC,IAAI,YAAY,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACxE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;QACzB,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,wEAAwE;AACxE,gFAAgF;AAChF,iFAAiF;AACjF,+EAA+E;AAC/E,0CAA0C;AAC1C,SAAS,qBAAqB,CAC5B,MAAqB,EACrB,MAAc,EACd,YAAqB,EACrB,MAAe,EACf,KAA6B;IAE7B,MAAM,cAAc,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;IAC/C,MAAM,aAAa,GAAG,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,aAAa,EAAE,QAAQ,CAAC;IACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,2EAA2E;QAC3E,yEAAyE;QACzE,WAAW;QACX,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IACD,uBAAuB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEhD,yEAAyE;IACzE,+EAA+E;IAC/E,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAA4B,CAAC;IACxE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,YAAY,CAAC,QAAQ,GAAG,SAAS,CAAC;IACpC,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAqB,EACrB,MAAgB,EAChB,KAAkB,EAClB,OAAqB,EACrB,IAA6C;IAE7C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,aAAa,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE;QACpD,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE5B,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,aAAa,CAClB,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EACtC,CAAC,MAAM,EAAE,EAAE,CACT,aAAa,CACX,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,EACvB,CAAC,GAAG,EAAE,EAAE;gBACN,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzB,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBACvE,IAAI,CAAC;oBACH,OAAO,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBAC1D,CAAC;wBAAS,CAAC;oBACT,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC,CACF,CACJ,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YAC5B,OAAO,aAAa,CAClB,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAC1B,CAAC,SAAS,EAAE,EAAE;gBACZ,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBACrC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;gBAChC,OAAO,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAC3D,CAAC,CACF,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/D,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,aAAa,CAClB,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,EAC3B,CAAC,SAAS,EAAE,EAAE;gBACZ,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC5D,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC5D,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;gBAChC,OAAO,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAC5D,CAAC,CACF,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/D,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,aAAa,CAClB,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,EAC3B,CAAC,SAAS,EAAE,EAAE;gBACZ,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3D,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3D,OAAO,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAC5D,CAAC,CACF,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;YAC7B,OAAO,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CACzB,MAAqB,EACrB,MAAgB,EAChB,GAAiD,EACjD,OAAgB,EAChB,IAA6C;IAE7C,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,oBAAoB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;gBACnB,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9D,IAAI,CAAC;gBACH,OAAO,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YAC9D,CAAC;oBAAS,CAAC;gBACT,WAAW,CAAC,MAAM,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CACpB,GAAiD,EACjD,OAAqB;IAErB,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,GAAG,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACpD,GAAG,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IACtD,GAAG,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAC9C,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAC/C,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACvC,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3C,GAAG,CAAC,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACzC,GAAG,CAAC,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC/C,GAAG,CAAC,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAC3D,GAAG,CAAC,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IACjD,GAAG,CAAC,QAAQ,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,GAAiD,EACjD,OAAqB;IAErB,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAC/C,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACvC,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACrC,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3C,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IACvD,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAC7C,QAAQ,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IACtB,GAAG,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC3C,OAAO;QACL,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,CAAC;QAC/B,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,GAAG;QACnC,WAAW,EAAE,QAAQ,EAAE,WAAW,IAAI,CAAC;QACvC,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB,IAAI,CAAC;QACnD,YAAY,EAAE,QAAQ,EAAE,YAAY,IAAI,CAAC;QACzC,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,CAAC;QAC7C,YAAY,EAAE,MAAM,EAAE,YAAY,IAAI,CAAC;QACvC,QAAQ,EAAE,MAAM,EAAE,QAAQ,IAAI,UAAU;QACxC,UAAU,EAAE,MAAM,EAAE,UAAU,IAAI,CAAC;QACnC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,SAAS;QACxC,mBAAmB,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,SAAS;QAC5D,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,SAAS;QACpD,kBAAkB,EAChB,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,SAAS;KACjF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,OAAO;QACL,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC;QACpC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC;QACpC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,KAAK,IAAI,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAqB,EAAE,MAAe;IAC5E,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACpE,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;IACvE,MAAM,WAAW,GAAG,KAAK,CAAC;IAC1B,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,WAAW,GAAG,WAAW,CAAC;AACrE,CAAC"}
|