@eva/plugin-renderer-tiling-sprite 1.2.6 → 1.2.7-editor.2

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.
@@ -12,7 +12,7 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
12
12
  d.__proto__ = b;
13
13
  } || function (d, b) {
14
14
  for (var p in b) {
15
- if (b.hasOwnProperty(p)) d[p] = b[p];
15
+ if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
16
16
  }
17
17
  };
18
18
 
@@ -20,6 +20,8 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
20
20
  };
21
21
 
22
22
  function __extends(d, b) {
23
+ if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
24
+
23
25
  _extendStatics(d, b);
24
26
 
25
27
  function __() {
@@ -29,6 +31,22 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
29
31
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30
32
  }
31
33
 
34
+ var _assign = function __assign() {
35
+ _assign = Object.assign || function __assign(t) {
36
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
37
+ s = arguments[i];
38
+
39
+ for (var p in s) {
40
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
41
+ }
42
+ }
43
+
44
+ return t;
45
+ };
46
+
47
+ return _assign.apply(this, arguments);
48
+ };
49
+
32
50
  function __decorate(decorators, target, key, desc) {
33
51
  var c = arguments.length,
34
52
  r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
@@ -39,6 +57,10 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
39
57
  return c > 3 && r && Object.defineProperty(target, key, r), r;
40
58
  }
41
59
 
