@eva/plugin-renderer-sprite-animation 1.2.2-mini.3 → 1.2.3
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 +9 -5
- 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 +7 -4
- package/package.json +4 -4
|
@@ -243,6 +243,7 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
243
243
|
_this.waitStop = false;
|
|
244
244
|
_this.times = Infinity;
|
|
245
245
|
_this.count = 0;
|
|
246
|
+
_this.complete = false;
|
|
246
247
|
return _this;
|
|
247
248
|
}
|
|
248
249
|
|
|
@@ -253,12 +254,14 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
253
254
|
this.on('loop', function () {
|
|
254
255
|
if (++_this.count >= _this.times) {
|
|
255
256
|
if (_this.forwards) {
|
|
256
|
-
_this.
|
|
257
|
+
_this.gotoAndStop(_this.totalFrames - 1);
|
|
257
258
|
} else {
|
|
258
259
|
_this.animate.stop();
|
|
259
|
-
|
|
260
|
-
_this.emit('complete');
|
|
261
260
|
}
|
|
261
|
+
|
|
262
|
+
_this.complete = true;
|
|
263
|
+
|
|
264
|
+
_this.emit('complete');
|
|
262
265
|
}
|
|
263
266
|
});
|
|
264
267
|
};
|
|
@@ -277,12 +280,13 @@ var _EVA_IIFE_spriteAnimation = function (exports, eva_js, pluginRenderer, rende
|
|
|
277
280
|
if (!this.animate) {
|
|
278
281
|
this.waitPlay = true;
|
|
279
282
|
} else {
|
|
280
|
-
if (
|
|
281
|
-
this.
|
|
283
|
+
if (this.complete) {
|
|
284
|
+
this.gotoAndStop(0);
|
|
282
285
|
}
|
|
283
286
|
|
|
284
287
|
this.animate.play();
|
|
285
288
|
this.count = 0;
|
|
289
|
+
this.complete = false;
|
|
286
290
|
}
|
|
287
291
|
};
|
|
288
292
|
|
|
@@ -1 +1 @@
|
|
|
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}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.
|
|
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 {
|
|
@@ -100,6 +100,7 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
100
100
|
_this.waitStop = false;
|
|
101
101
|
_this.times = Infinity;
|
|
102
102
|
_this.count = 0;
|
|
103
|
+
_this.complete = false;
|
|
103
104
|
return _this;
|
|
104
105
|
}
|
|
105
106
|
SpriteAnimation.prototype.init = function (obj) {
|
|
@@ -108,12 +109,13 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
108
109
|
this.on('loop', function () {
|
|
109
110
|
if (++_this.count >= _this.times) {
|
|
110
111
|
if (_this.forwards) {
|
|
111
|
-
_this.
|
|
112
|
+
_this.gotoAndStop(_this.totalFrames - 1);
|
|
112
113
|
}
|
|
113
114
|
else {
|
|
114
115
|
_this.animate.stop();
|
|
115
|
-
_this.emit('complete');
|
|
116
116
|
}
|
|
117
|
+
_this.complete = true;
|
|
118
|
+
_this.emit('complete');
|
|
117
119
|
}
|
|
118
120
|
});
|
|
119
121
|
};
|
|
@@ -127,11 +129,12 @@ var SpriteAnimation$2 = (function (_super) {
|
|
|
127
129
|
this.waitPlay = true;
|
|
128
130
|
}
|
|
129
131
|
else {
|
|
130
|
-
if (
|
|
131
|
-
this.
|
|
132
|
+
if (this.complete) {
|
|
133
|
+
this.gotoAndStop(0);
|
|
132
134
|
}
|
|
133
135
|
this.animate.play();
|
|
134
136
|
this.count = 0;
|
|
137
|
+
this.complete = false;
|
|
135
138
|
}
|
|
136
139
|
};
|
|
137
140
|
SpriteAnimation.prototype.stop = function () {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eva/plugin-renderer-sprite-animation",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3",
|
|
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.
|
|
23
|
-
"@eva/renderer-adapter": "1.2.
|
|
24
|
-
"@eva/eva.js": "1.2.
|
|
22
|
+
"@eva/plugin-renderer": "1.2.3",
|
|
23
|
+
"@eva/renderer-adapter": "1.2.3",
|
|
24
|
+
"@eva/eva.js": "1.2.3",
|
|
25
25
|
"pixi.js": "^4.8.7"
|
|
26
26
|
}
|
|
27
27
|
}
|