@eva/plugin-renderer-sprite-animation 1.2.2-mini.1 → 1.2.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.
- package/dist/EVA.plugin.renderer.spriteAnimation.js +34 -1
- package/dist/EVA.plugin.renderer.spriteAnimation.min.js +1 -1
- package/dist/miniprogram.js +34 -1
- package/dist/plugin-renderer-sprite-animation.cjs.js +32 -1
- package/dist/plugin-renderer-sprite-animation.cjs.prod.js +1 -1
- package/dist/plugin-renderer-sprite-animation.d.ts +7 -2
- package/dist/plugin-renderer-sprite-animation.esm.js +32 -1
- package/package.json +4 -4
|
@@ -238,10 +238,12 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
238
238
|
_this.resource = '';
|
|
239
239
|
_this.autoPlay = true;
|
|
240
240
|
_this.speed = 100;
|
|
241
|
+
_this.forwards = false;
|
|
241
242
|
_this.waitPlay = false;
|
|
242
243
|
_this.waitStop = false;
|
|
243
244
|
_this.times = Infinity;
|
|
244
245
|
_this.count = 0;
|
|
246
|
+
_this.complete = false;
|
|
245
247
|
return _this;
|
|
246
248
|
}
|
|
247
249
|
|
|
@@ -251,7 +253,13 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
251
253
|
obj && _extends(this, obj);
|
|
252
254
|
this.on('loop', function () {
|
|
253
255
|
if (++_this.count >= _this.times) {
|
|
254
|
-
_this.
|
|
256
|
+
if (_this.forwards) {
|
|
257
|
+
_this.gotoAndStop(_this.totalFrames - 1);
|
|
258
|
+
} else {
|
|
259
|
+
_this.animate.stop();
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
_this.complete = true;
|
|
255
263
|
|
|
256
264
|
_this.emit('complete');
|
|
257
265
|
}
|
|
@@ -272,8 +280,13 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
272
280
|
if (!this.animate) {
|
|
273
281
|
this.waitPlay = true;
|
|
274
282
|
} else {
|
|
283
|
+
if (this.complete) {
|
|
284
|
+
this.gotoAndStop(0);
|
|
285
|
+
}
|
|
286
|
+
|
|
275
287
|
this.animate.play();
|
|
276
288
|
this.count = 0;
|
|
289
|
+
this.complete = false;
|
|
277
290
|
}
|
|
278
291
|
};
|
|
279
292
|
|
|
@@ -314,6 +327,24 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
314
327
|
this.animate.gotoAndStop(frameNumber);
|
|
315
328
|
};
|
|
316
329
|
|
|
330
|
+
Object.defineProperty(SpriteAnimation.prototype, "currentFrame", {
|
|
331
|
+
get: function get() {
|
|
332
|
+
var _a, _b;
|
|
333
|
+
|
|
334
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.currentFrame;
|
|
335
|
+
},
|
|
336
|
+
enumerable: false,
|
|
337
|
+
configurable: true
|
|
338
|
+
});
|
|
339
|
+
Object.defineProperty(SpriteAnimation.prototype, "totalFrames", {
|
|
340
|
+
get: function get() {
|
|
341
|
+
var _a, _b;
|
|
342
|
+
|
|
343
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.totalFrames;
|
|
344
|
+
},
|
|
345
|
+
enumerable: false,
|
|
346
|
+
configurable: true
|
|
347
|
+
});
|
|
317
348
|
SpriteAnimation.componentName = 'SpriteAnimation';
|
|
318
349
|
|
|
319
350
|
__decorate([type('string')], SpriteAnimation.prototype, "resource", void 0);
|
|
@@ -322,6 +353,8 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
322
353
|
|
|
323
354
|
__decorate([type('number'), step(10)], SpriteAnimation.prototype, "speed", void 0);
|
|
324
355
|
|
|
356
|
+
__decorate([type('boolean')], SpriteAnimation.prototype, "forwards", void 0);
|
|
357
|
+
|
|
325
358
|
return SpriteAnimation;
|
|
326
359
|
}(eva_js.Component);
|
|
327
360
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function _extends(){return(_extends=Object.assign||function(
|
|
1
|
+
function _extends(){return(_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var _EVA_IIFE_spriteAnimation=function(e,t,n,r,o){"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 n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function a(e,t){function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function s(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function c(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))}function p(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}function u(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function l(e,t){return e.constructor.IDEProps||(e.constructor.IDEProps={}),e.constructor.IDEProps[t]||(e.constructor.IDEProps[t]={}),e.constructor.IDEProps[t]}function m(e){return function(t,n){var r=l(t,n);r.key=n,r.type=e}}function f(e){return function(t,n){l(t,n).step=e}}var d=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.resource="",t.autoPlay=!0,t.speed=100,t.forwards=!1,t.waitPlay=!1,t.waitStop=!1,t.times=1/0,t.count=0,t.complete=!1,t}return a(t,e),t.prototype.init=function(e){var t=this;e&&_extends(this,e),this.on("loop",(function(){++t.count>=t.times&&(t.forwards?t.gotoAndStop(t.totalFrames-1):t.animate.stop(),t.complete=!0,t.emit("complete"))}))},t.prototype.play=function(e){void 0===e&&(e=1/0),0!==e&&(this.times=e,this.animate?(this.complete&&this.gotoAndStop(0),this.animate.play(),this.count=0,this.complete=!1):this.waitPlay=!0)},t.prototype.stop=function(){this.animate?this.animate.stop():this.waitStop=!0},Object.defineProperty(t.prototype,"animate",{get:function(){return this._animate},set:function(e){this._animate=e,this.waitPlay&&(this.waitPlay=!1,this.play(this.times)),this.waitStop&&(this.waitStop=!1,this.stop())},enumerable:!1,configurable:!0}),t.prototype.gotoAndPlay=function(e){this.animate.gotoAndPlay(e)},t.prototype.gotoAndStop=function(e){this.animate.gotoAndStop(e)},Object.defineProperty(t.prototype,"currentFrame",{get:function(){var e,t;return null===(t=null===(e=this.animate)||void 0===e?void 0:e.animatedSprite)||void 0===t?void 0:t.currentFrame},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"totalFrames",{get:function(){var e,t;return null===(t=null===(e=this.animate)||void 0===e?void 0:e.animatedSprite)||void 0===t?void 0:t.totalFrames},enumerable:!1,configurable:!0}),t.componentName="SpriteAnimation",s([m("string")],t.prototype,"resource",void 0),s([m("boolean")],t.prototype,"autoPlay",void 0),s([m("number"),f(10)],t.prototype,"speed",void 0),s([m("boolean")],t.prototype,"forwards",void 0),t}(t.Component),h="_s|r|c_";t.resource.registerInstance(t.RESOURCE_TYPE.SPRITE_ANIMATION,(function(e){var t=e.name,n=e.data;return new Promise((function(e){var r,i,a=n.json,s=o.BaseTexture.from(n.image),c=a.frames||{},p=a.animations||{},l={};for(var m in c){l[t+h+m]=c[m]}for(var m in p){var f=[];if(p[m]&&p[m].length>=0)try{for(var d=(r=void 0,u(p[m])),y=d.next();!y.done;y=d.next()){var v=y.value,g=t+h+v;f.push(g)}}catch(e){r={error:e}}finally{try{y&&!y.done&&(i=d.return)&&i.call(d)}finally{if(r)throw r.error}}p[m]=f}a.frames=l;var b=new o.Spritesheet(s,a);b.parse((function(){var t=b.textures,n=[];for(var r in t)n.push(t[r]);e(n)}))}))})),t.resource.registerDestroy(t.RESOURCE_TYPE.SPRITE_ANIMATION,(function(e){var t,n,r=e.instance;if(r)try{for(var o=u(r),i=o.next();!i.done;i=o.next()){i.value.destroy(!0)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}}));var y=function(e){function o(){var t=null!==e&&e.apply(this,arguments)||this;return t.name="SpriteAnimation",t.animates={},t.autoPlay={},t}return a(o,e),o.prototype.init=function(){this.renderSystem=this.game.getSystem(n.RendererSystem),this.renderSystem.rendererManager.register(this)},o.prototype.rendererUpdate=function(e){var t=e.transform.size,n=t.width,r=t.height;this.animates[e.id]&&(this.animates[e.id].animatedSprite.width=n,this.animates[e.id].animatedSprite.height=r)},o.prototype.componentChanged=function(e){return c(this,void 0,void 0,(function(){var n,r,o;return p(this,(function(i){switch(i.label){case 0:return"SpriteAnimation"!==e.componentName?[3,7]:(n=e.component,this.autoPlay[e.gameObject.id]=n.autoPlay,e.type!==t.OBSERVER_TYPE.ADD?[3,2]:[4,t.resource.getResource(n.resource)]);case 1:return(r=i.sent().instance)||console.error("GameObject:"+e.gameObject.name+"'s Img resource load error"),this.add({frames:r,id:e.gameObject.id,component:n}),[3,7];case 2:return e.type!==t.OBSERVER_TYPE.CHANGE?[3,6]:e.prop&&"speed"===e.prop.prop[0]?(this.animates[e.gameObject.id].speed=1e3/60/n.speed,[3,5]):[3,3];case 3:return[4,t.resource.getResource(n.resource)];case 4:(o=i.sent().instance)||console.error("GameObject:"+e.gameObject.name+"'s Img resource load error"),this.change({frames:o,id:e.gameObject.id,component:n}),i.label=5;case 5:return[3,7];case 6:e.type===t.OBSERVER_TYPE.REMOVE&&this.remove(e.gameObject.id),i.label=7;case 7:return[2]}}))}))},o.prototype.add=function(e){var t=e.frames,n=e.id,o=e.component,i=new r.SpriteAnimation({frames:t});this.animates[n]=i,this.containerManager.getContainer(n).addChildAt(i.animatedSprite,0),i.animatedSprite.onComplete=function(){o.emit("complete")},i.animatedSprite.onFrameChange=function(){o.emit("frameChange")},i.animatedSprite.onLoop=function(){o.emit("loop")},o.animate=this.animates[n],this.animates[n].speed=1e3/60/o.speed,this.autoPlay[n]&&i.animatedSprite.play()},o.prototype.change=function(e){var t=e.frames,n=e.id,r=e.component;this.remove(n,!0),this.add({frames:t,id:n,component:r})},o.prototype.remove=function(e,t){var n=this.animates[e];this.autoPlay[e]=n.animatedSprite.playing,this.containerManager.getContainer(e).removeChild(n.animatedSprite),n.animatedSprite.destroy({children:!0}),delete this.animates[e],t||delete this.autoPlay[e]},o.systemName="SpriteAnimation",o=s([t.decorators.componentObserver({SpriteAnimation:["speed","resource"]})],o)}(n.Renderer);return e.SpriteAnimation=d,e.SpriteAnimationSystem=y,Object.defineProperty(e,"__esModule",{value:!0}),e}({},EVA,EVA.plugin.renderer,EVA.rendererAdapter,PIXI);
|
package/dist/miniprogram.js
CHANGED
|
@@ -16,10 +16,12 @@ var SpriteAnimation$2 = function (_super) {
|
|
|
16
16
|
_this.resource = '';
|
|
17
17
|
_this.autoPlay = true;
|
|
18
18
|
_this.speed = 100;
|
|
19
|
+
_this.forwards = false;
|
|
19
20
|
_this.waitPlay = false;
|
|
20
21
|
_this.waitStop = false;
|
|
21
22
|
_this.times = Infinity;
|
|
22
23
|
_this.count = 0;
|
|
24
|
+
_this.complete = false;
|
|
23
25
|
return _this;
|
|
24
26
|
}
|
|
25
27
|
|
|
@@ -29,7 +31,13 @@ var SpriteAnimation$2 = function (_super) {
|
|
|
29
31
|
obj && _extends(this, obj);
|
|
30
32
|
this.on('loop', function () {
|
|
31
33
|
if (++_this.count >= _this.times) {
|
|
32
|
-
_this.
|
|
34
|
+
if (_this.forwards) {
|
|
35
|
+
_this.gotoAndStop(_this.totalFrames - 1);
|
|
36
|
+
} else {
|
|
37
|
+
_this.animate.stop();
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
_this.complete = true;
|
|
33
41
|
|
|
34
42
|
_this.emit('complete');
|
|
35
43
|
}
|
|
@@ -50,8 +58,13 @@ var SpriteAnimation$2 = function (_super) {
|
|
|
50
58
|
if (!this.animate) {
|
|
51
59
|
this.waitPlay = true;
|
|
52
60
|
} else {
|
|
61
|
+
if (this.complete) {
|
|
62
|
+
this.gotoAndStop(0);
|
|
63
|
+
}
|
|
64
|
+
|
|
53
65
|
this.animate.play();
|
|
54
66
|
this.count = 0;
|
|
67
|
+
this.complete = false;
|
|
55
68
|
}
|
|
56
69
|
};
|
|
57
70
|
|
|
@@ -92,6 +105,24 @@ var SpriteAnimation$2 = function (_super) {
|
|
|
92
105
|
this.animate.gotoAndStop(frameNumber);
|
|
93
106
|
};
|
|
94
107
|
|
|
108
|
+
Object.defineProperty(SpriteAnimation.prototype, "currentFrame", {
|
|
109
|
+
get: function get() {
|
|
110
|
+
var _a, _b;
|
|
111
|
+
|
|
112
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.currentFrame;
|
|
113
|
+
},
|
|
114
|
+
enumerable: false,
|
|
115
|
+
configurable: true
|
|
116
|
+
});
|
|
117
|
+
Object.defineProperty(SpriteAnimation.prototype, "totalFrames", {
|
|
118
|
+
get: function get() {
|
|
119
|
+
var _a, _b;
|
|
120
|
+
|
|
121
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.totalFrames;
|
|
122
|
+
},
|
|
123
|
+
enumerable: false,
|
|
124
|
+
configurable: true
|
|
125
|
+
});
|
|
95
126
|
SpriteAnimation.componentName = 'SpriteAnimation';
|
|
96
127
|
|
|
97
128
|
__decorate([type('string')], SpriteAnimation.prototype, "resource", void 0);
|
|
@@ -100,6 +131,8 @@ var SpriteAnimation$2 = function (_super) {
|
|
|
100
131
|
|
|
101
132
|
__decorate([type('number'), step(10)], SpriteAnimation.prototype, "speed", void 0);
|
|
102
133
|
|
|
134
|
+
__decorate([type('boolean')], SpriteAnimation.prototype, "forwards", void 0);
|
|
135
|
+
|
|
103
136
|
return SpriteAnimation;
|
|
104
137
|
}(Component);
|
|
105
138
|
|
|
@@ -99,10 +99,12 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
99
99
|
_this.resource = '';
|
|
100
100
|
_this.autoPlay = true;
|
|
101
101
|
_this.speed = 100;
|
|
102
|
+
_this.forwards = false;
|
|
102
103
|
_this.waitPlay = false;
|
|
103
104
|
_this.waitStop = false;
|
|
104
105
|
_this.times = Infinity;
|
|
105
106
|
_this.count = 0;
|
|
107
|
+
_this.complete = false;
|
|
106
108
|
return _this;
|
|
107
109
|
}
|
|
108
110
|
SpriteAnimation.prototype.init = function (obj) {
|
|
@@ -110,7 +112,13 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
110
112
|
obj && Object.assign(this, obj);
|
|
111
113
|
this.on('loop', function () {
|
|
112
114
|
if (++_this.count >= _this.times) {
|
|
113
|
-
_this.
|
|
115
|
+
if (_this.forwards) {
|
|
116
|
+
_this.gotoAndStop(_this.totalFrames - 1);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
_this.animate.stop();
|
|
120
|
+
}
|
|
121
|
+
_this.complete = true;
|
|
114
122
|
_this.emit('complete');
|
|
115
123
|
}
|
|
116
124
|
});
|
|
@@ -125,8 +133,12 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
125
133
|
this.waitPlay = true;
|
|
126
134
|
}
|
|
127
135
|
else {
|
|
136
|
+
if (this.complete) {
|
|
137
|
+
this.gotoAndStop(0);
|
|
138
|
+
}
|
|
128
139
|
this.animate.play();
|
|
129
140
|
this.count = 0;
|
|
141
|
+
this.complete = false;
|
|
130
142
|
}
|
|
131
143
|
};
|
|
132
144
|
SpriteAnimation.prototype.stop = function () {
|
|
@@ -161,6 +173,22 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
161
173
|
SpriteAnimation.prototype.gotoAndStop = function (frameNumber) {
|
|
162
174
|
this.animate.gotoAndStop(frameNumber);
|
|
163
175
|
};
|
|
176
|
+
Object.defineProperty(SpriteAnimation.prototype, "currentFrame", {
|
|
177
|
+
get: function () {
|
|
178
|
+
var _a, _b;
|
|
179
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.currentFrame;
|
|
180
|
+
},
|
|
181
|
+
enumerable: false,
|
|
182
|
+
configurable: true
|
|
183
|
+
});
|
|
184
|
+
Object.defineProperty(SpriteAnimation.prototype, "totalFrames", {
|
|
185
|
+
get: function () {
|
|
186
|
+
var _a, _b;
|
|
187
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.totalFrames;
|
|
188
|
+
},
|
|
189
|
+
enumerable: false,
|
|
190
|
+
configurable: true
|
|
191
|
+
});
|
|
164
192
|
SpriteAnimation.componentName = 'SpriteAnimation';
|
|
165
193
|
__decorate([
|
|
166
194
|
inspectorDecorator.type('string')
|
|
@@ -172,6 +200,9 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
172
200
|
inspectorDecorator.type('number'),
|
|
173
201
|
inspectorDecorator.step(10)
|
|
174
202
|
], SpriteAnimation.prototype, "speed", void 0);
|
|
203
|
+
__decorate([
|
|
204
|
+
inspectorDecorator.type('boolean')
|
|
205
|
+
], SpriteAnimation.prototype, "forwards", void 0);
|
|
175
206
|
return SpriteAnimation;
|
|
176
207
|
}(eva_js.Component));
|
|
177
208
|
var SpriteAnimation$3 = SpriteAnimation$2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),t=require("@eva/inspector-decorator"),
|
|
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"),n=require("@eva/renderer-adapter"),o=require("pixi.js"),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 a(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function s(e,t,r,n){var o,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,r,a):o(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a}function c(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}function p(e){var t="function"==typeof Symbol&&e[Symbol.iterator],r=0;return t?t.call(e):{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}}var u=function(e){function r(){var t=null!==e&&e.apply(this,arguments)||this;return t.resource="",t.autoPlay=!0,t.speed=100,t.forwards=!1,t.waitPlay=!1,t.waitStop=!1,t.times=1/0,t.count=0,t.complete=!1,t}return a(r,e),r.prototype.init=function(e){var t=this;e&&Object.assign(this,e),this.on("loop",(function(){++t.count>=t.times&&(t.forwards?t.gotoAndStop(t.totalFrames-1):t.animate.stop(),t.complete=!0,t.emit("complete"))}))},r.prototype.play=function(e){void 0===e&&(e=1/0),0!==e&&(this.times=e,this.animate?(this.complete&&this.gotoAndStop(0),this.animate.play(),this.count=0,this.complete=!1):this.waitPlay=!0)},r.prototype.stop=function(){this.animate?this.animate.stop():this.waitStop=!0},Object.defineProperty(r.prototype,"animate",{get:function(){return this._animate},set:function(e){this._animate=e,this.waitPlay&&(this.waitPlay=!1,this.play(this.times)),this.waitStop&&(this.waitStop=!1,this.stop())},enumerable:!1,configurable:!0}),r.prototype.gotoAndPlay=function(e){this.animate.gotoAndPlay(e)},r.prototype.gotoAndStop=function(e){this.animate.gotoAndStop(e)},Object.defineProperty(r.prototype,"currentFrame",{get:function(){var e,t;return null===(t=null===(e=this.animate)||void 0===e?void 0:e.animatedSprite)||void 0===t?void 0:t.currentFrame},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"totalFrames",{get:function(){var e,t;return null===(t=null===(e=this.animate)||void 0===e?void 0:e.animatedSprite)||void 0===t?void 0:t.totalFrames},enumerable:!1,configurable:!0}),r.componentName="SpriteAnimation",s([t.type("string")],r.prototype,"resource",void 0),s([t.type("boolean")],r.prototype,"autoPlay",void 0),s([t.type("number"),t.step(10)],r.prototype,"speed",void 0),s([t.type("boolean")],r.prototype,"forwards",void 0),r}(e.Component);e.resource.registerInstance(e.RESOURCE_TYPE.SPRITE_ANIMATION,(function(e){var t=e.name,r=e.data;return new Promise((function(e){var n,i,a=r.json,s=o.BaseTexture.from(r.image),c=a.frames||{},u=a.animations||{},l={};for(var m in c){l[t+"_s|r|c_"+m]=c[m]}for(var m in u){var d=[];if(u[m]&&u[m].length>=0)try{for(var f=(n=void 0,p(u[m])),h=f.next();!h.done;h=f.next()){var y=h.value,v=t+"_s|r|c_"+y;d.push(v)}}catch(e){n={error:e}}finally{try{h&&!h.done&&(i=f.return)&&i.call(f)}finally{if(n)throw n.error}}u[m]=d}a.frames=l;var g=new o.Spritesheet(s,a);g.parse((function(){var t=g.textures,r=[];for(var n in t)r.push(t[n]);e(r)}))}))})),e.resource.registerDestroy(e.RESOURCE_TYPE.SPRITE_ANIMATION,(function(e){var t,r,n=e.instance;if(n)try{for(var o=p(n),i=o.next();!i.done;i=o.next()){i.value.destroy(!0)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}}));var l=function(t){function o(){var e=null!==t&&t.apply(this,arguments)||this;return e.name="SpriteAnimation",e.animates={},e.autoPlay={},e}return a(o,t),o.prototype.init=function(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)},o.prototype.rendererUpdate=function(e){var t=e.transform.size,r=t.width,n=t.height;this.animates[e.id]&&(this.animates[e.id].animatedSprite.width=r,this.animates[e.id].animatedSprite.height=n)},o.prototype.componentChanged=function(t){return r=this,n=void 0,i=function(){var r,n,o;return c(this,(function(i){switch(i.label){case 0:return"SpriteAnimation"!==t.componentName?[3,7]:(r=t.component,this.autoPlay[t.gameObject.id]=r.autoPlay,t.type!==e.OBSERVER_TYPE.ADD?[3,2]:[4,e.resource.getResource(r.resource)]);case 1:return(n=i.sent().instance)||console.error("GameObject:"+t.gameObject.name+"'s Img resource load error"),this.add({frames:n,id:t.gameObject.id,component:r}),[3,7];case 2:return t.type!==e.OBSERVER_TYPE.CHANGE?[3,6]:t.prop&&"speed"===t.prop.prop[0]?(this.animates[t.gameObject.id].speed=1e3/60/r.speed,[3,5]):[3,3];case 3:return[4,e.resource.getResource(r.resource)];case 4:(o=i.sent().instance)||console.error("GameObject:"+t.gameObject.name+"'s Img resource load error"),this.change({frames:o,id:t.gameObject.id,component:r}),i.label=5;case 5:return[3,7];case 6:t.type===e.OBSERVER_TYPE.REMOVE&&this.remove(t.gameObject.id),i.label=7;case 7:return[2]}}))},new((o=void 0)||(o=Promise))((function(e,t){function a(e){try{c(i.next(e))}catch(e){t(e)}}function s(e){try{c(i.throw(e))}catch(e){t(e)}}function c(t){t.done?e(t.value):new o((function(e){e(t.value)})).then(a,s)}c((i=i.apply(r,n||[])).next())}));var r,n,o,i},o.prototype.add=function(e){var t=e.frames,r=e.id,o=e.component,i=new n.SpriteAnimation({frames:t});this.animates[r]=i,this.containerManager.getContainer(r).addChildAt(i.animatedSprite,0),i.animatedSprite.onComplete=function(){o.emit("complete")},i.animatedSprite.onFrameChange=function(){o.emit("frameChange")},i.animatedSprite.onLoop=function(){o.emit("loop")},o.animate=this.animates[r],this.animates[r].speed=1e3/60/o.speed,this.autoPlay[r]&&i.animatedSprite.play()},o.prototype.change=function(e){var t=e.frames,r=e.id,n=e.component;this.remove(r,!0),this.add({frames:t,id:r,component:n})},o.prototype.remove=function(e,t){var r=this.animates[e];this.autoPlay[e]=r.animatedSprite.playing,this.containerManager.getContainer(e).removeChild(r.animatedSprite),r.animatedSprite.destroy({children:!0}),delete this.animates[e],t||delete this.autoPlay[e]},o.systemName="SpriteAnimation",o=s([e.decorators.componentObserver({SpriteAnimation:["speed","resource"]})],o)}(r.Renderer);exports.SpriteAnimation=u,exports.SpriteAnimationSystem=l;
|
|
@@ -12,11 +12,13 @@ export declare class SpriteAnimation extends Component<SpriteAnimationParams> {
|
|
|
12
12
|
resource: string;
|
|
13
13
|
autoPlay: boolean;
|
|
14
14
|
speed: number;
|
|
15
|
+
forwards: boolean;
|
|
15
16
|
_animate: SpriteAnimation_2;
|
|
16
17
|
private waitPlay;
|
|
17
18
|
private waitStop;
|
|
18
19
|
private times;
|
|
19
20
|
private count;
|
|
21
|
+
private complete;
|
|
20
22
|
init(obj?: SpriteAnimationParams): void;
|
|
21
23
|
play(times?: number): void;
|
|
22
24
|
stop(): void;
|
|
@@ -24,12 +26,15 @@ export declare class SpriteAnimation extends Component<SpriteAnimationParams> {
|
|
|
24
26
|
get animate(): SpriteAnimation_2;
|
|
25
27
|
gotoAndPlay(frameNumber: any): void;
|
|
26
28
|
gotoAndStop(frameNumber: any): void;
|
|
29
|
+
get currentFrame(): number;
|
|
30
|
+
get totalFrames(): number;
|
|
27
31
|
}
|
|
28
32
|
|
|
29
33
|
export declare interface SpriteAnimationParams {
|
|
30
34
|
resource: string;
|
|
31
|
-
autoPlay
|
|
32
|
-
speed
|
|
35
|
+
autoPlay?: boolean;
|
|
36
|
+
speed?: number;
|
|
37
|
+
forwards?: boolean;
|
|
33
38
|
}
|
|
34
39
|
|
|
35
40
|
export declare class SpriteAnimationSystem extends Renderer {
|
|
@@ -95,10 +95,12 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
95
95
|
_this.resource = '';
|
|
96
96
|
_this.autoPlay = true;
|
|
97
97
|
_this.speed = 100;
|
|
98
|
+
_this.forwards = false;
|
|
98
99
|
_this.waitPlay = false;
|
|
99
100
|
_this.waitStop = false;
|
|
100
101
|
_this.times = Infinity;
|
|
101
102
|
_this.count = 0;
|
|
103
|
+
_this.complete = false;
|
|
102
104
|
return _this;
|
|
103
105
|
}
|
|
104
106
|
SpriteAnimation.prototype.init = function (obj) {
|
|
@@ -106,7 +108,13 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
106
108
|
obj && Object.assign(this, obj);
|
|
107
109
|
this.on('loop', function () {
|
|
108
110
|
if (++_this.count >= _this.times) {
|
|
109
|
-
_this.
|
|
111
|
+
if (_this.forwards) {
|
|
112
|
+
_this.gotoAndStop(_this.totalFrames - 1);
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
_this.animate.stop();
|
|
116
|
+
}
|
|
117
|
+
_this.complete = true;
|
|
110
118
|
_this.emit('complete');
|
|
111
119
|
}
|
|
112
120
|
});
|
|
@@ -121,8 +129,12 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
121
129
|
this.waitPlay = true;
|
|
122
130
|
}
|
|
123
131
|
else {
|
|
132
|
+
if (this.complete) {
|
|
133
|
+
this.gotoAndStop(0);
|
|
134
|
+
}
|
|
124
135
|
this.animate.play();
|
|
125
136
|
this.count = 0;
|
|
137
|
+
this.complete = false;
|
|
126
138
|
}
|
|
127
139
|
};
|
|
128
140
|
SpriteAnimation.prototype.stop = function () {
|
|
@@ -157,6 +169,22 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
157
169
|
SpriteAnimation.prototype.gotoAndStop = function (frameNumber) {
|
|
158
170
|
this.animate.gotoAndStop(frameNumber);
|
|
159
171
|
};
|
|
172
|
+
Object.defineProperty(SpriteAnimation.prototype, "currentFrame", {
|
|
173
|
+
get: function () {
|
|
174
|
+
var _a, _b;
|
|
175
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.currentFrame;
|
|
176
|
+
},
|
|
177
|
+
enumerable: false,
|
|
178
|
+
configurable: true
|
|
179
|
+
});
|
|
180
|
+
Object.defineProperty(SpriteAnimation.prototype, "totalFrames", {
|
|
181
|
+
get: function () {
|
|
182
|
+
var _a, _b;
|
|
183
|
+
return (_b = (_a = this.animate) === null || _a === void 0 ? void 0 : _a.animatedSprite) === null || _b === void 0 ? void 0 : _b.totalFrames;
|
|
184
|
+
},
|
|
185
|
+
enumerable: false,
|
|
186
|
+
configurable: true
|
|
187
|
+
});
|
|
160
188
|
SpriteAnimation.componentName = 'SpriteAnimation';
|
|
161
189
|
__decorate([
|
|
162
190
|
type('string')
|
|
@@ -168,6 +196,9 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
168
196
|
type('number'),
|
|
169
197
|
step(10)
|
|
170
198
|
], SpriteAnimation.prototype, "speed", void 0);
|
|
199
|
+
__decorate([
|
|
200
|
+
type('boolean')
|
|
201
|
+
], SpriteAnimation.prototype, "forwards", void 0);
|
|
171
202
|
return SpriteAnimation;
|
|
172
203
|
}(Component));
|
|
173
204
|
var SpriteAnimation$3 = SpriteAnimation$2;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eva/plugin-renderer-sprite-animation",
|
|
3
|
-
"version": "1.2.2
|
|
3
|
+
"version": "1.2.2",
|
|
4
4
|
"description": "@eva/plugin-renderer-sprite-animation",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "dist/plugin-renderer-sprite-animation.esm.js",
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
"homepage": "https://eva.js.org",
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"@eva/inspector-decorator": "^0.0.5",
|
|
22
|
-
"@eva/plugin-renderer": "1.2.2
|
|
23
|
-
"@eva/renderer-adapter": "1.2.2
|
|
24
|
-
"@eva/eva.js": "1.2.2
|
|
22
|
+
"@eva/plugin-renderer": "1.2.2",
|
|
23
|
+
"@eva/renderer-adapter": "1.2.2",
|
|
24
|
+
"@eva/eva.js": "1.2.2",
|
|
25
25
|
"pixi.js": "^4.8.7"
|
|
26
26
|
}
|
|
27
27
|
}
|