60
+ function __metadata(metadataKey, metadataValue) {
61
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
62
+ }
63
+
42
64
  function __awaiter(thisArg, _arguments, P, generator) {
43
65
  function adopt(value) {
44
66
  return value instanceof P ? value : new P(function (resolve) {
@@ -182,34 +204,137 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
182
204
  }
183
205
  }
184
206
 
185
- function getIDEPropsPropertyObj(target, propertyKey) {
186
- if (!target.constructor.IDEProps) {
187
- target.constructor.IDEProps = {};
207
+ var SymbolKeysNotSupportedError = function (_super) {
208
+ __extends(SymbolKeysNotSupportedError, _super);
209
+
210
+ function SymbolKeysNotSupportedError() {
211
+ var _newTarget = this.constructor;
212
+
213
+ var _this = _super.call(this, 'Symbol keys are not supported yet!') || this;
214
+
215
+ Object.setPrototypeOf(_this, _newTarget.prototype);
216
+ return _this;
188
217
  }
189
218
 
190
- if (!target.constructor.IDEProps[propertyKey]) {
191
- target.constructor.IDEProps[propertyKey] = {};
219
+ return SymbolKeysNotSupportedError;
220
+ }(Error);
221
+
222
+ (function (_super) {
223
+ __extends(StaticGetPropertiesIsNotAFunctionError, _super);
224
+
225
+ function StaticGetPropertiesIsNotAFunctionError() {
226
+ var _newTarget = this.constructor;
227
+
228
+ var _this = _super.call(this, 'getProperties is not a function!') || this;
229
+
230
+ Object.setPrototypeOf(_this, _newTarget.prototype);
231
+ return _this;
232
+ }
233
+
234
+ return StaticGetPropertiesIsNotAFunctionError;
235
+ })(Error);
236
+
237
+ var IDE_PROPERTY_METADATA = 'IDE_PROPERTY_METADATA';
238
+
239
+ function transformBasicType(type) {
240
+ if (type === String) {
241
+ return 'string';
242
+ }
243
+
244
+ if (type === Number) {
245
+ return 'number';
246
+ }
247
+
248
+ if (type === Boolean) {
249
+ return 'boolean';
192
250
  }
193
251
 
194
- var propertyObj = target.constructor.IDEProps[propertyKey];
195
- return propertyObj;
252
+ return 'unknown';
196
253
  }
197
254
 
198
- function type(type) {
199
- return function (target, propertyKey) {
200
- var prop = getIDEPropsPropertyObj(target, propertyKey);
201
- prop.key = propertyKey;
202
- prop.type = type;
255
+ function defineTypes(target, key, options, returnTypeFunction) {
256
+ var type = Reflect.getMetadata('design:type', target, key);
257
+ var isArray = type === Array;
258
+ var str = transformBasicType(type);
259
+
260
+ if (str !== 'unknown') {
261
+ type = str;
262
+ }
263
+
264
+ if (returnTypeFunction) {
265
+ var returnType = returnTypeFunction();
266
+
267
+ if (Array.isArray(returnType)) {
268
+ isArray = true;
269
+ type = returnType[0];
270
+ } else {
271
+ type = returnType;
272
+ }
273
+ }
274
+
275
+ var properties = Reflect.getMetadata(IDE_PROPERTY_METADATA, target.constructor) || {};
276
+ properties[key] = _assign({
277
+ type: type,
278
+ isArray: isArray
279
+ }, options);
280
+ Reflect.defineMetadata(IDE_PROPERTY_METADATA, properties, target.constructor);
281
+ }
282
+
283
+ function getTypeDecoratorParams(returnTypeFuncOrOptions, maybeOptions) {
284
+ if (typeof returnTypeFuncOrOptions === 'function') {
285
+ return {
286
+ returnTypeFunc: returnTypeFuncOrOptions,
287
+ options: maybeOptions || {}
288
+ };
289
+ }
290
+
291
+ return {
292
+ options: returnTypeFuncOrOptions || {}
203
293
  };
204
294
  }
205
295
 
206
- function step(step) {
296
+ function Field(returnTypeFunction, maybeOptions) {
207
297
  return function (target, propertyKey) {
208
- var prop = getIDEPropsPropertyObj(target, propertyKey);
209
- prop.step = step;
298
+ if (typeof propertyKey === 'symbol') {
299
+ throw new SymbolKeysNotSupportedError();
300
+ }
301
+
302
+ var _a = getTypeDecoratorParams(returnTypeFunction, maybeOptions),
303
+ options = _a.options,
304
+ returnTypeFunc = _a.returnTypeFunc;
305
+
306
+ defineTypes(target, propertyKey, options, returnTypeFunc);
210
307
  };
211
308
  }
212
309
 
310
+ var Vector2 = function () {
311
+ function Vector2() {}
312
+
313
+ __decorate([Field({
314
+ step: 0.1
315
+ }), __metadata("design:type", Number)], Vector2.prototype, "x", void 0);
316
+
317
+ __decorate([Field({
318
+ step: 0.1
319
+ }), __metadata("design:type", Number)], Vector2.prototype, "y", void 0);
320
+
321
+ return Vector2;
322
+ }();
323
+
324
+ var IntVector2 = function () {
325
+ function IntVector2() {}
326
+
327
+ __decorate([Field({
328
+ step: 1
329
+ }), __metadata("design:type", Number)], IntVector2.prototype, "x", void 0);
330
+
331
+ __decorate([Field({
332
+ step: 1
333
+ }), __metadata("design:type", Number)], IntVector2.prototype, "y", void 0);
334
+
335
+ return IntVector2;
336
+ }();
337
+
213
338
  var TilingSprite$2 = function (_super) {
214
339
  __extends(TilingSprite, _super);
215
340
 
@@ -238,11 +363,15 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
238
363
 
239
364
  TilingSprite.componentName = 'TilingSprite';
240
365
 
241
- __decorate([type('string')], TilingSprite.prototype, "resource", void 0);
366
+ __decorate([Field(), __metadata("design:type", String)], TilingSprite.prototype, "resource", void 0);
242
367
 
243
- __decorate([type('vector2'), step(0.1)], TilingSprite.prototype, "tileScale", void 0);
368
+ __decorate([Field(function () {
369
+ return Vector2;
370
+ }), __metadata("design:type", Object)], TilingSprite.prototype, "tileScale", void 0);
244
371
 
245
- __decorate([type('vector2'), step(1)], TilingSprite.prototype, "tilePosition", void 0);
372
+ __decorate([Field(function () {
373
+ return IntVector2;
374
+ }), __metadata("design:type", Object)], TilingSprite.prototype, "tilePosition", void 0);
246
375
 
247
376
  return TilingSprite;
248
377
  }(eva_js.Component);
@@ -279,36 +408,42 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
279
408
 
280
409
  TilingSprite.prototype.componentChanged = function (changed) {
281
410
  return __awaiter(this, void 0, void 0, function () {
282
- var component, sprite_1, data, sprite;
411
+ var gameObjectId, component, sprite, asyncId, data, asyncId, data, sprite;
283
412
  return __generator(this, function (_a) {
284
413
  switch (_a.label) {
285
414
  case 0:
286
- if (!(changed.componentName === 'TilingSprite')) return [3, 6];
415
+ gameObjectId = changed.gameObject.id;
416
+ if (!(changed.componentName === 'TilingSprite')) return [3, 7];
287
417
  component = changed.component;
288
- if (!(changed.type === eva_js.OBSERVER_TYPE.ADD)) return [3, 1];
289
- sprite_1 = new rendererAdapter.TilingSprite(null);
290
- eva_js.resource.getResource(component.resource).then(function (_a) {
291
- var data = _a.data;
292
-
293
- if (!data) {
294
- console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
295
- return;
296
- }
297
-
298
- sprite_1.image = data.image;
299
- });
300
- this.imgs[changed.gameObject.id] = sprite_1;
301
- this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite_1.tilingSprite, 0);
418
+ if (!(changed.type === eva_js.OBSERVER_TYPE.ADD)) return [3, 2];
419
+ sprite = new rendererAdapter.TilingSprite(null);
420
+ this.imgs[changed.gameObject.id] = sprite;
421
+ this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);
302
422
  this.setProp(changed.gameObject.id, component);
303
- return [3, 6];
423
+ asyncId = this.increaseAsyncId(gameObjectId);
424
+ return [4, eva_js.resource.getResource(component.resource)];
304
425
 
305
426
  case 1:
306
- if (!(changed.type === eva_js.OBSERVER_TYPE.CHANGE)) return [3, 5];
307
- if (!(changed.prop.prop[0] === 'resource')) return [3, 3];
308
- return [4, eva_js.resource.getResource(component.resource)];
427
+ data = _a.sent().data;
428
+ if (!this.validateAsyncId(gameObjectId, asyncId)) return [2];
429
+
430
+ if (!data) {
431
+ console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
432
+ return [2];
433
+ }
434
+
435
+ sprite.image = data.image;
436
+ return [3, 7];
309
437
 
310
438
  case 2:
439
+ if (!(changed.type === eva_js.OBSERVER_TYPE.CHANGE)) return [3, 6];
440
+ if (!(changed.prop.prop[0] === 'resource')) return [3, 4];
441
+ asyncId = this.increaseAsyncId(gameObjectId);
442
+ return [4, eva_js.resource.getResource(component.resource)];
443
+
444
+ case 3:
311
445
  data = _a.sent().data;
446
+ if (!this.validateAsyncId(gameObjectId, asyncId)) return [2];
312
447
 
313
448
  if (!data) {
314
449
  console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
@@ -316,17 +451,18 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
316
451
  }
317
452
 
318
453
  this.imgs[changed.gameObject.id].image = data.image;
319
- return [3, 4];
320
-
321
- case 3:
322
- this.setProp(changed.gameObject.id, component);
323
- _a.label = 4;
454
+ return [3, 5];
324
455
 
325
456
  case 4:
326
- return [3, 6];
457
+ this.setProp(changed.gameObject.id, component);
458
+ _a.label = 5;
327
459
 
328
460
  case 5:
461
+ return [3, 7];
462
+
463
+ case 6:
329
464
  if (changed.type === eva_js.OBSERVER_TYPE.REMOVE) {
465
+ this.increaseAsyncId(gameObjectId);
330
466
  sprite = this.imgs[changed.gameObject.id];
331
467
  this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);
332
468
  sprite.tilingSprite.destroy({
@@ -335,9 +471,9 @@ var _EVA_IIFE_tilingSprite = function (exports, eva_js, pluginRenderer, renderer
335
471
  delete this.imgs[changed.gameObject.id];
336
472
  }
337
473
 
338
- _a.label = 6;
474
+ _a.label = 7;
339
475
 
340
- case 6:
476
+ case 7:
341
477
  return [2];
342
478
  }
343
479
  });
@@ -1 +1 @@
1
- window.EVA=window.EVA||{},window.EVA.plugin=window.EVA.plugin||{},window.EVA.plugin.renderer=window.EVA.plugin.renderer||{};var _EVA_IIFE_tilingSprite=function(e,t,r,n){"use strict";var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function o(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function c(e,t,r,n){var i,o=arguments.length,c=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(c=(o<3?i(c):o>3?i(t,r,c):i(t,r))||c);return o>3&&c&&Object.defineProperty(t,r,c),c}function s(e,t,r,n){return new(r||(r=Promise))((function(i,o){function c(e){try{a(n.next(e))}catch(e){o(e)}}function s(e){try{a(n.throw(e))}catch(e){o(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(c,s)}a((n=n.apply(e,t||[])).next())}))}function a(e,t){var r,n,i,o,c={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;c;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return c.label++,{value:o[1],done:!1};case 5:c.label++,n=o[1],o=[0];continue;case 7:o=c.ops.pop(),c.trys.pop();continue;default:if(!(i=c.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){c=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){c.label=o[1];break}if(6===o[0]&&c.label<i[1]){c.label=i[1],i=o;break}if(i&&c.label<i[2]){c.label=i[2],c.ops.push(o);break}i[2]&&c.ops.pop(),c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}function l(e,t){return e.constructor.IDEProps||(e.constructor.IDEProps={}),e.constructor.IDEProps[t]||(e.constructor.IDEProps[t]={}),e.constructor.IDEProps[t]}function p(e){return function(t,r){var n=l(t,r);n.key=r,n.type=e}}function u(e){return function(t,r){l(t,r).step=e}}var g=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.resource="",t.tileScale={x:1,y:1},t.tilePosition={x:0,y:0},t}return o(t,e),t.prototype.init=function(e){e&&(this.resource=e.resource,this.tileScale=e.tileScale,this.tilePosition=e.tilePosition)},t.componentName="TilingSprite",c([p("string")],t.prototype,"resource",void 0),c([p("vector2"),u(.1)],t.prototype,"tileScale",void 0),c([p("vector2"),u(1)],t.prototype,"tilePosition",void 0),t}(t.Component),d=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.name="TilingSprite",t.imgs={},t}return o(i,e),i.prototype.init=function(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)},i.prototype.rendererUpdate=function(e){var t=e.transform.size,r=t.width,n=t.height,i=this.imgs[e.id];i&&(i.tilingSprite.width=r,i.tilingSprite.height=n)},i.prototype.componentChanged=function(e){return s(this,void 0,void 0,(function(){var r,i,o,c;return a(this,(function(s){switch(s.label){case 0:return"TilingSprite"!==e.componentName?[3,6]:(r=e.component,e.type!==t.OBSERVER_TYPE.ADD?[3,1]:(i=new n.TilingSprite(null),t.resource.getResource(r.resource).then((function(t){var r=t.data;r?i.image=r.image:console.error("GameObject:"+e.gameObject.name+"'s TilingSprite resource load error")})),this.imgs[e.gameObject.id]=i,this.containerManager.getContainer(e.gameObject.id).addChildAt(i.tilingSprite,0),this.setProp(e.gameObject.id,r),[3,6]));case 1:return e.type!==t.OBSERVER_TYPE.CHANGE?[3,5]:"resource"!==e.prop.prop[0]?[3,3]:[4,t.resource.getResource(r.resource)];case 2:return(o=s.sent().data)?(this.imgs[e.gameObject.id].image=o.image,[3,4]):(console.error("GameObject:"+e.gameObject.name+"'s TilingSprite resource load error"),[2]);case 3:this.setProp(e.gameObject.id,r),s.label=4;case 4:return[3,6];case 5:e.type===t.OBSERVER_TYPE.REMOVE&&(c=this.imgs[e.gameObject.id],this.containerManager.getContainer(e.gameObject.id).removeChild(c.tilingSprite),c.tilingSprite.destroy({children:!0}),delete this.imgs[e.gameObject.id]),s.label=6;case 6:return[2]}}))}))},i.prototype.setProp=function(e,t){this.imgs[e].tilingSprite.tilePosition=t.tilePosition,this.imgs[e].tilingSprite.tileScale=t.tileScale},i=c([t.decorators.componentObserver({TilingSprite:[{prop:["resource"],deep:!1},{prop:["tileScale"],deep:!0},{prop:["tilePosition"],deep:!0}]})],i)}(r.Renderer);return e.TilingSprite=g,e.TilingSpriteSystem=d,Object.defineProperty(e,"__esModule",{value:!0}),e}({},EVA,EVA.plugin.renderer,EVA.rendererAdapter);window.EVA.plugin.renderer.tilingSprite=window.EVA.plugin.renderer.tilingSprite||_EVA_IIFE_tilingSprite;
1
+ window.EVA=window.EVA||{},window.EVA.plugin=window.EVA.plugin||{},window.EVA.plugin.renderer=window.EVA.plugin.renderer||{};var _EVA_IIFE_tilingSprite=function(e,t,r,n){"use strict";var i=function(e,t){return i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},i(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var c=function(){return c=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},c.apply(this,arguments)};function a(e,t,r,n){var i,o=arguments.length,c=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(c=(o<3?i(c):o>3?i(t,r,c):i(t,r))||c);return o>3&&c&&Object.defineProperty(t,r,c),c}function s(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function u(e,t,r,n){return new(r||(r=Promise))((function(i,o){function c(e){try{s(n.next(e))}catch(e){o(e)}}function a(e){try{s(n.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(c,a)}s((n=n.apply(e,t||[])).next())}))}function p(e,t){var r,n,i,o,c={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;c;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return c.label++,{value:o[1],done:!1};case 5:c.label++,n=o[1],o=[0];continue;case 7:o=c.ops.pop(),c.trys.pop();continue;default:if(!(i=c.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){c=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){c.label=o[1];break}if(6===o[0]&&c.label<i[1]){c.label=i[1],i=o;break}if(i&&c.label<i[2]){c.label=i[2],c.ops.push(o);break}i[2]&&c.ops.pop(),c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}var l=function(e){function t(){var t=this.constructor,r=e.call(this,"Symbol keys are not supported yet!")||this;return Object.setPrototypeOf(r,t.prototype),r}return o(t,e),t}(Error);!function(e){function t(){var t=this.constructor,r=e.call(this,"getProperties is not a function!")||this;return Object.setPrototypeOf(r,t.prototype),r}o(t,e)}(Error);var f="IDE_PROPERTY_METADATA";function d(e,t,r,n){var i=Reflect.getMetadata("design:type",e,t),o=i===Array,a=function(e){return e===String?"string":e===Number?"number":e===Boolean?"boolean":"unknown"}(i);if("unknown"!==a&&(i=a),n){var s=n();Array.isArray(s)?(o=!0,i=s[0]):i=s}var u=Reflect.getMetadata(f,e.constructor)||{};u[t]=c({type:i,isArray:o},r),Reflect.defineMetadata(f,u,e.constructor)}function y(e,t){return function(r,n){if("symbol"==typeof n)throw new l;var i=function(e,t){return"function"==typeof e?{returnTypeFunc:e,options:t||{}}:{options:e||{}}}(e,t);d(r,n,i.options,i.returnTypeFunc)}}var g=function(){function e(){}return a([y({step:.1}),s("design:type",Number)],e.prototype,"x",void 0),a([y({step:.1}),s("design:type",Number)],e.prototype,"y",void 0),e}(),h=function(){function e(){}return a([y({step:1}),s("design:type",Number)],e.prototype,"x",void 0),a([y({step:1}),s("design:type",Number)],e.prototype,"y",void 0),e}(),m=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.resource="",t.tileScale={x:1,y:1},t.tilePosition={x:0,y:0},t}return o(t,e),t.prototype.init=function(e){e&&(this.resource=e.resource,this.tileScale=e.tileScale,this.tilePosition=e.tilePosition)},t.componentName="TilingSprite",a([y(),s("design:type",String)],t.prototype,"resource",void 0),a([y((function(){return g})),s("design:type",Object)],t.prototype,"tileScale",void 0),a([y((function(){return h})),s("design:type",Object)],t.prototype,"tilePosition",void 0),t}(t.Component),b=m,v=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.name="TilingSprite",t.imgs={},t}return o(i,e),i.prototype.init=function(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)},i.prototype.rendererUpdate=function(e){var t=e.transform.size,r=t.width,n=t.height,i=this.imgs[e.id];i&&(i.tilingSprite.width=r,i.tilingSprite.height=n)},i.prototype.componentChanged=function(e){return u(this,void 0,void 0,(function(){var r,i,o,c,a;return p(this,(function(s){switch(s.label){case 0:return r=e.gameObject.id,"TilingSprite"!==e.componentName?[3,7]:(i=e.component,e.type!==t.OBSERVER_TYPE.ADD?[3,2]:(a=new n.TilingSprite(null),this.imgs[e.gameObject.id]=a,this.containerManager.getContainer(e.gameObject.id).addChildAt(a.tilingSprite,0),this.setProp(e.gameObject.id,i),o=this.increaseAsyncId(r),[4,t.resource.getResource(i.resource)]));case 1:return c=s.sent().data,this.validateAsyncId(r,o)?c?(a.image=c.image,[3,7]):(console.error("GameObject:"+e.gameObject.name+"'s TilingSprite resource load error"),[2]):[2];case 2:return e.type!==t.OBSERVER_TYPE.CHANGE?[3,6]:"resource"!==e.prop.prop[0]?[3,4]:(o=this.increaseAsyncId(r),[4,t.resource.getResource(i.resource)]);case 3:return c=s.sent().data,this.validateAsyncId(r,o)?c?(this.imgs[e.gameObject.id].image=c.image,[3,5]):(console.error("GameObject:"+e.gameObject.name+"'s TilingSprite resource load error"),[2]):[2];case 4:this.setProp(e.gameObject.id,i),s.label=5;case 5:return[3,7];case 6:e.type===t.OBSERVER_TYPE.REMOVE&&(this.increaseAsyncId(r),a=this.imgs[e.gameObject.id],this.containerManager.getContainer(e.gameObject.id).removeChild(a.tilingSprite),a.tilingSprite.destroy({children:!0}),delete this.imgs[e.gameObject.id]),s.label=7;case 7:return[2]}}))}))},i.prototype.setProp=function(e,t){this.imgs[e].tilingSprite.tilePosition=t.tilePosition,this.imgs[e].tilingSprite.tileScale=t.tileScale},i=a([t.decorators.componentObserver({TilingSprite:[{prop:["resource"],deep:!1},{prop:["tileScale"],deep:!0},{prop:["tilePosition"],deep:!0}]})],i)}(r.Renderer),S=v;return e.TilingSprite=b,e.TilingSpriteSystem=S,Object.defineProperty(e,"__esModule",{value:!0}),e}({},EVA,EVA.plugin.renderer,EVA.rendererAdapter);window.EVA.plugin.renderer.tilingSprite=window.EVA.plugin.renderer.tilingSprite||_EVA_IIFE_tilingSprite;
@@ -1,9 +1,37 @@
1
- import { __extends, __decorate, __awaiter, __generator } from 'tslib';
1
+ import { __decorate, __metadata, __extends, __awaiter, __generator } from 'tslib';
2
2
  import { Component, OBSERVER_TYPE, resource, decorators } from '@eva/eva.js/dist/miniprogram';
3
- import { type, step } from '@eva/inspector-decorator';
3
+ import { Field } from '@eva/inspector-decorator';
4
4
  import { RendererSystem, Renderer } from '@eva/plugin-renderer/dist/miniprogram';
5
5
  import { TilingSprite as TilingSprite$4 } from '@eva/renderer-adapter/dist/miniprogram';
6
6
 
7
+ var Vector2 = function () {
8
+ function Vector2() {}
9
+
10
+ __decorate([Field({
11
+ step: 0.1
12
+ }), __metadata("design:type", Number)], Vector2.prototype, "x", void 0);
13
+
14
+ __decorate([Field({
15
+ step: 0.1
16
+ }), __metadata("design:type", Number)], Vector2.prototype, "y", void 0);
17
+
18
+ return Vector2;
19
+ }();
20
+
21
+ var IntVector2 = function () {
22
+ function IntVector2() {}
23
+
24
+ __decorate([Field({
25
+ step: 1
26
+ }), __metadata("design:type", Number)], IntVector2.prototype, "x", void 0);
27
+
28
+ __decorate([Field({
29
+ step: 1
30
+ }), __metadata("design:type", Number)], IntVector2.prototype, "y", void 0);
31
+
32
+ return IntVector2;
33
+ }();
34
+
7
35
  var TilingSprite$2 = function (_super) {
8
36
  __extends(TilingSprite, _super);
9
37
 
@@ -32,11 +60,15 @@ var TilingSprite$2 = function (_super) {
32
60
 
33
61
  TilingSprite.componentName = 'TilingSprite';
34
62
 
35
- __decorate([type('string')], TilingSprite.prototype, "resource", void 0);
63
+ __decorate([Field(), __metadata("design:type", String)], TilingSprite.prototype, "resource", void 0);
36
64
 
37
- __decorate([type('vector2'), step(0.1)], TilingSprite.prototype, "tileScale", void 0);
65
+ __decorate([Field(function () {
66
+ return Vector2;
67
+ }), __metadata("design:type", Object)], TilingSprite.prototype, "tileScale", void 0);
38
68
 
39
- __decorate([type('vector2'), step(1)], TilingSprite.prototype, "tilePosition", void 0);
69
+ __decorate([Field(function () {
70
+ return IntVector2;
71
+ }), __metadata("design:type", Object)], TilingSprite.prototype, "tilePosition", void 0);
40
72
 
41
73
  return TilingSprite;
42
74
  }(Component);
@@ -73,36 +105,42 @@ var TilingSprite = function (_super) {
73
105
 
74
106
  TilingSprite.prototype.componentChanged = function (changed) {
75
107
  return __awaiter(this, void 0, void 0, function () {
76
- var component, sprite_1, data, sprite;
108
+ var gameObjectId, component, sprite, asyncId, data, asyncId, data, sprite;
77
109
  return __generator(this, function (_a) {
78
110
  switch (_a.label) {
79
111
  case 0:
80
- if (!(changed.componentName === 'TilingSprite')) return [3, 6];
112
+ gameObjectId = changed.gameObject.id;
113
+ if (!(changed.componentName === 'TilingSprite')) return [3, 7];
81
114
  component = changed.component;
82
- if (!(changed.type === OBSERVER_TYPE.ADD)) return [3, 1];
83
- sprite_1 = new TilingSprite$4(null);
84
- resource.getResource(component.resource).then(function (_a) {
85
- var data = _a.data;
86
-
87
- if (!data) {
88
- console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
89
- return;
90
- }
91
-
92
- sprite_1.image = data.image;
93
- });
94
- this.imgs[changed.gameObject.id] = sprite_1;
95
- this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite_1.tilingSprite, 0);
115
+ if (!(changed.type === OBSERVER_TYPE.ADD)) return [3, 2];
116
+ sprite = new TilingSprite$4(null);
117
+ this.imgs[changed.gameObject.id] = sprite;
118
+ this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);
96
119
  this.setProp(changed.gameObject.id, component);
97
- return [3, 6];
120
+ asyncId = this.increaseAsyncId(gameObjectId);
121
+ return [4, resource.getResource(component.resource)];
98
122
 
99
123
  case 1:
100
- if (!(changed.type === OBSERVER_TYPE.CHANGE)) return [3, 5];
101
- if (!(changed.prop.prop[0] === 'resource')) return [3, 3];
102
- return [4, resource.getResource(component.resource)];
124
+ data = _a.sent().data;
125
+ if (!this.validateAsyncId(gameObjectId, asyncId)) return [2];
126
+
127
+ if (!data) {
128
+ console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
129
+ return [2];
130
+ }
131
+
132
+ sprite.image = data.image;
133
+ return [3, 7];
103
134
 
104
135
  case 2:
136
+ if (!(changed.type === OBSERVER_TYPE.CHANGE)) return [3, 6];
137
+ if (!(changed.prop.prop[0] === 'resource')) return [3, 4];
138
+ asyncId = this.increaseAsyncId(gameObjectId);
139
+ return [4, resource.getResource(component.resource)];
140
+
141
+ case 3:
105
142
  data = _a.sent().data;
143
+ if (!this.validateAsyncId(gameObjectId, asyncId)) return [2];
106
144
 
107
145
  if (!data) {
108
146
  console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
@@ -110,17 +148,18 @@ var TilingSprite = function (_super) {
110
148
  }
111
149
 
112
150
  this.imgs[changed.gameObject.id].image = data.image;
113
- return [3, 4];
114
-
115
- case 3:
116
- this.setProp(changed.gameObject.id, component);
117
- _a.label = 4;
151
+ return [3, 5];
118
152
 
119
153
  case 4:
120
- return [3, 6];
154
+ this.setProp(changed.gameObject.id, component);
155
+ _a.label = 5;
121
156
 
122
157
  case 5:
158
+ return [3, 7];
159
+
160
+ case 6:
123
161
  if (changed.type === OBSERVER_TYPE.REMOVE) {
162
+ this.increaseAsyncId(gameObjectId);
124
163
  sprite = this.imgs[changed.gameObject.id];
125
164
  this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);
126
165
  sprite.tilingSprite.destroy({
@@ -129,9 +168,9 @@ var TilingSprite = function (_super) {
129
168
  delete this.imgs[changed.gameObject.id];
130
169
  }
131
170
 
132
- _a.label = 6;
171
+ _a.label = 7;
133
172
 
134
- case 6:
173
+ case 7:
135
174
  return [2];
136
175
  }
137
176
  });
@@ -43,6 +43,10 @@ function __decorate(decorators, target, key, desc) {
43
43
  return c > 3 && r && Object.defineProperty(target, key, r), r;
44
44
  }
45
45
 
46
+ function __metadata(metadataKey, metadataValue) {
47
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
48
+ }
49
+
46
50
  function __awaiter(thisArg, _arguments, P, generator) {
47
51
  return new (P || (P = Promise))(function (resolve, reject) {
48
52
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -80,6 +84,32 @@ function __generator(thisArg, body) {
80
84
  }
81
85
  }
82
86
 
87
+ var Vector2 = (function () {
88
+ function Vector2() {
89
+ }
90
+ __decorate([
91
+ inspectorDecorator.Field({ step: 0.1 }),
92
+ __metadata("design:type", Number)
93
+ ], Vector2.prototype, "x", void 0);
94
+ __decorate([
95
+ inspectorDecorator.Field({ step: 0.1 }),
96
+ __metadata("design:type", Number)
97
+ ], Vector2.prototype, "y", void 0);
98
+ return Vector2;
99
+ }());
100
+ var IntVector2 = (function () {
101
+ function IntVector2() {
102
+ }
103
+ __decorate([
104
+ inspectorDecorator.Field({ step: 1 }),
105
+ __metadata("design:type", Number)
106
+ ], IntVector2.prototype, "x", void 0);
107
+ __decorate([
108
+ inspectorDecorator.Field({ step: 1 }),
109
+ __metadata("design:type", Number)
110
+ ], IntVector2.prototype, "y", void 0);
111
+ return IntVector2;
112
+ }());
83
113
  var TilingSprite$2 = (function (_super) {
84
114
  __extends(TilingSprite, _super);
85
115
  function TilingSprite() {
@@ -104,15 +134,16 @@ var TilingSprite$2 = (function (_super) {
104
134
  };
105
135
  TilingSprite.componentName = 'TilingSprite';
106
136
  __decorate([
107
- inspectorDecorator.type('string')
137
+ inspectorDecorator.Field(),
138
+ __metadata("design:type", String)
108
139
  ], TilingSprite.prototype, "resource", void 0);
109
140
  __decorate([
110
- inspectorDecorator.type('vector2'),
111
- inspectorDecorator.step(0.1)
141
+ inspectorDecorator.Field(function () { return Vector2; }),
142
+ __metadata("design:type", Object)
112
143
  ], TilingSprite.prototype, "tileScale", void 0);
113
144
  __decorate([
114
- inspectorDecorator.type('vector2'),
115
- inspectorDecorator.step(1)
145
+ inspectorDecorator.Field(function () { return IntVector2; }),
146
+ __metadata("design:type", Object)
116
147
  ], TilingSprite.prototype, "tilePosition", void 0);
117
148
  return TilingSprite;
118
149
  }(eva_js.Component));
@@ -140,44 +171,52 @@ var TilingSprite = (function (_super) {
140
171
  };
141
172
  TilingSprite.prototype.componentChanged = function (changed) {
142
173
  return __awaiter(this, void 0, void 0, function () {
143
- var component, sprite_1, data, sprite;
174
+ var gameObjectId, component, sprite, asyncId, data, asyncId, data, sprite;
144
175
  return __generator(this, function (_a) {
145
176
  switch (_a.label) {
146
177
  case 0:
147
- if (!(changed.componentName === 'TilingSprite')) return [3, 6];
178
+ gameObjectId = changed.gameObject.id;
179
+ if (!(changed.componentName === 'TilingSprite')) return [3, 7];
148
180
  component = changed.component;
149
- if (!(changed.type === eva_js.OBSERVER_TYPE.ADD)) return [3, 1];
150
- sprite_1 = new rendererAdapter.TilingSprite(null);
151
- eva_js.resource.getResource(component.resource).then(function (_a) {
152
- var data = _a.data;
153
- if (!data) {
154
- console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
155
- return;
156
- }
157
- sprite_1.image = data.image;
158
- });
159
- this.imgs[changed.gameObject.id] = sprite_1;
160
- this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite_1.tilingSprite, 0);
181
+ if (!(changed.type === eva_js.OBSERVER_TYPE.ADD)) return [3, 2];
182
+ sprite = new rendererAdapter.TilingSprite(null);
183
+ this.imgs[changed.gameObject.id] = sprite;
184
+ this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);
161
185
  this.setProp(changed.gameObject.id, component);
162
- return [3, 6];
163
- case 1:
164
- if (!(changed.type === eva_js.OBSERVER_TYPE.CHANGE)) return [3, 5];
165
- if (!(changed.prop.prop[0] === 'resource')) return [3, 3];
186
+ asyncId = this.increaseAsyncId(gameObjectId);
166
187
  return [4, eva_js.resource.getResource(component.resource)];
188
+ case 1:
189
+ data = (_a.sent()).data;
190
+ if (!this.validateAsyncId(gameObjectId, asyncId))
191
+ return [2];
192
+ if (!data) {
193
+ console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
194
+ return [2];
195
+ }
196
+ sprite.image = data.image;
197
+ return [3, 7];
167
198
  case 2:
199
+ if (!(changed.type === eva_js.OBSERVER_TYPE.CHANGE)) return [3, 6];
200
+ if (!(changed.prop.prop[0] === 'resource')) return [3, 4];
201
+ asyncId = this.increaseAsyncId(gameObjectId);
202
+ return [4, eva_js.resource.getResource(component.resource)];
203
+ case 3:
168
204
  data = (_a.sent()).data;
205
+ if (!this.validateAsyncId(gameObjectId, asyncId))
206
+ return [2];
169
207
  if (!data) {
170
208
  console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
171
209
  return [2];
172
210
  }
173
211
  this.imgs[changed.gameObject.id].image = data.image;
174
- return [3, 4];
175
- case 3:
212
+ return [3, 5];
213
+ case 4:
176
214
  this.setProp(changed.gameObject.id, component);
177
- _a.label = 4;
178
- case 4: return [3, 6];
179
- case 5:
215
+ _a.label = 5;
216
+ case 5: return [3, 7];
217
+ case 6:
180
218
  if (changed.type === eva_js.OBSERVER_TYPE.REMOVE) {
219
+ this.increaseAsyncId(gameObjectId);
181
220
  sprite = this.imgs[changed.gameObject.id];
182
221
  this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);
183
222
  sprite.tilingSprite.destroy({
@@ -185,8 +224,8 @@ var TilingSprite = (function (_super) {
185
224
  });
186
225
  delete this.imgs[changed.gameObject.id];
187
226
  }
188
- _a.label = 6;
189
- case 6: return [2];
227
+ _a.label = 7;
228
+ case 7: return [2];
190
229
  }
191
230
  });
192
231
  });
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),t=require("@eva/inspector-decorator"),r=require("@eva/plugin-renderer"),i=require("@eva/renderer-adapter"),n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function o(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function a(e,t,r,i){var n,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i);else for(var c=e.length-1;c>=0;c--)(n=e[c])&&(a=(o<3?n(a):o>3?n(t,r,a):n(t,r))||a);return o>3&&a&&Object.defineProperty(t,r,a),a}function c(e,t){var r,i,n,o,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function c(o){return function(c){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,i&&(n=2&o[0]?i.return:o[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,o[1])).done)return n;switch(i=0,n&&(o=[2&o[0],n.value]),o[0]){case 0:case 1:n=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!n||o[1]>n[0]&&o[1]<n[3])){a.label=o[1];break}if(6===o[0]&&a.label<n[1]){a.label=n[1],n=o;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(o);break}n[2]&&a.ops.pop(),a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e],i=0}finally{r=n=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,c])}}}var s=function(e){function r(){var t=null!==e&&e.apply(this,arguments)||this;return t.resource="",t.tileScale={x:1,y:1},t.tilePosition={x:0,y:0},t}return o(r,e),r.prototype.init=function(e){e&&(this.resource=e.resource,this.tileScale=e.tileScale,this.tilePosition=e.tilePosition)},r.componentName="TilingSprite",a([t.type("string")],r.prototype,"resource",void 0),a([t.type("vector2"),t.step(.1)],r.prototype,"tileScale",void 0),a([t.type("vector2"),t.step(1)],r.prototype,"tilePosition",void 0),r}(e.Component),l=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.name="TilingSprite",e.imgs={},e}return o(n,t),n.prototype.init=function(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)},n.prototype.rendererUpdate=function(e){var t=e.transform.size,r=t.width,i=t.height,n=this.imgs[e.id];n&&(n.tilingSprite.width=r,n.tilingSprite.height=i)},n.prototype.componentChanged=function(t){return r=this,n=void 0,a=function(){var r,n,o,a;return c(this,(function(c){switch(c.label){case 0:return"TilingSprite"!==t.componentName?[3,6]:(r=t.component,t.type!==e.OBSERVER_TYPE.ADD?[3,1]:(n=new i.TilingSprite(null),e.resource.getResource(r.resource).then((function(e){var r=e.data;r?n.image=r.image:console.error("GameObject:"+t.gameObject.name+"'s TilingSprite resource load error")})),this.imgs[t.gameObject.id]=n,this.containerManager.getContainer(t.gameObject.id).addChildAt(n.tilingSprite,0),this.setProp(t.gameObject.id,r),[3,6]));case 1:return t.type!==e.OBSERVER_TYPE.CHANGE?[3,5]:"resource"!==t.prop.prop[0]?[3,3]:[4,e.resource.getResource(r.resource)];case 2:return(o=c.sent().data)?(this.imgs[t.gameObject.id].image=o.image,[3,4]):(console.error("GameObject:"+t.gameObject.name+"'s TilingSprite resource load error"),[2]);case 3:this.setProp(t.gameObject.id,r),c.label=4;case 4:return[3,6];case 5:t.type===e.OBSERVER_TYPE.REMOVE&&(a=this.imgs[t.gameObject.id],this.containerManager.getContainer(t.gameObject.id).removeChild(a.tilingSprite),a.tilingSprite.destroy({children:!0}),delete this.imgs[t.gameObject.id]),c.label=6;case 6:return[2]}}))},new((o=void 0)||(o=Promise))((function(e,t){function i(e){try{s(a.next(e))}catch(e){t(e)}}function c(e){try{s(a.throw(e))}catch(e){t(e)}}function s(t){t.done?e(t.value):new o((function(e){e(t.value)})).then(i,c)}s((a=a.apply(r,n||[])).next())}));var r,n,o,a},n.prototype.setProp=function(e,t){this.imgs[e].tilingSprite.tilePosition=t.tilePosition,this.imgs[e].tilingSprite.tileScale=t.tileScale},n=a([e.decorators.componentObserver({TilingSprite:[{prop:["resource"],deep:!1},{prop:["tileScale"],deep:!0},{prop:["tilePosition"],deep:!0}]})],n)}(r.Renderer);exports.TilingSprite=s,exports.TilingSpriteSystem=l;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),t=require("@eva/inspector-decorator"),r=require("@eva/plugin-renderer"),i=require("@eva/renderer-adapter"),n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},n(e,t)};function o(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function c(e,t,r,i){var n,o=arguments.length,c=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,i);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(c=(o<3?n(c):o>3?n(t,r,c):n(t,r))||c);return o>3&&c&&Object.defineProperty(t,r,c),c}function s(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function a(e,t){var r,i,n,o,c={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;c;)try{if(r=1,i&&(n=2&o[0]?i.return:o[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,o[1])).done)return n;switch(i=0,n&&(o=[2&o[0],n.value]),o[0]){case 0:case 1:n=o;break;case 4:return c.label++,{value:o[1],done:!1};case 5:c.label++,i=o[1],o=[0];continue;case 7:o=c.ops.pop(),c.trys.pop();continue;default:if(!(n=c.trys,(n=n.length>0&&n[n.length-1])||6!==o[0]&&2!==o[0])){c=0;continue}if(3===o[0]&&(!n||o[1]>n[0]&&o[1]<n[3])){c.label=o[1];break}if(6===o[0]&&c.label<n[1]){c.label=n[1],n=o;break}if(n&&c.label<n[2]){c.label=n[2],c.ops.push(o);break}n[2]&&c.ops.pop(),c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e],i=0}finally{r=n=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}var p=function(){function e(){}return c([t.Field({step:.1}),s("design:type",Number)],e.prototype,"x",void 0),c([t.Field({step:.1}),s("design:type",Number)],e.prototype,"y",void 0),e}(),l=function(){function e(){}return c([t.Field({step:1}),s("design:type",Number)],e.prototype,"x",void 0),c([t.Field({step:1}),s("design:type",Number)],e.prototype,"y",void 0),e}(),u=function(e){function r(){var t=null!==e&&e.apply(this,arguments)||this;return t.resource="",t.tileScale={x:1,y:1},t.tilePosition={x:0,y:0},t}return o(r,e),r.prototype.init=function(e){e&&(this.resource=e.resource,this.tileScale=e.tileScale,this.tilePosition=e.tilePosition)},r.componentName="TilingSprite",c([t.Field(),s("design:type",String)],r.prototype,"resource",void 0),c([t.Field((function(){return p})),s("design:type",Object)],r.prototype,"tileScale",void 0),c([t.Field((function(){return l})),s("design:type",Object)],r.prototype,"tilePosition",void 0),r}(e.Component),d=u,f=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.name="TilingSprite",e.imgs={},e}return o(n,t),n.prototype.init=function(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)},n.prototype.rendererUpdate=function(e){var t=e.transform.size,r=t.width,i=t.height,n=this.imgs[e.id];n&&(n.tilingSprite.width=r,n.tilingSprite.height=i)},n.prototype.componentChanged=function(t){return r=this,n=void 0,c=function(){var r,n,o,c,s;return a(this,(function(a){switch(a.label){case 0:return r=t.gameObject.id,"TilingSprite"!==t.componentName?[3,7]:(n=t.component,t.type!==e.OBSERVER_TYPE.ADD?[3,2]:(s=new i.TilingSprite(null),this.imgs[t.gameObject.id]=s,this.containerManager.getContainer(t.gameObject.id).addChildAt(s.tilingSprite,0),this.setProp(t.gameObject.id,n),o=this.increaseAsyncId(r),[4,e.resource.getResource(n.resource)]));case 1:return c=a.sent().data,this.validateAsyncId(r,o)?c?(s.image=c.image,[3,7]):(console.error("GameObject:"+t.gameObject.name+"'s TilingSprite resource load error"),[2]):[2];case 2:return t.type!==e.OBSERVER_TYPE.CHANGE?[3,6]:"resource"!==t.prop.prop[0]?[3,4]:(o=this.increaseAsyncId(r),[4,e.resource.getResource(n.resource)]);case 3:return c=a.sent().data,this.validateAsyncId(r,o)?c?(this.imgs[t.gameObject.id].image=c.image,[3,5]):(console.error("GameObject:"+t.gameObject.name+"'s TilingSprite resource load error"),[2]):[2];case 4:this.setProp(t.gameObject.id,n),a.label=5;case 5:return[3,7];case 6:t.type===e.OBSERVER_TYPE.REMOVE&&(this.increaseAsyncId(r),s=this.imgs[t.gameObject.id],this.containerManager.getContainer(t.gameObject.id).removeChild(s.tilingSprite),s.tilingSprite.destroy({children:!0}),delete this.imgs[t.gameObject.id]),a.label=7;case 7:return[2]}}))},new((o=void 0)||(o=Promise))((function(e,t){function i(e){try{a(c.next(e))}catch(e){t(e)}}function s(e){try{a(c.throw(e))}catch(e){t(e)}}function a(t){t.done?e(t.value):new o((function(e){e(t.value)})).then(i,s)}a((c=c.apply(r,n||[])).next())}));var r,n,o,c},n.prototype.setProp=function(e,t){this.imgs[e].tilingSprite.tilePosition=t.tilePosition,this.imgs[e].tilingSprite.tileScale=t.tileScale},n=c([e.decorators.componentObserver({TilingSprite:[{prop:["resource"],deep:!1},{prop:["tileScale"],deep:!0},{prop:["tilePosition"],deep:!0}]})],n)}(r.Renderer);exports.TilingSprite=d,exports.TilingSpriteSystem=f;
@@ -1,5 +1,5 @@
1
1
  import { Component, decorators, OBSERVER_TYPE, resource } from '@eva/eva.js';
2
- import { type, step } from '@eva/inspector-decorator';
2
+ import { Field } from '@eva/inspector-decorator';
3
3
  import { RendererSystem, Renderer } from '@eva/plugin-renderer';
4
4
  import { TilingSprite as TilingSprite$4 } from '@eva/renderer-adapter';
5
5
 
@@ -39,6 +39,10 @@ function __decorate(decorators, target, key, desc) {
39
39
  return c > 3 && r && Object.defineProperty(target, key, r), r;
40
40
  }
41
41
 
42
+ function __metadata(metadataKey, metadataValue) {
43
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
44
+ }
45
+
42
46
  function __awaiter(thisArg, _arguments, P, generator) {
43
47
  return new (P || (P = Promise))(function (resolve, reject) {
44
48
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -76,6 +80,32 @@ function __generator(thisArg, body) {
76
80
  }
77
81
  }
78
82
 
83
+ var Vector2 = (function () {
84
+ function Vector2() {
85
+ }
86
+ __decorate([
87
+ Field({ step: 0.1 }),
88
+ __metadata("design:type", Number)
89
+ ], Vector2.prototype, "x", void 0);
90
+ __decorate([
91
+ Field({ step: 0.1 }),
92
+ __metadata("design:type", Number)
93
+ ], Vector2.prototype, "y", void 0);
94
+ return Vector2;
95
+ }());
96
+ var IntVector2 = (function () {
97
+ function IntVector2() {
98
+ }
99
+ __decorate([
100
+ Field({ step: 1 }),
101
+ __metadata("design:type", Number)
102
+ ], IntVector2.prototype, "x", void 0);
103
+ __decorate([
104
+ Field({ step: 1 }),
105
+ __metadata("design:type", Number)
106
+ ], IntVector2.prototype, "y", void 0);
107
+ return IntVector2;
108
+ }());
79
109
  var TilingSprite$2 = (function (_super) {
80
110
  __extends(TilingSprite, _super);
81
111
  function TilingSprite() {
@@ -100,15 +130,16 @@ var TilingSprite$2 = (function (_super) {
100
130
  };
101
131
  TilingSprite.componentName = 'TilingSprite';
102
132
  __decorate([
103
- type('string')
133
+ Field(),
134
+ __metadata("design:type", String)
104
135
  ], TilingSprite.prototype, "resource", void 0);
105
136
  __decorate([
106
- type('vector2'),
107
- step(0.1)
137
+ Field(function () { return Vector2; }),
138
+ __metadata("design:type", Object)
108
139
  ], TilingSprite.prototype, "tileScale", void 0);
109
140
  __decorate([
110
- type('vector2'),
111
- step(1)
141
+ Field(function () { return IntVector2; }),
142
+ __metadata("design:type", Object)
112
143
  ], TilingSprite.prototype, "tilePosition", void 0);
113
144
  return TilingSprite;
114
145
  }(Component));
@@ -136,44 +167,52 @@ var TilingSprite = (function (_super) {
136
167
  };
137
168
  TilingSprite.prototype.componentChanged = function (changed) {
138
169
  return __awaiter(this, void 0, void 0, function () {
139
- var component, sprite_1, data, sprite;
170
+ var gameObjectId, component, sprite, asyncId, data, asyncId, data, sprite;
140
171
  return __generator(this, function (_a) {
141
172
  switch (_a.label) {
142
173
  case 0:
143
- if (!(changed.componentName === 'TilingSprite')) return [3, 6];
174
+ gameObjectId = changed.gameObject.id;
175
+ if (!(changed.componentName === 'TilingSprite')) return [3, 7];
144
176
  component = changed.component;
145
- if (!(changed.type === OBSERVER_TYPE.ADD)) return [3, 1];
146
- sprite_1 = new TilingSprite$4(null);
147
- resource.getResource(component.resource).then(function (_a) {
148
- var data = _a.data;
149
- if (!data) {
150
- console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
151
- return;
152
- }
153
- sprite_1.image = data.image;
154
- });
155
- this.imgs[changed.gameObject.id] = sprite_1;
156
- this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite_1.tilingSprite, 0);
177
+ if (!(changed.type === OBSERVER_TYPE.ADD)) return [3, 2];
178
+ sprite = new TilingSprite$4(null);
179
+ this.imgs[changed.gameObject.id] = sprite;
180
+ this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);
157
181
  this.setProp(changed.gameObject.id, component);
158
- return [3, 6];
159
- case 1:
160
- if (!(changed.type === OBSERVER_TYPE.CHANGE)) return [3, 5];
161
- if (!(changed.prop.prop[0] === 'resource')) return [3, 3];
182
+ asyncId = this.increaseAsyncId(gameObjectId);
162
183
  return [4, resource.getResource(component.resource)];
184
+ case 1:
185
+ data = (_a.sent()).data;
186
+ if (!this.validateAsyncId(gameObjectId, asyncId))
187
+ return [2];
188
+ if (!data) {
189
+ console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
190
+ return [2];
191
+ }
192
+ sprite.image = data.image;
193
+ return [3, 7];
163
194
  case 2:
195
+ if (!(changed.type === OBSERVER_TYPE.CHANGE)) return [3, 6];
196
+ if (!(changed.prop.prop[0] === 'resource')) return [3, 4];
197
+ asyncId = this.increaseAsyncId(gameObjectId);
198
+ return [4, resource.getResource(component.resource)];
199
+ case 3:
164
200
  data = (_a.sent()).data;
201
+ if (!this.validateAsyncId(gameObjectId, asyncId))
202
+ return [2];
165
203
  if (!data) {
166
204
  console.error("GameObject:" + changed.gameObject.name + "'s TilingSprite resource load error");
167
205
  return [2];
168
206
  }
169
207
  this.imgs[changed.gameObject.id].image = data.image;
170
- return [3, 4];
171
- case 3:
208
+ return [3, 5];
209
+ case 4:
172
210
  this.setProp(changed.gameObject.id, component);
173
- _a.label = 4;
174
- case 4: return [3, 6];
175
- case 5:
211
+ _a.label = 5;
212
+ case 5: return [3, 7];
213
+ case 6:
176
214
  if (changed.type === OBSERVER_TYPE.REMOVE) {
215
+ this.increaseAsyncId(gameObjectId);
177
216
  sprite = this.imgs[changed.gameObject.id];
178
217
  this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);
179
218
  sprite.tilingSprite.destroy({
@@ -181,8 +220,8 @@ var TilingSprite = (function (_super) {
181
220
  });
182
221
  delete this.imgs[changed.gameObject.id];
183
222
  }
184
- _a.label = 6;
185
- case 6: return [2];
223
+ _a.label = 7;
224
+ case 7: return [2];
186
225
  }
187
226
  });
188
227
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eva/plugin-renderer-tiling-sprite",
3
- "version": "1.2.6",
3
+ "version": "1.2.7-editor.2",
4
4
  "description": "@eva/plugin-renderer-tiling-sprite",
5
5
  "main": "index.js",
6
6
  "module": "dist/plugin-renderer-tiling-sprite.esm.js",
@@ -18,10 +18,10 @@
18
18
  "license": "MIT",
19
19
  "homepage": "https://eva.js.org",
20
20
  "dependencies": {
21
- "@eva/inspector-decorator": "^0.0.5",
22
- "@eva/plugin-renderer": "1.2.6",
23
- "@eva/renderer-adapter": "1.2.6",
24
- "@eva/eva.js": "1.2.6",
21
+ "@eva/inspector-decorator": "0.1.0-alpha.1",
22
+ "@eva/plugin-renderer": "1.2.7-editor.2",
23
+ "@eva/renderer-adapter": "1.2.7-editor.2",
24
+ "@eva/eva.js": "1.2.7-editor.2",
25
25
  "@types/pixi.js": "^4.8.9"
26
26
  }
27
27
  }