react-simple-game-engine 0.0.8 → 0.0.11
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/lib/classes/entities/entity.d.ts +2 -0
- package/lib/classes/entities/entity.d.ts.map +1 -1
- package/lib/classes/entities/entity.js +2 -0
- package/lib/classes/scene.d.ts +5 -1
- package/lib/classes/scene.d.ts.map +1 -1
- package/lib/classes/scene.js +18 -2
- package/lib/classes/world-management.d.ts.map +1 -1
- package/lib/classes/world-management.js +18 -0
- package/lib/ui-components/SceneRunner.d.ts +2 -1
- package/lib/ui-components/SceneRunner.d.ts.map +1 -1
- package/lib/ui-components/SceneRunner.js +3 -3
- package/lib/ui-components/ScenesProcess.d.ts +2 -1
- package/lib/ui-components/ScenesProcess.d.ts.map +1 -1
- package/lib/utils.d.ts +1 -0
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +14 -0
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,KAAK,EACN,MAAM,oBAAoB,CAAC;AAE5B,8BAAsB,MAAM;IAC1B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAsD;IAEzE,SAAgB,GAAG,EAAG,MAAM,CAAC;IACtB,MAAM,EAAG,MAAM,CAAC;IAEvB,SAAS,CAAC,eAAe,EAAG,eAAe,CAAC;IAC5C,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;;IAMxB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAGxB;IAED,IAAI,MAAM,IALS,MAAM,CAOxB;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,IAAI,eAEP;IAED,MAAM,CAAC,eAAe,EAAE,eAAe;IAKvC,QAAQ;IAER,UAAU,CACR,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACxC,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC;IAO3C,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,MAAM,CAAC,IAAI;IAEd,OAAO,CAAC,EACN,KAAK,EACL,SAAc,EACd,MAAM,EAAE,eAAe,EACvB,WAAgB,GACjB,EAAE,aAAa,CAAC,IAAI,CAAC;IA+BtB,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IACnD,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IAI1C,MAAM;IAGN,QAAQ;IAER,IAAI;IAIJ,QAAQ,CAAC,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAExE,WAAW,CAAC,MAAM,EAAE,MAAM;
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,KAAK,EACN,MAAM,oBAAoB,CAAC;AAE5B,8BAAsB,MAAM;IAC1B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAsD;IAEzE,SAAgB,GAAG,EAAG,MAAM,CAAC;IACtB,MAAM,EAAG,MAAM,CAAC;IAEvB,SAAS,CAAC,eAAe,EAAG,eAAe,CAAC;IAC5C,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;;IAMxB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAGxB;IAED,IAAI,MAAM,IALS,MAAM,CAOxB;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,IAAI,eAEP;IAED,MAAM,CAAC,eAAe,EAAE,eAAe;IAKvC,QAAQ;IAER,UAAU,CACR,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACxC,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC;IAO3C,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,MAAM,CAAC,IAAI;IAEd,OAAO,CAAC,EACN,KAAK,EACL,SAAc,EACd,MAAM,EAAE,eAAe,EACvB,WAAgB,GACjB,EAAE,aAAa,CAAC,IAAI,CAAC;IA+BtB,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IACnD,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IAI1C,MAAM;IAGN,QAAQ;IAER,IAAI;IAIJ,QAAQ,CAAC,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAExE,WAAW,CAAC,MAAM,EAAE,MAAM;IAC1B,cAAc,CAAC,MAAM,EAAE,MAAM;IAC7B,iBAAiB,CAAC,MAAM,EAAE,MAAM;CACjC"}
|
@@ -85,6 +85,8 @@ var Entity = /** @class */ (function () {
|
|
85
85
|
this.sprite.draw();
|
86
86
|
};
|
87
87
|
Entity.prototype.onCollision = function (target) { };
|
88
|
+
Entity.prototype.onCollisionEnd = function (target) { };
|
89
|
+
Entity.prototype.onCollisionActive = function (target) { };
|
88
90
|
return Entity;
|
89
91
|
}());
|
90
92
|
export { Entity };
|
package/lib/classes/scene.d.ts
CHANGED
@@ -8,6 +8,7 @@ export declare abstract class Scene<UIP = any> {
|
|
8
8
|
private worldManagement;
|
9
9
|
private _loadedAssets;
|
10
10
|
private loadAssetsListener;
|
11
|
+
private assetsDelay;
|
11
12
|
tag: string;
|
12
13
|
manager: SceneManagement;
|
13
14
|
readonly sessionId: string;
|
@@ -15,15 +16,18 @@ export declare abstract class Scene<UIP = any> {
|
|
15
16
|
constructor();
|
16
17
|
get UI(): ComponentType<UIP>;
|
17
18
|
get UIProps(): UIP;
|
19
|
+
protected onActive(): void;
|
18
20
|
protected getUIProps(): UIP;
|
19
21
|
get loadedAssets(): boolean;
|
20
22
|
onLoadAssetNotify(func: LoadAssetsListener): void;
|
21
23
|
destructor(): void;
|
22
24
|
setLoadAssetStatus(loadedAssets: boolean): void;
|
23
25
|
switchToScene(tag: string): void;
|
24
|
-
loadAssets(): Promise<void>;
|
26
|
+
loadAssets(delay?: number): Promise<void>;
|
25
27
|
onLoadAssets(): Promise<void>;
|
26
28
|
bootstrap(camera: Camera): void;
|
29
|
+
protected onDraw(): void;
|
30
|
+
protected onUpdate(): void;
|
27
31
|
action(): void;
|
28
32
|
}
|
29
33
|
export {};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/classes/scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
1
|
+
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/classes/scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,aAAK,kBAAkB,GAAG,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;AAE1D,8BAAsB,KAAK,CAAC,GAAG,GAAG,GAAG;IACnC,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,aAAa,CAAW;IAChC,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,WAAW,CAAa;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAG,eAAe,CAAC;IACjC,SAAgB,SAAS,EAAE,MAAM,CAA8C;aAC/D,aAAa,IAAI,cAAc,EAAE;;IASjD,IAAI,EAAE,uBAGL;IAED,IAAI,OAAO,QAEV;IAED,SAAS,CAAC,QAAQ;IAElB,SAAS,CAAC,UAAU;IAIpB,IAAI,YAAY,YAEf;IAED,iBAAiB,CAAC,IAAI,EAAE,kBAAkB;IAI1C,UAAU;IAIV,kBAAkB,CAAC,YAAY,EAAE,OAAO;IAKxC,aAAa,CAAC,GAAG,EAAE,MAAM;IAInB,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM;IAczB,YAAY;IAElB,SAAS,CAAC,MAAM,EAAE,MAAM;IAUxB,SAAS,CAAC,MAAM;IAChB,SAAS,CAAC,QAAQ;IAElB,MAAM;CAOP"}
|
package/lib/classes/scene.js
CHANGED
@@ -35,12 +35,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
35
35
|
}
|
36
36
|
};
|
37
37
|
import { WorldManagement } from "./world-management";
|
38
|
+
import { tick } from "../utils";
|
38
39
|
var Scene = /** @class */ (function () {
|
39
40
|
function Scene() {
|
41
|
+
this.assetsDelay = 0;
|
40
42
|
this.sessionId = "".concat(Math.random(), "-").concat(new Date().getTime());
|
41
43
|
this.tag = this.constructor.tag;
|
42
44
|
this.ui = this.constructor.ui;
|
43
45
|
this._loadedAssets = false;
|
46
|
+
this.onActive();
|
44
47
|
}
|
45
48
|
Object.defineProperty(Scene.prototype, "UI", {
|
46
49
|
get: function () {
|
@@ -57,6 +60,7 @@ var Scene = /** @class */ (function () {
|
|
57
60
|
enumerable: false,
|
58
61
|
configurable: true
|
59
62
|
});
|
63
|
+
Scene.prototype.onActive = function () { };
|
60
64
|
Scene.prototype.getUIProps = function () {
|
61
65
|
return {};
|
62
66
|
};
|
@@ -81,16 +85,24 @@ var Scene = /** @class */ (function () {
|
|
81
85
|
Scene.prototype.switchToScene = function (tag) {
|
82
86
|
this.manager.gotoScene(tag);
|
83
87
|
};
|
84
|
-
Scene.prototype.loadAssets = function () {
|
88
|
+
Scene.prototype.loadAssets = function (delay) {
|
85
89
|
return __awaiter(this, void 0, void 0, function () {
|
86
90
|
return __generator(this, function (_a) {
|
87
91
|
switch (_a.label) {
|
88
92
|
case 0:
|
93
|
+
if (delay != null) {
|
94
|
+
this.assetsDelay = delay;
|
95
|
+
}
|
96
|
+
// if delay less than 0, it will wait forever
|
97
|
+
return [4 /*yield*/, tick(this.assetsDelay < 0 ? undefined : this.assetsDelay)];
|
98
|
+
case 1:
|
99
|
+
// if delay less than 0, it will wait forever
|
100
|
+
_a.sent();
|
89
101
|
this.setLoadAssetStatus(false);
|
90
102
|
return [4 /*yield*/, this.onLoadAssets().catch(function (err) {
|
91
103
|
console.warn("Load assets fail", err.toString());
|
92
104
|
})];
|
93
|
-
case
|
105
|
+
case 2:
|
94
106
|
_a.sent();
|
95
107
|
this.setLoadAssetStatus(true);
|
96
108
|
return [2 /*return*/];
|
@@ -113,9 +125,13 @@ var Scene = /** @class */ (function () {
|
|
113
125
|
this.worldManagement.addEntity(entity);
|
114
126
|
}
|
115
127
|
};
|
128
|
+
Scene.prototype.onDraw = function () { };
|
129
|
+
Scene.prototype.onUpdate = function () { };
|
116
130
|
Scene.prototype.action = function () {
|
117
131
|
this.worldManagement.update();
|
132
|
+
this.onUpdate();
|
118
133
|
this.worldManagement.draw();
|
134
|
+
this.onDraw();
|
119
135
|
};
|
120
136
|
return Scene;
|
121
137
|
}());
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"world-management.d.ts","sourceRoot":"","sources":["../../src/classes/world-management.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,MAAM,CAAU;;
|
1
|
+
{"version":3,"file":"world-management.d.ts","sourceRoot":"","sources":["../../src/classes/world-management.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,MAAM,CAAU;;IAsCxB,UAAU;IAKV,SAAS,CAAC,MAAM,EAAE,MAAM;IAMxB,YAAY,CAAC,MAAM,EAAE,MAAM;IAK3B,MAAM;IAON,IAAI;CAML"}
|
@@ -12,6 +12,24 @@ var WorldManagement = /** @class */ (function () {
|
|
12
12
|
bodyB.entity.onCollision(bodyA.entity);
|
13
13
|
}
|
14
14
|
});
|
15
|
+
Events.on(this.engine, "collisionEnd", function (event) {
|
16
|
+
var pairs = event.pairs;
|
17
|
+
for (var _i = 0, pairs_2 = pairs; _i < pairs_2.length; _i++) {
|
18
|
+
var pair = pairs_2[_i];
|
19
|
+
var _a = pair, bodyA = _a.bodyA, bodyB = _a.bodyB;
|
20
|
+
bodyA.entity.onCollisionEnd(bodyB.entity);
|
21
|
+
bodyB.entity.onCollisionEnd(bodyA.entity);
|
22
|
+
}
|
23
|
+
});
|
24
|
+
Events.on(this.engine, "collisionActive", function (event) {
|
25
|
+
var pairs = event.pairs;
|
26
|
+
for (var _i = 0, pairs_3 = pairs; _i < pairs_3.length; _i++) {
|
27
|
+
var pair = pairs_3[_i];
|
28
|
+
var _a = pair, bodyA = _a.bodyA, bodyB = _a.bodyB;
|
29
|
+
bodyA.entity.onCollisionActive(bodyB.entity);
|
30
|
+
bodyB.entity.onCollisionActive(bodyA.entity);
|
31
|
+
}
|
32
|
+
});
|
15
33
|
}
|
16
34
|
WorldManagement.prototype.destructor = function () {
|
17
35
|
World.clear(this.engine.world, false);
|
@@ -4,10 +4,11 @@ export declare type SceneRunnerPublicProps = {
|
|
4
4
|
width: number;
|
5
5
|
height: number;
|
6
6
|
assetsLoader?: ReactNode | ComponentType;
|
7
|
+
assetsDelay?: number;
|
7
8
|
};
|
8
9
|
declare type SceneRunnerProps = SceneRunnerPublicProps & {
|
9
10
|
current: Scene;
|
10
11
|
};
|
11
|
-
export declare function SceneRunner({ current, width, height, assetsLoader: AssetsLoader, }: SceneRunnerProps): JSX.Element;
|
12
|
+
export declare function SceneRunner({ assetsDelay, current, width, height, assetsLoader: AssetsLoader, }: SceneRunnerProps): JSX.Element;
|
12
13
|
export {};
|
13
14
|
//# sourceMappingURL=SceneRunner.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SceneRunner.d.ts","sourceRoot":"","sources":["../../src/ui-components/SceneRunner.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,SAAS,EAGV,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC,oBAAY,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;
|
1
|
+
{"version":3,"file":"SceneRunner.d.ts","sourceRoot":"","sources":["../../src/ui-components/SceneRunner.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,SAAS,EAGV,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC,oBAAY,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,aAAK,gBAAgB,GAAG,sBAAsB,GAAG;IAC/C,OAAO,EAAE,KAAK,CAAC;CAChB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,WAAW,EACX,OAAO,EACP,KAAK,EACL,MAAM,EACN,YAAY,EAAE,YAAY,GAC3B,EAAE,gBAAgB,eAwClB"}
|
@@ -13,10 +13,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { useEffect, useMemo, } from "react";
|
14
14
|
import { Sketch } from "./Sketch";
|
15
15
|
export function SceneRunner(_a) {
|
16
|
-
var current = _a.current, width = _a.width, height = _a.height, AssetsLoader = _a.assetsLoader;
|
16
|
+
var assetsDelay = _a.assetsDelay, current = _a.current, width = _a.width, height = _a.height, AssetsLoader = _a.assetsLoader;
|
17
17
|
useEffect(function () {
|
18
|
-
current.loadAssets();
|
19
|
-
}, [current]);
|
18
|
+
current.loadAssets(assetsDelay);
|
19
|
+
}, [current, assetsDelay]);
|
20
20
|
var setup = function (camera) {
|
21
21
|
current.bootstrap(camera);
|
22
22
|
};
|
@@ -1,8 +1,9 @@
|
|
1
1
|
/// <reference types="react" />
|
2
2
|
import { SceneManagement } from "../classes/scene-management";
|
3
3
|
import { SceneRunnerPublicProps } from "./SceneRunner";
|
4
|
+
declare type SceneClasses = ConstructorParameters<typeof SceneManagement>[0];
|
4
5
|
declare type WorldViewProps = SceneRunnerPublicProps & {
|
5
|
-
list:
|
6
|
+
list: SceneClasses;
|
6
7
|
};
|
7
8
|
export declare function ScenesProcess({ list, ...props }: WorldViewProps): JSX.Element;
|
8
9
|
export {};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ScenesProcess.d.ts","sourceRoot":"","sources":["../../src/ui-components/ScenesProcess.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAe,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEpE,aAAK,
|
1
|
+
{"version":3,"file":"ScenesProcess.d.ts","sourceRoot":"","sources":["../../src/ui-components/ScenesProcess.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAe,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEpE,aAAK,YAAY,GAAG,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAErE,aAAK,cAAc,GAAG,sBAAsB,GAAG;IAC7C,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,eA8B/D"}
|
package/lib/utils.d.ts
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import { Avatar, Sound } from "./export-types";
|
2
2
|
export declare function createAssetImage(src: string): Promise<Avatar>;
|
3
3
|
export declare function createAssetSound(src: string): Promise<Sound>;
|
4
|
+
export declare function tick(delay?: number): Promise<unknown>;
|
4
5
|
//# sourceMappingURL=utils.d.ts.map
|
package/lib/utils.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAiB/C,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAInE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAWlE"}
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAiB/C,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAInE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAWlE;AAED,wBAAsB,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,oBAQxC"}
|
package/lib/utils.js
CHANGED
@@ -73,3 +73,17 @@ export function createAssetSound(src) {
|
|
73
73
|
});
|
74
74
|
});
|
75
75
|
}
|
76
|
+
export function tick(delay) {
|
77
|
+
return __awaiter(this, void 0, void 0, function () {
|
78
|
+
return __generator(this, function (_a) {
|
79
|
+
return [2 /*return*/, new Promise(function (res) {
|
80
|
+
if (delay != null) {
|
81
|
+
setTimeout(res, delay);
|
82
|
+
}
|
83
|
+
else {
|
84
|
+
// wait forever
|
85
|
+
}
|
86
|
+
})];
|
87
|
+
});
|
88
|
+
});
|
89
|
+
}
|