react-simple-game-engine 0.1.67 → 0.1.68
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/scene.d.ts.map +1 -1
- package/lib/classes/scene.js +46 -40
- package/lib/utils.d.ts +4 -0
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +43 -0
- package/package.json +1 -1
@@ -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;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/classes/scene.ts"],"names":[],"mappings":"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"}
|
package/lib/classes/scene.js
CHANGED
@@ -35,7 +35,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
35
35
|
}
|
36
36
|
};
|
37
37
|
import { WorldManagement } from "./world-management";
|
38
|
-
import { copyProperties, createAssetImage, createAssetSound, tick, } from "../utils";
|
38
|
+
import { copyProperties, createAssetImage, createAssetSound, parallel, tick, } from "../utils";
|
39
39
|
import { Sound } from "./sound";
|
40
40
|
import { SoundType } from "../export-enums";
|
41
41
|
var Scene = /** @class */ (function () {
|
@@ -240,7 +240,7 @@ var Scene = /** @class */ (function () {
|
|
240
240
|
return __awaiter(this, void 0, void 0, function () {
|
241
241
|
var _this = this;
|
242
242
|
return __generator(this, function (_a) {
|
243
|
-
return [2 /*return*/,
|
243
|
+
return [2 /*return*/, parallel(srcables, function (srcable) { return __awaiter(_this, void 0, void 0, function () {
|
244
244
|
var src, sprite;
|
245
245
|
return __generator(this, function (_a) {
|
246
246
|
switch (_a.label) {
|
@@ -253,7 +253,7 @@ var Scene = /** @class */ (function () {
|
|
253
253
|
return [2 /*return*/, sprite];
|
254
254
|
}
|
255
255
|
});
|
256
|
-
}); })
|
256
|
+
}); }, 5)];
|
257
257
|
});
|
258
258
|
});
|
259
259
|
};
|
@@ -265,7 +265,7 @@ var Scene = /** @class */ (function () {
|
|
265
265
|
return __awaiter(this, void 0, void 0, function () {
|
266
266
|
var _this = this;
|
267
267
|
return __generator(this, function (_a) {
|
268
|
-
return [2 /*return*/,
|
268
|
+
return [2 /*return*/, parallel(srcables, function (srcable) { return __awaiter(_this, void 0, void 0, function () {
|
269
269
|
var _a, volumn, src, _b, type, sound;
|
270
270
|
return __generator(this, function (_c) {
|
271
271
|
switch (_c.label) {
|
@@ -283,7 +283,7 @@ var Scene = /** @class */ (function () {
|
|
283
283
|
return [2 /*return*/, sound];
|
284
284
|
}
|
285
285
|
});
|
286
|
-
}); })
|
286
|
+
}); }, 5)];
|
287
287
|
});
|
288
288
|
});
|
289
289
|
};
|
@@ -299,23 +299,26 @@ var Scene = /** @class */ (function () {
|
|
299
299
|
switch (_a.label) {
|
300
300
|
case 0:
|
301
301
|
spritesDecor = this.spritesDecor.filter(function (decor) { return !decor.src; });
|
302
|
-
return [4 /*yield*/,
|
303
|
-
var
|
304
|
-
return
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
302
|
+
return [4 /*yield*/, parallel(srcs, function (src, _a) {
|
303
|
+
var realIndex = _a.realIndex;
|
304
|
+
return __awaiter(_this, void 0, void 0, function () {
|
305
|
+
var decor, sprite;
|
306
|
+
return __generator(this, function (_b) {
|
307
|
+
switch (_b.label) {
|
308
|
+
case 0:
|
309
|
+
decor = spritesDecor[realIndex];
|
310
|
+
if (!decor) return [3 /*break*/, 2];
|
311
|
+
return [4 /*yield*/, createAssetImage(src)];
|
312
|
+
case 1:
|
313
|
+
sprite = _b.sent();
|
314
|
+
this[decor.propertyKey] = sprite;
|
315
|
+
this.sprites.push(sprite);
|
316
|
+
_b.label = 2;
|
317
|
+
case 2: return [2 /*return*/];
|
318
|
+
}
|
319
|
+
});
|
317
320
|
});
|
318
|
-
}
|
321
|
+
}, 5)];
|
319
322
|
case 1:
|
320
323
|
_a.sent();
|
321
324
|
return [2 /*return*/];
|
@@ -335,26 +338,29 @@ var Scene = /** @class */ (function () {
|
|
335
338
|
switch (_a.label) {
|
336
339
|
case 0:
|
337
340
|
soundsDecor = this.soundsDecor.filter(function (decor) { return !decor.src; });
|
338
|
-
return [4 /*yield*/,
|
339
|
-
var
|
340
|
-
return
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
sound
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
341
|
+
return [4 /*yield*/, parallel(srcs, function (src, _a) {
|
342
|
+
var realIndex = _a.realIndex;
|
343
|
+
return __awaiter(_this, void 0, void 0, function () {
|
344
|
+
var decor, sound;
|
345
|
+
return __generator(this, function (_b) {
|
346
|
+
switch (_b.label) {
|
347
|
+
case 0:
|
348
|
+
decor = soundsDecor[realIndex];
|
349
|
+
if (!decor) return [3 /*break*/, 2];
|
350
|
+
return [4 /*yield*/, createAssetSound(src, decor.type)];
|
351
|
+
case 1:
|
352
|
+
sound = _b.sent();
|
353
|
+
if (decor.volumn) {
|
354
|
+
sound.volumn = decor.volumn;
|
355
|
+
}
|
356
|
+
this[decor.propertyKey] = sound;
|
357
|
+
this.sounds.push(sound);
|
358
|
+
_b.label = 2;
|
359
|
+
case 2: return [2 /*return*/];
|
360
|
+
}
|
361
|
+
});
|
356
362
|
});
|
357
|
-
}
|
363
|
+
}, 5)];
|
358
364
|
case 1:
|
359
365
|
_a.sent();
|
360
366
|
return [2 /*return*/];
|
package/lib/utils.d.ts
CHANGED
@@ -5,4 +5,8 @@ export declare function createAssetImage(src: string): Promise<Avatar>;
|
|
5
5
|
export declare function createAssetSound(src: string, type?: SoundType): Promise<Sound>;
|
6
6
|
export declare function tick(delay?: number): Promise<unknown>;
|
7
7
|
export declare function copyProperties(source: Record<string, any>, target: Record<string, any>): void;
|
8
|
+
export declare function parallel<T = any, S = T>(items: T[], each: (t: T, iter: {
|
9
|
+
index: number;
|
10
|
+
realIndex: number;
|
11
|
+
}) => Promise<S>, limit?: number): Promise<S[]>;
|
8
12
|
//# 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,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAiBxC,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAInE;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,SAAS,GACf,OAAO,CAAC,KAAK,CAAC,CAWhB;AAED,wBAAsB,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,oBAQxC;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAO5B"}
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAiBxC,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAInE;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,SAAS,GACf,OAAO,CAAC,KAAK,CAAC,CAWhB;AAED,wBAAsB,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,oBAQxC;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAO5B;AAED,wBAAsB,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAC3C,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EACtE,KAAK,SAAI,GACR,OAAO,CAAC,CAAC,EAAE,CAAC,CAkBd"}
|
package/lib/utils.js
CHANGED
@@ -95,3 +95,46 @@ export function copyProperties(source, target) {
|
|
95
95
|
}
|
96
96
|
}
|
97
97
|
}
|
98
|
+
export function parallel(items, each, limit) {
|
99
|
+
if (limit === void 0) { limit = 3; }
|
100
|
+
return __awaiter(this, void 0, void 0, function () {
|
101
|
+
var queue, results, _loop_1, _i, queue_1, index;
|
102
|
+
return __generator(this, function (_a) {
|
103
|
+
switch (_a.label) {
|
104
|
+
case 0:
|
105
|
+
queue = Array.from({ length: Math.ceil(items.length / limit) }).map(function (_, i) { return i; });
|
106
|
+
results = [];
|
107
|
+
_loop_1 = function (index) {
|
108
|
+
var start, end, _items, _b, _c, _d;
|
109
|
+
return __generator(this, function (_e) {
|
110
|
+
switch (_e.label) {
|
111
|
+
case 0:
|
112
|
+
start = index * limit;
|
113
|
+
end = start + limit;
|
114
|
+
_items = items.slice(start, end);
|
115
|
+
_c = (_b = results.push).apply;
|
116
|
+
_d = [results];
|
117
|
+
return [4 /*yield*/, Promise.all(_items.map(function (item, i) { return each(item, { index: i, realIndex: start + i }); }))];
|
118
|
+
case 1:
|
119
|
+
_c.apply(_b, _d.concat([(_e.sent())]));
|
120
|
+
return [2 /*return*/];
|
121
|
+
}
|
122
|
+
});
|
123
|
+
};
|
124
|
+
_i = 0, queue_1 = queue;
|
125
|
+
_a.label = 1;
|
126
|
+
case 1:
|
127
|
+
if (!(_i < queue_1.length)) return [3 /*break*/, 4];
|
128
|
+
index = queue_1[_i];
|
129
|
+
return [5 /*yield**/, _loop_1(index)];
|
130
|
+
case 2:
|
131
|
+
_a.sent();
|
132
|
+
_a.label = 3;
|
133
|
+
case 3:
|
134
|
+
_i++;
|
135
|
+
return [3 /*break*/, 1];
|
136
|
+
case 4: return [2 /*return*/, results];
|
137
|
+
}
|
138
|
+
});
|
139
|
+
});
|
140
|
+
}
|