mirror of
https://github.com/Cola-Echo/memory-manager-concurrent.git
synced 2026-06-06 15:55:52 +00:00
2 lines
62 KiB
JavaScript
2 lines
62 KiB
JavaScript
!function(t,i,e){var a=(e.un,e.uns,e["static"]),s=e["class"],r=e.getset,n=e.__newvec,h=laya.utils.Browser,l=laya.utils.Byte,o=laya.events.Event,u=laya.events.EventDispatcher,c=laya.display.Graphics,p=laya.utils.Handler,_=laya.net.Loader,d=laya.maths.MathUtil,f=laya.maths.Matrix,m=laya.renders.Render,x=laya.resource.Resource,y=laya.utils.RunDriver,g=laya.display.Sprite,v=laya.utils.Stat,M=laya.resource.Texture,D=laya.net.URL,I=(function(){function t(){}return s(t,"laya.ani.AnimationState"),t.stopped=0,t.paused=1,t.playing=2,t}(),function(){function t(){this.name=null,this.root=null,this.parentBone=null,this.length=10,this.transform=null,this.inheritScale=!0,this.inheritRotation=!0,this.rotation=NaN,this.resultRotation=NaN,this._tempMatrix=null,this._sprite=null,this.resultTransform=new E,this.resultMatrix=new f,this._children=[]}s(t,"laya.ani.bone.Bone");var i=t.prototype;return i.setTempMatrix=function(t){this._tempMatrix=t;var i,e=0,a=0;for(e=0,a=this._children.length;a>e;e++)i=this._children[e],i.setTempMatrix(this._tempMatrix)},i.update=function(t){this.rotation=this.transform.skX;var i;if(t)i=this.resultTransform.getMatrix(),f.mul(i,t,this.resultMatrix),this.resultRotation=this.rotation;else if(this.resultRotation=this.rotation+this.parentBone.resultRotation,this.parentBone)if(this.inheritRotation&&this.inheritScale)i=this.resultTransform.getMatrix(),f.mul(i,this.parentBone.resultMatrix,this.resultMatrix);else{var e=this.parentBone,a=NaN,s=NaN,r=NaN,n=this.parentBone.resultMatrix,h=n.a*this.transform.x+n.c*this.transform.y+n.tx,l=n.b*this.transform.x+n.d*this.transform.y+n.ty,o=new f;this.inheritRotation?(a=Math.atan2(e.resultMatrix.b,e.resultMatrix.a),s=Math.cos(a),r=Math.sin(a),o.setTo(s,r,-r,s,0,0),f.mul(this._tempMatrix,o,f.TEMP),f.TEMP.copyTo(o),i=this.resultTransform.getMatrix(),f.mul(i,o,this.resultMatrix),this.resultMatrix.tx=h,this.resultMatrix.ty=l):this.inheritScale?(i=this.resultTransform.getMatrix(),f.TEMP.identity(),f.TEMP.d=-1,f.mul(i,f.TEMP,this.resultMatrix),this.resultMatrix.tx=h,this.resultMatrix.ty=l):(i=this.resultTransform.getMatrix(),f.TEMP.identity(),f.TEMP.d=-1,f.mul(i,f.TEMP,this.resultMatrix),this.resultMatrix.tx=h,this.resultMatrix.ty=l)}else i=this.resultTransform.getMatrix(),i.copyTo(this.resultMatrix);var u,c=0,p=0;for(c=0,p=this._children.length;p>c;c++)u=this._children[c],u.update()},i.updateChild=function(){var t,i=0,e=0;for(i=0,e=this._children.length;e>i;i++)t=this._children[i],t.update()},i.updateDraw=function(t,i){this._sprite?(this._sprite.x=t+this.resultMatrix.tx,this._sprite.y=i+this.resultMatrix.ty):(this._sprite=new g,this._sprite.graphics.drawCircle(0,0,5,"#ff0000"),this._sprite.graphics.fillText(this.name,0,0,"20px Arial","#00ff00","center"),e.stage.addChild(this._sprite),this._sprite.x=t+this.resultMatrix.tx,this._sprite.y=i+this.resultMatrix.ty);var a,s=0,r=0;for(s=0,r=this._children.length;r>s;s++)a=this._children[s],a.updateDraw(t,i)},i.addChild=function(t){this._children.push(t),t.parentBone=this},i.findBone=function(t){if(this.name==t)return this;var i,e,a=0,s=0;for(a=0,s=this._children.length;s>a;a++)if(i=this._children[a],e=i.findBone(t))return e;return null},i.localToWorld=function(t){var i=t[0],e=t[1];t[0]=i*this.resultMatrix.a+e*this.resultMatrix.c+this.resultMatrix.tx,t[1]=i*this.resultMatrix.b+e*this.resultMatrix.d+this.resultMatrix.ty},t}()),b=function(){function t(){this.name=null,this.parent=null,this.attachmentName=null,this.srcDisplayIndex=-1,this.type="src",this.templet=null,this.currSlotData=null,this.currTexture=null,this.currDisplayData=null,this.displayIndex=-1,this._diyTexture=null,this._parentMatrix=null,this._resultMatrix=null,this._skinSprite=null,this.deformData=null}s(t,"laya.ani.bone.BoneSlot");var i=t.prototype;return i.showSlotData=function(t){this.currSlotData=t,this.displayIndex=this.srcDisplayIndex,this.currDisplayData=null,this.currTexture=null},i.showDisplayByName=function(t){this.currSlotData&&this.showDisplayByIndex(this.currSlotData.getDisplayByName(t))},i.showDisplayByIndex=function(t){if(this.currSlotData&&t>-1&&t<this.currSlotData.displayArr.length){if(this.displayIndex=t,this.currDisplayData=this.currSlotData.displayArr[t],this.currDisplayData){var i=this.currDisplayData.name;this.currTexture=this.templet.getTexture(i),this.currTexture&&m.isWebGL&&0==this.currDisplayData.type&&this.currDisplayData.uvs&&(this.currTexture=this.currDisplayData.createTexture(this.currTexture))}}else this.displayIndex=-1,this.currDisplayData=null,this.currTexture=null},i.replaceSkin=function(t){this._diyTexture=t},i.setParentMatrix=function(t){this._parentMatrix=t},i.draw=function(t,i,e,a){if(void 0===e&&(e=!1),void 0===a&&(a=1),(null!=this._diyTexture||null!=this.currTexture)&&null!=this.currDisplayData||this.currDisplayData&&3==this.currDisplayData.type){var s=this.currTexture;this._diyTexture&&(s=this._diyTexture);var r;switch(this.currDisplayData.type){case 0:if(t){var n=this.getDisplayMatrix();if(this._parentMatrix){var h=!1;if(n){f.mul(n,this._parentMatrix,f.TEMP);var l;if(e?(null==this._resultMatrix&&(this._resultMatrix=new f),l=this._resultMatrix):l=new f,!m.isWebGL&&this.currDisplayData.uvs||m.isWebGL&&this._diyTexture&&this.currDisplayData.uvs){var o=new f(1,0,0,1);this.currDisplayData.uvs[1]>this.currDisplayData.uvs[5]&&(o.d=-1),this.currDisplayData.uvs[0]>this.currDisplayData.uvs[4]&&this.currDisplayData.uvs[1]>this.currDisplayData.uvs[5]&&(h=!0,o.rotate(-Math.PI/2)),f.mul(o,f.TEMP,l)}else f.TEMP.copyTo(l);h?t.drawTexture(s,-this.currDisplayData.height/2,-this.currDisplayData.width/2,this.currDisplayData.height,this.currDisplayData.width,l):t.drawTexture(s,-this.currDisplayData.width/2,-this.currDisplayData.height/2,this.currDisplayData.width,this.currDisplayData.height,l)}}}break;case 1:if(e?(null==this._skinSprite&&(this._skinSprite=y.skinAniSprite()),r=this._skinSprite):r=y.skinAniSprite(),null==r)return;var u=[],c=[],p=1,_=1,d=1,x=1;if(null==this.currDisplayData.bones){var g=this.currDisplayData.weights;this.deformData&&(g=this.deformData);for(var v=0,M=0;v<g.length&&M<this.currDisplayData.uvs.length;){var D=g[v++],I=g[v++];u.push(D,I,this.currDisplayData.uvs[M++],this.currDisplayData.uvs[M++],p,_,d,x)}var b=this.currDisplayData.triangles.length/3;for(v=0;b>v;v++)c.push(this.currDisplayData.triangles[3*v]),c.push(this.currDisplayData.triangles[3*v+1]),c.push(this.currDisplayData.triangles[3*v+2]);r.init(this.currTexture,u,c);var N=this.getDisplayMatrix();if(this._parentMatrix&&N){f.mul(N,this._parentMatrix,f.TEMP);var A;e?(null==this._resultMatrix&&(this._resultMatrix=new f),A=this._resultMatrix):A=new f,f.TEMP.copyTo(A),r.transform=A}}else this.skinMesh(i,r,a);t.drawSkin(r);break;case 2:if(e?(null==this._skinSprite&&(this._skinSprite=y.skinAniSprite()),r=this._skinSprite):r=y.skinAniSprite(),null==r)return;this.skinMesh(i,r,a),t.drawSkin(r);break;case 3:}}},i.skinMesh=function(t,i,e){var a,s=this.currDisplayData.bones,r=this.currDisplayData.uvs,n=this.currDisplayData.weights,h=this.currDisplayData.triangles,l=[],o=[],u=0,c=0,p=0,_=NaN,d=NaN,f=0,m=0,x=[],y=0,g=0,v=0,M=1,D=1,I=1,b=e;if(this.deformData&&this.deformData.length>0){var N=0;for(y=0,v=s.length;v>y;){for(p=s[y++]+y,u=0,c=0;p>y;y++)a=t[s[y]],_=n[f]+this.deformData[N++],d=n[f+1]+this.deformData[N++],m=n[f+2],u+=(_*a.a+d*a.c+a.tx)*m,c+=(_*a.b+d*a.d+a.ty)*m,f+=3;x.push(u,c)}}else for(y=0,v=s.length;v>y;){for(p=s[y++]+y,u=0,c=0;p>y;y++)a=t[s[y]],_=n[f],d=n[f+1],m=n[f+2],u+=(_*a.a+d*a.c+a.tx)*m,c+=(_*a.b+d*a.d+a.ty)*m,f+=3;x.push(u,c)}for(y=0,g=0;y<x.length&&g<r.length;)u=x[y++],c=x[y++],l.push(u,c,r[g++],r[g++],M,D,I,b);for(y=0,v=h.length;v>y;y++)o.push(h[y]);i.init(this.currTexture,l,o)},i.drawBonePoint=function(t){t&&this._parentMatrix&&t.drawCircle(this._parentMatrix.tx,this._parentMatrix.ty,5,"#ff0000")},i.getDisplayMatrix=function(){return this.currDisplayData?this.currDisplayData.transform.getMatrix():null},i.getMatrix=function(){return this._resultMatrix},i.copy=function(){var i=new t;return i.type="copy",i.name=this.name,i.attachmentName=this.attachmentName,i.srcDisplayIndex=this.srcDisplayIndex,i.parent=this.parent,i.displayIndex=this.displayIndex,i.templet=this.templet,i.currSlotData=this.currSlotData,i.currTexture=this.currTexture,i.currDisplayData=this.currDisplayData,i},t}(),N=function(){function t(){this.skinName=null,this.deformSlotDataList=[]}return s(t,"laya.ani.bone.DeformAniData"),t}(),A=function(){function t(){this.deformSlotDisplayList=[]}return s(t,"laya.ani.bone.DeformSlotData"),t}(),T=function(){function t(){this.boneSlot=null,this.slotIndex=-1,this.attachment=null,this.deformData=null,this.frameIndex=0,this.timeList=[],this.vectices=[],this.tweenKeyList=[]}s(t,"laya.ani.bone.DeformSlotDisplayData");var i=t.prototype;return i.binarySearch1=function(t,i){var e=0,a=t.length-2;if(0==a)return 1;for(var s=a>>>1;;){if(t[Math.floor(s+1)]<=i?e=s+1:a=s,e==a)return e+1;s=e+a>>>1}return 0},i.apply=function(t,i,e){if(void 0===e&&(e=1),!(this.timeList.length<=0)){var a=0,s=this.timeList[0];if(!(s>t)){var r=this.vectices[0].length,n=[],h=this.binarySearch1(this.timeList,t);if(this.frameIndex=h,t>=this.timeList[this.timeList.length-1]){var l=this.vectices[this.vectices.length-1];if(1>e)for(a=0;r>a;a++)n[a]+=(l[a]-n[a])*e;else for(a=0;r>a;a++)n[a]=l[a];return void(this.deformData=n)}var o=(this.tweenKeyList[this.frameIndex],this.vectices[this.frameIndex-1]),u=this.vectices[this.frameIndex],c=this.timeList[this.frameIndex-1],p=this.timeList[this.frameIndex];this.tweenKeyList[h-1]&&(e=(t-c)/(p-c));var _=NaN;for(a=0;r>a;a++)_=o[a],n[a]=_+(u[a]-_)*e;this.deformData=n}}},t}(),S=function(){function t(){this.time=NaN,this.drawOrder=[]}return s(t,"laya.ani.bone.DrawOrderData"),t}(),F=function(){function t(){this.name=null,this.intValue=0,this.floatValue=NaN,this.stringValue=null,this.time=NaN}return s(t,"laya.ani.bone.EventData"),t}(),k=function(){function t(t,i){this._targetBone=null,this._bones=null,this._data=null,this.name=null,this.mix=NaN,this.bendDirection=NaN,this._data=t,this._targetBone=i[t.targetBoneIndex],null==this._bones&&(this._bones=[]),this._bones.length=0;for(var e=0,a=t.boneIndexs.length;a>e;e++)this._bones.push(i[t.boneIndexs[e]]);this.name=t.name,this.mix=t.mix,this.bendDirection=t.bendDirection}s(t,"laya.ani.bone.IkConstraint");var i=t.prototype;return i.apply=function(){switch(this._bones.length){case 1:this._applyIk1(this._bones[0],this._targetBone.resultMatrix.tx,this._targetBone.resultMatrix.ty,this.mix);break;case 2:this._applyIk2(this._bones[0],this._bones[1],this._targetBone.resultMatrix.tx,this._targetBone.resultMatrix.ty,this.bendDirection,this.mix)}},i._applyIk1=function(i,e,a,s){var r=i.parentBone,n=1/(r.resultMatrix.a*r.resultMatrix.d-r.resultMatrix.b*r.resultMatrix.c),h=e-r.resultMatrix.tx,l=a-r.resultMatrix.ty,o=(h*r.resultMatrix.d-l*r.resultMatrix.c)*n-i.transform.x,u=(l*r.resultMatrix.a-h*r.resultMatrix.b)*n-i.transform.y,c=Math.atan2(u,o)*t.radDeg-0-i.transform.skX;i.transform.scX<0&&(c+=180),c>180?c-=360:-180>c&&(c+=360),i.transform.skX=i.transform.skY=i.transform.skX+c*s,i.update()},i._applyIk2=function(i,e,a,s,r,n){if(0!=n){var h=i.resultTransform.x,l=i.resultTransform.y,o=i.transform.scX,u=i.transform.scY,c=e.transform.scX,p=0,_=0,d=0;0>o?(o=-o,p=180,d=-1):(p=0,d=1),0>u&&(u=-u,d=-d),0>c?(c=-c,_=180):_=0;var f=e.resultTransform.x,m=NaN,x=NaN,y=NaN,g=i.resultMatrix.a,v=i.resultMatrix.c,M=i.resultMatrix.b,D=i.resultMatrix.d,I=Math.abs(o-u)<=1e-4;I?(m=e.resultTransform.y,x=g*f+v*m+i.resultMatrix.tx,y=M*f+D*m+i.resultMatrix.ty):(m=0,x=g*f+i.resultMatrix.tx,y=M*f+i.resultMatrix.ty);var b=i.parentBone;g=b.resultMatrix.a,v=b.resultMatrix.c,M=b.resultMatrix.b,D=b.resultMatrix.d;var N=1/(g*D-v*M),A=a-b.resultMatrix.tx,T=s-b.resultMatrix.ty,S=(A*D-T*v)*N-h,F=(T*g-A*M)*N-l;A=x-b.resultMatrix.tx,T=y-b.resultMatrix.ty;var k=(A*D-T*v)*N-h,C=(T*g-A*M)*N-l,w=Math.sqrt(k*k+C*C),P=e.length*c,L=NaN,B=NaN;if(I){P*=o;var U=(S*S+F*F-w*w-P*P)/(2*w*P);-1>U?U=-1:U>1&&(U=1),B=Math.acos(U)*r,g=w+P*U,v=P*Math.sin(B),L=Math.atan2(F*g-S*v,S*g+F*v)}else{g=o*P,v=u*P;var R=g*g,O=v*v,E=S*S+F*F,Y=Math.atan2(F,S);M=O*w*w+R*E-R*O;var X=-2*O*w,K=O-R;if(D=X*X-4*K*M,D>0){var W=Math.sqrt(D);0>X&&(W=-W),W=-(X+W)/2;var G=W/K,q=M/W,V=Math.abs(G)<Math.abs(q)?G:q;E>=V*V&&(T=Math.sqrt(E-V*V)*r,L=Y-Math.atan2(T,V),B=Math.atan2(T/u,(V-w)/o))}var H=0,z=Number.MAX_VALUE,Q=0,Z=0,$=0,j=0,J=0,tt=0;A=w+g,D=A*A,D>j&&($=0,j=D,J=A),A=w-g,D=A*A,z>D&&(H=Math.PI,z=D,Q=A);var it=Math.acos(-g*w/(R-O));A=g*Math.cos(it)+w,T=v*Math.sin(it),D=A*A+T*T,z>D&&(H=it,z=D,Q=A,Z=T),D>j&&($=it,j=D,J=A,tt=T),(z+j)/2>=E?(L=Y-Math.atan2(Z*r,Q),B=H*r):(L=Y-Math.atan2(tt*r,J),B=$*r)}var et=Math.atan2(m,f)*d,at=i.resultTransform.skX;L=(L-et)*t.radDeg+p-at,L>180?L-=360:-180>L&&(L+=360),i.resultTransform.x=h,i.resultTransform.y=l,i.resultTransform.skX=i.resultTransform.skY=at+L*n,at=e.resultTransform.skX,at%=360,B=((B+et)*t.radDeg-0)*d+_-at,B>180?B-=360:-180>B&&(B+=360),e.resultTransform.x=f,e.resultTransform.y=m,e.resultTransform.skX=e.resultTransform.skY=e.resultTransform.skY+B*n,i.update()}},a(t,["radDeg",function(){return this.radDeg=180/Math.PI},"degRad",function(){return this.degRad=Math.PI/180}]),t}(),C=function(){function t(){this.name=null,this.targetBoneName=null,this.bendDirection=1,this.mix=1,this.targetBoneIndex=-1,this.boneNames=[],this.boneIndexs=[]}return s(t,"laya.ani.bone.IkConstraintData"),t}(),w=function(){function t(t,i){this.target=null,this.data=null,this.bones=null,this.position=NaN,this.spacing=NaN,this.rotateMix=NaN,this.translateMix=NaN,this._debugKey=!1,this._spaces=null,this._segments=[],this._curves=[],this.data=t,this.position=t.position,this.spacing=t.spacing,this.rotateMix=t.rotateMix,this.translateMix=t.translateMix,this.bones=[];for(var e=this.data.bones,a=0,s=e.length;s>a;a++)this.bones.push(i[e[a]])}s(t,"laya.ani.bone.PathConstraint");var i=t.prototype;return i.apply=function(t,i){var e=this.translateMix,a=this.translateMix,s=a>0,r=this.data.spacingMode,n="length"==r,h=this.data.rotateMode,l="tangent"==h,o="chainScale"==h,u=[],c=this.bones.length,p=l?c:c+1,_=[];this._spaces=_,_[0]=this.position;var d=this.spacing;if(o||n)for(var f=0,m=p-1;m>f;){var x=this.bones[f],y=x.length,g=y*x.transform.getMatrix().a,v=y*x.transform.getMatrix().c;y=Math.sqrt(g*g+v*v),o&&(u[f]=y),_[++f]=n?Math.max(0,y+d):d}else for(f=1;p>f;f++)_[f]=d;var M=this.computeWorldPositions(this.target,t,i,p,l,"percent"==this.data.positionMode,"percent"==r);if(this._debugKey){for(f=0;f<M.length;f++)i.drawCircle(M[f++],M[f++],5,"#00ff00");var D=[];for(f=0;f<M.length;f++)D.push(M[f++],M[f++]);i.drawLines(0,0,D,"#ff0000")}var I=M[0],b=M[1],N=this.data.offsetRotation,A="chain"==h&&0==N,T=NaN;for(f=0,T=3;c>f;f++,T+=3){x=this.bones[f],x.resultMatrix.tx+=(I-x.resultMatrix.tx)*e,x.resultMatrix.ty+=(b-x.resultMatrix.ty)*e,g=M[T],v=M[T+1];var S=g-I,F=v-b;if(o&&(y=u[f],0!=y)){var k=(Math.sqrt(S*S+F*F)/y-1)*a+1;x.resultMatrix.a*=k,x.resultMatrix.c*=k}if(I=g,b=v,s){var C=x.resultMatrix.a,w=x.resultMatrix.b,P=x.resultMatrix.c,L=x.resultMatrix.d,B=NaN,U=NaN,R=NaN;B=l?M[T-1]:0==_[f+1]?M[T+2]:Math.atan2(F,S),B-=Math.atan2(P,C)-N/180*Math.PI,A&&(U=Math.cos(B),R=Math.sin(B),y=x.length,I+=(y*(U*C-R*P)-S)*a,b+=(y*(R*C+U*P)-F)*a),B>Math.PI?B-=2*Math.PI:B<-Math.PI&&(B+=2*Math.PI),B*=a,U=Math.cos(B),R=Math.sin(B),x.resultMatrix.a=U*C-R*P,x.resultMatrix.c=U*w-R*L,x.resultMatrix.b=R*C+U*P,x.resultMatrix.d=R*w+U*L}}},i.computeWorldVertices2=function(t,i,e,a,s,r){var n,h=t.currDisplayData.bones,l=t.currDisplayData.weights,o=(t.currDisplayData.triangles,0),u=0,c=0,p=0,_=0,d=0,f=0,m=0,x=0,y=0;for(o=0;e>o;o+=2)p=h[u],u+=p+1,c+=p;var g=i;for(_=r,d=3*c;a>_;_+=2){for(f=0,m=0,p=h[u++],p+=u;p>u;u++,d+=3){n=g[h[u]].resultMatrix,x=l[d],y=l[d+1];var v=l[d+2];f+=(x*n.a+y*n.c+n.tx)*v,m+=(x*n.b+y*n.d+n.ty)*v}s[_]=f,s[_+1]=m}},i.computeWorldPositions=function(t,i,e,a,s,r,n){var h=(t.currDisplayData.bones,t.currDisplayData.weights,t.currDisplayData.triangles,[]),l=0,o=t.currDisplayData.verLen,u=this.position,c=this._spaces,p=[],_=[],d=!1,f=o/6,m=-1,x=NaN,y=0,g=0,v=NaN,M=NaN,D=NaN,I=NaN;if(d)o+=2,p[o-2]=p[0],p[o-1]=p[1];else{if(f--,o-=4,this.computeWorldVertices2(t,i,2,o,h,0),this._debugKey)for(l=0;l<h.length;)e.drawCircle(h[l++],h[l++],10,"#ff0000");p=h}this._curves.length=f;var b=this._curves;x=0;var N=p[0],A=p[1],T=0,S=0,F=0,k=0,C=0,w=0,P=NaN,L=NaN,B=NaN,U=NaN,R=NaN,O=NaN,E=NaN,Y=NaN,X=0;for(l=0,X=2;f>l;l++,X+=6)T=p[X],S=p[X+1],F=p[X+2],k=p[X+3],C=p[X+4],w=p[X+5],P=.1875*(N-2*T+F),L=.1875*(A-2*S+k),B=.09375*(3*(T-F)-N+C),U=.09375*(3*(S-k)-A+w),R=2*P+B,O=2*L+U,E=.75*(T-N)+P+.16666667*B,Y=.75*(S-A)+L+.16666667*U,x+=Math.sqrt(E*E+Y*Y),E+=R,Y+=O,R+=B,O+=U,x+=Math.sqrt(E*E+Y*Y),E+=R,Y+=O,x+=Math.sqrt(E*E+Y*Y),E+=R+B,Y+=O+U,x+=Math.sqrt(E*E+Y*Y),b[l]=x,N=C,A=w;if(r&&(u*=x),n)for(l=0;a>l;l++)c[l]*=x;var K=this._segments,W=0,G=0;for(l=0,y=0,g=0,G=0;a>l;l++,y+=3){if(M=c[l],u+=M,v=u,d)v%=x,0>v&&(v+=x),g=0;else{if(0>v){this.addBeforePosition(v,p,0,_,y);continue}if(v>x){this.addAfterPosition(v-x,p,o-4,_,y);continue}}for(;;g++)if(I=b[g],!(v>I)){0==g?v/=I:(D=b[g-1],v=(v-D)/(I-D));break}if(g!=m){m=g;var q=6*g;for(N=p[q],A=p[q+1],T=p[q+2],S=p[q+3],F=p[q+4],k=p[q+5],C=p[q+6],w=p[q+7],P=.03*(N-2*T+F),L=.03*(A-2*S+k),B=.006*(3*(T-F)-N+C),U=.006*(3*(S-k)-A+w),R=2*P+B,O=2*L+U,E=.3*(T-N)+P+.16666667*B,Y=.3*(S-A)+L+.16666667*U,W=Math.sqrt(E*E+Y*Y),K[0]=W,q=1;8>q;q++)E+=R,Y+=O,R+=B,O+=U,W+=Math.sqrt(E*E+Y*Y),K[q]=W;E+=R,Y+=O,W+=Math.sqrt(E*E+Y*Y),K[8]=W,E+=R+B,Y+=O+U,W+=Math.sqrt(E*E+Y*Y),K[9]=W,G=0}for(v*=W;;G++)if(I=K[G],!(v>I)){0==G?v/=I:(D=K[G-1],v=G+(v-D)/(I-D));break}this.addCurvePosition(.1*v,N,A,T,S,F,k,C,w,_,y,s||l>0&&0==M)}return _},i.addBeforePosition=function(t,i,e,a,s){var r=i[e],n=i[e+1],h=i[e+2]-r,l=i[e+3]-n,o=Math.atan2(l,h);a[s]=r+t*Math.cos(o),a[s+1]=n+t*Math.sin(o),a[s+2]=o},i.addAfterPosition=function(t,i,e,a,s){var r=i[e+2],n=i[e+3],h=r-i[e],l=n-i[e+1],o=Math.atan2(l,h);a[s]=r+t*Math.cos(o),a[s+1]=n+t*Math.sin(o),a[s+2]=o},i.addCurvePosition=function(t,i,e,a,s,r,n,h,l,o,u,c){0==t&&(t=1e-4);var p=t*t,_=p*t,d=1-t,f=d*d,m=f*d,x=d*t,y=3*x,g=d*y,v=y*t,M=i*m+a*g+r*v+h*_,D=e*m+s*g+n*v+l*_;o[u]=M,o[u+1]=D,c?o[u+2]=Math.atan2(D-(e*f+s*x*2+n*p),M-(i*f+a*x*2+r*p)):o[u+2]=0},t.NONE=-1,t.BEFORE=-2,t.AFTER=-3,t}(),P=function(){function t(){this.name=null,this.target=null,this.positionMode=null,this.spacingMode=null,this.rotateMode=null,this.offsetRotation=NaN,this.position=NaN,this.spacing=NaN,this.rotateMix=NaN,this.translateMix=NaN,this.bones=[]}return s(t,"laya.ani.bone.PathConstraintData"),t}(),L=function(){function t(){this.name=null,this.slotArr=[]}return s(t,"laya.ani.bone.SkinData"),t}(),B=function(){function t(){this.name=null,this.attachmentName=null,this.type=0,this.transform=null,this.width=NaN,this.height=NaN,this.texture=null,this.bones=null,this.uvs=null,this.weights=null,this.triangles=null,this.vertices=null,this.lengths=null,this.verLen=0}s(t,"laya.ani.bone.SkinSlotDisplayData");var i=t.prototype;return i.createTexture=function(t){return this.texture?this.texture:(this.texture=new M(t.bitmap,this.uvs),this.uvs[0]>this.uvs[4]&&this.uvs[1]>this.uvs[5]?(this.texture.width=t.height,this.texture.height=t.width,this.texture.offsetX=-t.offsetX,this.texture.offsetY=-t.offsetY,this.texture.sourceWidth=t.sourceHeight,this.texture.sourceHeight=t.sourceWidth):(this.texture.width=t.width,this.texture.height=t.height,this.texture.offsetX=-t.offsetX,this.texture.offsetY=-t.offsetY,this.texture.sourceWidth=t.sourceWidth,this.texture.sourceHeight=t.sourceHeight),this.texture)},i.destory=function(){this.texture&&this.texture.destroy()},t}(),U=function(){function t(){this.name=null,this.displayArr=[]}s(t,"laya.ani.bone.SlotData");var i=t.prototype;return i.getDisplayByName=function(t){for(var i,e=0,a=this.displayArr.length;a>e;e++)if(i=this.displayArr[e],i.attachmentName==t)return e;return-1},t}(),R=function(){function t(t,i){this._data=null,this._bones=null,this.target=null,this.rotateMix=NaN,this.translateMix=NaN,this.scaleMix=NaN,this.shearMix=NaN,this._temp=n(2,0),this._data=t,null==this._bones&&(this._bones=[]),this.target=i[t.targetIndex];var e=0,a=0;for(e=0,a=t.boneIndexs.length;a>e;e++)this._bones.push(i[t.boneIndexs[e]]);this.rotateMix=t.rotateMix,this.translateMix=t.translateMix,this.scaleMix=t.scaleMix,this.shearMix=t.shearMix}s(t,"laya.ani.bone.TfConstraint");var i=t.prototype;return i.apply=function(){for(var t,i=this.target.resultMatrix.a,e=this.target.resultMatrix.b,a=this.target.resultMatrix.c,s=this.target.resultMatrix.d,r=0,n=this._bones.length;n>r;r++){if(t=this._bones[r],this.rotateMix>0){var h=t.resultMatrix.a,l=t.resultMatrix.b,o=t.resultMatrix.c,u=t.resultMatrix.d,c=Math.atan2(a,i)-Math.atan2(o,h)+this._data.offsetRotation*Math.PI/180;c>Math.PI?c-=2*Math.PI:c<-Math.PI&&(c+=2*Math.PI),c*=this.rotateMix;var p=Math.cos(c),_=Math.sin(c);t.resultMatrix.a=p*h-_*o,t.resultMatrix.b=p*l-_*u,t.resultMatrix.c=_*h+p*o,t.resultMatrix.d=_*l+p*u}if(this.translateMix&&(this._temp[0]=this._data.offsetX,this._temp[1]=this._data.offsetY,this.target.localToWorld(this._temp),t.resultMatrix.tx+=(this._temp[0]-t.resultMatrix.tx)*this.translateMix,t.resultMatrix.ty+=(this._temp[1]-t.resultMatrix.ty)*this.translateMix,t.updateChild()),this.scaleMix>0){var d=Math.sqrt(t.resultMatrix.a*t.resultMatrix.a+t.resultMatrix.c*t.resultMatrix.c),f=Math.sqrt(i*i+a*a),m=d>1e-5?(d+(f-d+this._data.offsetScaleX)*this.scaleMix)/d:0;t.resultMatrix.a*=m,t.resultMatrix.c*=m,d=Math.sqrt(t.resultMatrix.b*t.resultMatrix.b+t.resultMatrix.d*t.resultMatrix.d),f=Math.sqrt(e*e+s*s),m=d>1e-5?(d+(f-d+this._data.offsetScaleY)*this.scaleMix)/d:0,t.resultMatrix.b*=m,t.resultMatrix.d*=m}if(this.shearMix>0){l=t.resultMatrix.b,u=t.resultMatrix.d;var x=Math.atan2(u,l);c=Math.atan2(s,e)-Math.atan2(a,i)-(x-Math.atan2(t.resultMatrix.c,t.resultMatrix.a)),c>Math.PI?c-=2*Math.PI:c<-Math.PI&&(c+=2*Math.PI),c=x+(c+this._data.offsetShearY*Math.PI/180)*this.shearMix,m=Math.sqrt(l*l+u*u),t.resultMatrix.b=Math.cos(c)*m,t.resultMatrix.d=Math.sin(c)*m}}},t}(),O=function(){function t(){this.name=null,this.targetIndex=0,this.rotateMix=NaN,this.translateMix=NaN,this.scaleMix=NaN,this.shearMix=NaN,this.offsetRotation=NaN,this.offsetX=NaN,this.offsetY=NaN,this.offsetScaleX=NaN,this.offsetScaleY=NaN,this.offsetShearY=NaN,this.boneIndexs=[]}return s(t,"laya.ani.bone.TfConstraintData"),t}(),E=function(){function t(){this.skX=0,this.skY=0,this.scX=1,this.scY=1,this.x=0,this.y=0,this.mMatrix=null}s(t,"laya.ani.bone.Transform");var i=t.prototype;return i.initData=function(t){void 0!=t.x&&(this.x=t.x),void 0!=t.y&&(this.y=t.y),void 0!=t.skX&&(this.skX=t.skX),void 0!=t.skY&&(this.skY=t.skY),void 0!=t.scX&&(this.scX=t.scX),void 0!=t.scY&&(this.scY=t.scY)},i.getMatrix=function(){var t;if(t=this.mMatrix?this.mMatrix:this.mMatrix=new f,t.a=Math.cos(this.skY),0!=this.skX||0!=this.skY){var i=this.skX*Math.PI/180,e=Math.cos(i),a=Math.sin(i);t.setTo(this.scX*e,this.scX*a,this.scY*-a,this.scY*e,this.x,this.y)}else t.setTo(this.scX,this.skX,this.skY,this.scY,this.x,this.y);return t},t}(),Y=function(t){function i(){this._templet=null,this._currentTime=NaN,this._currentFrameTime=NaN,this._playStart=NaN,this._playEnd=NaN,this._playDuration=NaN,this._overallDuration=NaN,this._stopWhenCircleFinish=!1,this._elapsedPlaybackTime=NaN,this._startUpdateLoopCount=NaN,this._currentAnimationClipIndex=0,this._currentKeyframeIndex=0,this._paused=!1,this._cacheFrameRate=0,this._cacheFrameRateInterval=NaN,this._cachePlayRate=NaN,this._fullFrames=null,this.isCache=!0,this.playbackRate=1,this.returnToZeroStopped=!0,i.__super.call(this),this._currentAnimationClipIndex=-1,this._currentKeyframeIndex=-1,this._currentTime=0,this._overallDuration=Number.MAX_VALUE,this._stopWhenCircleFinish=!1,this._elapsedPlaybackTime=0,this._startUpdateLoopCount=-1,this._cachePlayRate=1,this.cacheFrameRate=60}s(i,"laya.ani.AnimationPlayer",t);var e=i.prototype;return e._onTempletLoadedComputeFullKeyframeIndices=function(t,i,e){this._templet===e&&this._cachePlayRate===t&&this._cacheFrameRate===i&&this._computeFullKeyframeIndices()},e._computeFullKeyframeIndices=function(){for(var t=this._fullFrames=[],i=this._templet,e=this._cacheFrameRateInterval*this._cachePlayRate,a=0,s=i.getAnimationCount();s>a;a++){for(var r=[],n=0,h=i.getAnimation(a).nodes.length;h>n;n++){for(var l=i.getAnimation(a).nodes[n],u=Math.floor(l.playTime/e),c=new Uint16Array(u+1),p=-1,_=0,d=l.keyFrame.length;d>_;_++){var f=l.keyFrame[_],m=f.startTime,x=m+f.duration+e;do{for(var y=Math.floor(m/e+.5),g=p+1;y>g;g++)c[g]=_;p=y,c[y]=_,m+=e}while(x>=m)}r.push(c)}t.push(r)}this.event(o.CACHEFRAMEINDEX_CHANGED,this)},e._calculatePlayDuration=function(){if(0!==this.state){var t=this._templet.getAniDuration(this._currentAnimationClipIndex);0===this._playEnd&&(this._playEnd=t),Math.floor(this._playEnd)>t&&(this._playEnd=t),this._playDuration=this._playEnd-this._playStart}},e.play=function(t,i,e,a,s){if(void 0===t&&(t=0),void 0===i&&(i=1),void 0===e&&(e=2147483647),void 0===a&&(a=0),void 0===s&&(s=0),!this._templet)throw new Error("AnimationPlayer:templet must not be null,maybe you need to set url.");if(0>e||0>a||0>s)throw new Error("AnimationPlayer:overallDuration,playStart and playEnd must large than zero.");if(0!==s&&a>s)throw new Error("AnimationPlayer:start must less than end.");this._currentTime=0,this._currentFrameTime=0,this._elapsedPlaybackTime=0,this.playbackRate=i,this._overallDuration=e,this._playStart=a,this._playEnd=s,this._paused=!1,this._currentAnimationClipIndex=t,this._currentKeyframeIndex=0,this._startUpdateLoopCount=v.loopCount,this.event("played"),this._templet.loaded?this._calculatePlayDuration():this._templet.once("loaded",this,this._calculatePlayDuration),this.update(0)},e.playByFrame=function(t,i,e,a,s,r){void 0===t&&(t=0),void 0===i&&(i=1),void 0===e&&(e=9007199254740991),void 0===a&&(a=0),void 0===s&&(s=0),void 0===r&&(r=30);var n=1e3/r;this.play(t,i,e,a*n,s*n)},e.stop=function(t){void 0===t&&(t=!0),t?(this._currentAnimationClipIndex=this._currentKeyframeIndex=-1,this.event("stopped")):this._stopWhenCircleFinish=!0},e.update=function(t){if(-1!==this._currentAnimationClipIndex&&!this._paused&&this._templet&&this._templet.loaded){var i=this._cacheFrameRateInterval*this._cachePlayRate,e=0;this._startUpdateLoopCount!==v.loopCount&&(e=t*this.playbackRate,this._elapsedPlaybackTime+=e);var a=this.playDuration;if(0!==this._overallDuration&&this._elapsedPlaybackTime>=this._overallDuration||0===this._overallDuration&&this._elapsedPlaybackTime>=a)return this._currentAnimationClipIndex=this._currentKeyframeIndex=-1,void this.event("stopped");if(e+=this._currentTime,a>0){for(;e>=a;){if(this._stopWhenCircleFinish)return this._currentAnimationClipIndex=this._currentKeyframeIndex=-1,this._stopWhenCircleFinish=!1,void this.event("stopped");e-=a,this.event("complete")}this._currentTime=e,this._currentKeyframeIndex=Math.floor(this.currentPlayTime/i),this._currentFrameTime=this._currentKeyframeIndex*i}else{if(this._stopWhenCircleFinish)return this._currentAnimationClipIndex=this._currentKeyframeIndex=-1,this._stopWhenCircleFinish=!1,void this.event("stopped");this._currentTime=this._currentFrameTime=this._currentKeyframeIndex=0,this.event("complete")}}},r(0,e,"playEnd",function(){return this._playEnd}),r(0,e,"templet",function(){return this._templet},function(t){0===!this.state&&this.stop(!0),this._templet!==t&&(this._templet=t,t.loaded?this._computeFullKeyframeIndices():t.once("loaded",this,this._onTempletLoadedComputeFullKeyframeIndices,[this._cachePlayRate,this._cacheFrameRate]))}),r(0,e,"playStart",function(){return this._playStart}),r(0,e,"playDuration",function(){return this._playDuration}),r(0,e,"state",function(){return-1===this._currentAnimationClipIndex?0:this._paused?1:2}),r(0,e,"currentKeyframeIndex",function(){return this._currentKeyframeIndex}),r(0,e,"overallDuration",function(){return this._overallDuration}),r(0,e,"currentFrameTime",function(){return this._currentFrameTime}),r(0,e,"currentAnimationClipIndex",function(){return this._currentAnimationClipIndex}),r(0,e,"currentPlayTime",function(){return this._currentTime+this._playStart}),r(0,e,"cachePlayRate",function(){return this._cachePlayRate},function(t){this._cachePlayRate!==t&&(this._cachePlayRate=t,this._templet&&(this._templet.loaded?this._computeFullKeyframeIndices():this._templet.once("loaded",this,this._onTempletLoadedComputeFullKeyframeIndices,[t,this._cacheFrameRate])))}),r(0,e,"cacheFrameRate",function(){return this._cacheFrameRate},function(t){this._cacheFrameRate!==t&&(this._cacheFrameRate=t,this._cacheFrameRateInterval=1e3/this._cacheFrameRate,this._templet&&(this._templet.loaded?this._computeFullKeyframeIndices():this._templet.once("loaded",this,this._onTempletLoadedComputeFullKeyframeIndices,[this._cachePlayRate,t])))}),r(0,e,"currentTime",null,function(t){if(-1!==this._currentAnimationClipIndex&&this._templet&&this._templet.loaded){if(t<this._playStart||t>this._playEnd)throw new Error("AnimationPlayer:value must large than playStartTime,small than playEndTime.");this._startUpdateLoopCount=v.loopCount;var i=this._cacheFrameRateInterval*this._cachePlayRate;this._currentTime=t,this._currentKeyframeIndex=Math.floor(this.currentPlayTime/i),this._currentFrameTime=this._currentKeyframeIndex*i}}),r(0,e,"paused",function(){return this._paused},function(t){this._paused=t,t&&this.event("paused")}),r(0,e,"cacheFrameRateInterval",function(){return this._cacheFrameRateInterval}),i}(u),X=function(t){function i(){i.__super.call(this),m.isConchNode&&(this.drawSkin=function(t){t.transform||(t.transform=f.EMPTY),this.setSkinMesh&&this.setSkinMesh(t._ps,t.mVBData,t.mEleNum,0,t.mTexture,t.transform)})}s(i,"laya.ani.GraphicsAni",t);var e=i.prototype;return e.drawSkin=function(t){var i=[t];this._saveToCmd(m._context._drawSkin,i)},i}(c),K=function(t){function i(){this._aniMap={},this.unfixedLastAniIndex=-1,i.__super.call(this),this._anis=new Array}s(i,"laya.ani.AnimationTemplet",t);var a=i.prototype;return a._endLoaded=function(){this._loaded=!0,this.event("loaded",this)},a.parse=function(t){var e=0,a=0,s=0,r=0,n=0,h=new l(t);this._aniVersion=h.readUTFString();var o,u=(h.readUTFString(),h.readUTFString().split("\n")),c=h.getUint8(),p=h.getUint32(),_=h.getUint32();p>0&&(o=t.slice(p,_));var d=new l(o);for(_>0&&(this._publicExtData=t.slice(_,t.byteLength)),this._useParent=!!h.getUint8(),this._anis.length=c,e=0;c>e;e++){var f=this._anis[e]={};f.nodes=new Array;var m=f.name=u[h.getUint16()];this._aniMap[m]=e,f.bone3DMap={},f.playTime=h.getFloat32();var x=f.nodes.length=h.getUint8();for(f.totalKeyframesLength=0,a=0;x>a;a++){var y=f.nodes[a]={};y.childs=[];var g=h.getInt16();g>=0&&(y.name=u[g],f.bone3DMap[y.name]=a),y.keyFrame=new Array,y.parentIndex=h.getInt16(),-1==y.parentIndex?y.parent=null:y.parent=f.nodes[y.parentIndex];var v=!!h.getUint8(),M=h.getUint32();d.pos=M;var D=y.keyframeWidth=d.getUint16();if(f.totalKeyframesLength+=D,v)for(y.interpolationMethod=[],y.interpolationMethod.length=D,s=0;D>s;s++)y.interpolationMethod[s]=i.interpolation[d.getUint8()];null!=y.parent&&y.parent.childs.push(y);var I=h.getUint16();I>0&&(y.extenData=t.slice(h.pos,h.pos+I),h.pos+=I);var b=h.getUint16();y.keyFrame.length=b;var N=0;for(s=0,r=b;r>s;s++){var A=y.keyFrame[s]={};for(A.duration=h.getFloat32(),A.startTime=N,A.data=new Float32Array(D),A.dData=new Float32Array(D),A.nextData=new Float32Array(D),n=0;D>n;n++)A.data[n]=h.getFloat32(),A.data[n]>-1e-8&&A.data[n]<1e-8&&(A.data[n]=0);N+=A.duration}y.playTime=f.playTime,this._calculateKeyFrame(y,b,D)}}},a._calculateKeyFrame=function(t,i,e){var a=t.keyFrame;a[i]=a[0];for(var s=0;i>s;s++)for(var r=a[s],n=0;e>n;n++)r.dData[n]=0===r.duration?0:(a[s+1].data[n]-r.data[n])/r.duration,r.nextData[n]=a[s+1].data[n];a.length--},a.onAsynLoaded=function(t,i){this.parse(i),this._endLoaded()},a.getAnimationCount=function(){return this._anis.length},a.getAnimation=function(t){return this._anis[t]},a.getAniDuration=function(t){return this._anis[t].playTime},a.getNodes=function(t){return this._anis[t].nodes},a.getNodeIndexWithName=function(t,i){
|
||
return this._anis[t].bone3DMap[i]},a.getNodeCount=function(t){return this._anis[t].nodes.length},a.getTotalkeyframesLength=function(t){return this._anis[t].totalKeyframesLength},a.getPublicExtData=function(){return this._publicExtData},a.getAnimationDataWithCache=function(t,i,e,a){var s=i[e];if(s){var r=s[t];return r?r[a]:null}return null},a.setAnimationDataWithCache=function(t,i,e,a,s){var r=i[e]||(i[e]={}),n=r[t]||(r[t]=[]);n[a]=s},a.getOriginalData=function(t,i,e,a,s){for(var r=this._anis[t],n=r.nodes,h=0,l=0,o=n.length,u=0;o>l;l++){var c,p=n[l];c=p.keyFrame[e[l][a]],p.dataOffset=u;var _=s-c.startTime;for(h=0;h<p.keyframeWidth;)h+=p.interpolationMethod[h](p,h,i,u+h,c.data,_,c.dData,c.duration,c.nextData);u+=p.keyframeWidth}},a.getNodesCurrentFrameIndex=function(t,i){var e=this._anis[t],a=e.nodes;t!==this.unfixedLastAniIndex&&(this.unfixedCurrentFrameIndexes=new Uint32Array(a.length),this.unfixedCurrentTimes=new Float32Array(a.length),this.unfixedLastAniIndex=t);for(var s=0,r=a.length;r>s;s++){var n=a[s];for(i<this.unfixedCurrentTimes[s]&&(this.unfixedCurrentFrameIndexes[s]=0),this.unfixedCurrentTimes[s]=i;this.unfixedCurrentFrameIndexes[s]<n.keyFrame.length&&!(n.keyFrame[this.unfixedCurrentFrameIndexes[s]].startTime>this.unfixedCurrentTimes[s]);)this.unfixedCurrentFrameIndexes[s]++;this.unfixedCurrentFrameIndexes[s]--}return this.unfixedCurrentFrameIndexes},a.getOriginalDataUnfixedRate=function(t,i,e){var a=this._anis[t],s=a.nodes;t!==this.unfixedLastAniIndex&&(this.unfixedCurrentFrameIndexes=new Uint32Array(s.length),this.unfixedCurrentTimes=new Float32Array(s.length),this.unfixedKeyframes=n(s.length),this.unfixedLastAniIndex=t);for(var r=0,h=0,l=s.length,o=0;l>h;h++){var u=s[h];for(e<this.unfixedCurrentTimes[h]&&(this.unfixedCurrentFrameIndexes[h]=0),this.unfixedCurrentTimes[h]=e;this.unfixedCurrentFrameIndexes[h]<u.keyFrame.length&&!(u.keyFrame[this.unfixedCurrentFrameIndexes[h]].startTime>this.unfixedCurrentTimes[h]);)this.unfixedKeyframes[h]=u.keyFrame[this.unfixedCurrentFrameIndexes[h]],this.unfixedCurrentFrameIndexes[h]++;var c=this.unfixedKeyframes[h];u.dataOffset=o;var p=e-c.startTime;for(r=0;r<u.keyframeWidth;)r+=u.interpolationMethod[r](u,r,i,o+r,c.data,p,c.dData,c.duration,c.nextData);o+=u.keyframeWidth}},a.dispose=function(){this.resourceManager.removeResource(this),t.prototype.dispose.call(this)},i._LinearInterpolation_0=function(t,i,e,a,s,r,n,h,l){return e[a]=s[i]+r*n[i],1},i._QuaternionInterpolation_1=function(t,i,e,a,s,r,n,h,l){var o=0===h?0:r/h;return d.slerpQuaternionArray(s,i,l,i,o,e,a),4},i._AngleInterpolation_2=function(t,i,e,a,s,r,n,h,l){return 0},i._RadiansInterpolation_3=function(t,i,e,a,s,r,n,h,l){return 0},i._Matrix4x4Interpolation_4=function(t,i,e,a,s,r,n,h,l){for(var o=0;16>o;o++,i++)e[a+o]=s[i]+r*n[i];return 16},i._NoInterpolation_5=function(t,i,e,a,s,r,n,h,l){return e[a]=s[i],1},i.load=function(t){return e.loader.create(t,null,null,i)},i.interpolation=[i._LinearInterpolation_0,i._QuaternionInterpolation_1,i._AngleInterpolation_2,i._RadiansInterpolation_3,i._Matrix4x4Interpolation_4,i._NoInterpolation_5],i.LAYA_ANIMATION_VISION="LAYAANIMATION:1.0.6",i}(x),W=function(t){function i(t,e){this._templet=null,this._player=null,this._curOriginalData=null,this._boneMatrixArray=[],this._lastTime=0,this._currAniName=null,this._currAniIndex=-1,this._pause=!0,this._aniClipIndex=-1,this._clipIndex=-1,this._skinIndex=0,this._skinName="default",this._aniMode=0,this._graphicsCache=null,this._boneSlotDic=null,this._bindBoneBoneSlotDic=null,this._boneSlotArray=null,this._index=-1,this._total=-1,this._indexControl=!1,this._aniPath=null,this._texturePath=null,this._complete=null,this._loadAniMode=0,this._yReverseMatrix=null,this._ikArr=null,this._tfArr=null,this._pathDic=null,this._rootBone=null,this._boneList=null,this._aniSectionDic=null,this._eventIndex=0,this._drawOrderIndex=0,this._drawOrder=null,this._lastAniClipIndex=-1,i.__super.call(this),void 0===e&&(e=0),t&&this.init(t,e)}s(i,"laya.ani.bone.Skeleton",t);var a=i.prototype;return a.init=function(t,i){void 0===i&&(i=0);var e=0,a=0;if(1==i)for(this._graphicsCache=[],e=0,a=t.getAnimationCount();a>e;e++)this._graphicsCache.push([]);if(this._yReverseMatrix=t.yReverseMatrix,this._aniMode=i,this._templet=t,this._player=new Y,this._player.cacheFrameRate=t.rate,this._player.templet=t,this._player.play(),this._parseSrcBoneMatrix(),this._boneList=t.mBoneArr,this._rootBone=t.mRootBone,this._aniSectionDic=t.aniSectionDic,t.ikArr.length>0)for(this._ikArr=[],e=0,a=t.ikArr.length;a>e;e++)this._ikArr.push(new k(t.ikArr[e],this._boneList));if(t.pathArr.length>0){var s,r;null==this._pathDic&&(this._pathDic={});var n;for(e=0,a=t.pathArr.length;a>e;e++)s=t.pathArr[e],r=new w(s,this._boneList),n=this._boneSlotDic[s.name],n&&(r=new w(s,this._boneList),r.target=n),this._pathDic[s.name]=r}if(t.tfArr.length>0)for(this._tfArr=[],e=0,a=t.tfArr.length;a>e;e++)this._tfArr.push(new R(t.tfArr[e],this._boneList));if(t.skinDataArray.length>0){var h=this._templet.skinDataArray[this._skinIndex];this._skinName=h.name}this._player.on("played",this,this._onPlay),this._player.on("stopped",this,this._onStop),this._player.on("paused",this,this._onPause)},a.load=function(t,i,a){void 0===a&&(a=0),this._aniPath=t,this._complete=i,this._loadAniMode=a,this._texturePath=t.replace(".sk",".png").replace(".bin",".png"),e.loader.load([{url:t,type:"arraybuffer"},{url:this._texturePath,type:"image"}],p.create(this,this._onLoaded))},a._onLoaded=function(){var t=_.getRes(this._texturePath),i=_.getRes(this._aniPath);if(null!=t&&null!=i){null==G.TEMPLET_DICTIONARY&&(G.TEMPLET_DICTIONARY={});var e;e=G.TEMPLET_DICTIONARY[this._aniPath],e?e.isParseFail?this._parseFail():this._parseComplete():(e=new G,e.url=this._aniPath,G.TEMPLET_DICTIONARY[this._aniPath]=e,e.on("complete",this,this._parseComplete),e.on("error",this,this._parseFail),e.parseData(t,i,60))}},a._parseComplete=function(){var t=G.TEMPLET_DICTIONARY[this._aniPath];t&&(this.init(t,this._loadAniMode),this.play(0,!0)),this._complete&&this._complete.runWith(this)},a._parseFail=function(){console.log("[Error]:"+this._aniPath+"解析失败")},a._onPlay=function(){this.event("played")},a._onStop=function(){var t,i=this._templet.eventAniArr,e=i[this._aniClipIndex];if(e&&this._eventIndex<e.length)for(;this._eventIndex<e.length;this._eventIndex++)t=e[this._eventIndex],t.time>=this._player.playStart&&t.time<=this._player.playEnd&&this.event("label",t);this._eventIndex=0,this._drawOrder=null,this.event("stopped")},a._onPause=function(){this.event("paused")},a._parseSrcBoneMatrix=function(){var t=0,i=0;for(i=this._templet.srcBoneMatrixArr.length,t=0;i>t;t++)this._boneMatrixArray.push(new f);if(0==this._aniMode)this._boneSlotDic=this._templet.boneSlotDic,this._bindBoneBoneSlotDic=this._templet.bindBoneBoneSlotDic,this._boneSlotArray=this._templet.boneSlotArray;else{null==this._boneSlotDic&&(this._boneSlotDic={}),null==this._bindBoneBoneSlotDic&&(this._bindBoneBoneSlotDic={}),null==this._boneSlotArray&&(this._boneSlotArray=[]);var e,a,s=this._templet.boneSlotArray;for(t=0,i=s.length;i>t;t++)e=s[t],a=this._bindBoneBoneSlotDic[e.parent],null==a&&(this._bindBoneBoneSlotDic[e.parent]=a=[]),this._boneSlotDic[e.name]=e=e.copy(),a.push(e),this._boneSlotArray.push(e)}},a._update=function(t){if(void 0===t&&(t=!0),!(this._pause||t&&this._indexControl)){var i=e.timer.currTimer;t&&this._player.update(i-this._lastTime),this._lastTime=i,this._aniClipIndex=this._player.currentAnimationClipIndex,this._clipIndex=this._player.currentKeyframeIndex;var a,s=this._templet.eventAniArr,r=s[this._aniClipIndex];if(r&&this._eventIndex<r.length&&(a=r[this._eventIndex],a.time>=this._player.playStart&&a.time<=this._player.playEnd?this._player.currentPlayTime>=a.time&&(this.event("label",a),this._eventIndex++):this._eventIndex++),-1!=this._aniClipIndex){var n;if(0==this._aniMode){if(n=this._templet.getGrahicsDataWithCache(this._aniClipIndex,this._clipIndex))return void(this.graphics!=n&&(this.graphics=n))}else if(1==this._aniMode&&(n=this._getGrahicsDataWithCache(this._aniClipIndex,this._clipIndex)))return void(this.graphics!=n&&(this.graphics=n));this._createGraphics()}}},a._createGraphics=function(){var t,i=this._templet.drawOrderAniArr,e=i[this._aniClipIndex];if(e&&e.length>0)for(this._drawOrderIndex=0,t=e[this._drawOrderIndex];this._player.currentPlayTime>=t.time&&(this._drawOrder=t.drawOrder,this._drawOrderIndex++,!(this._drawOrderIndex>=e.length));)t=e[this._drawOrderIndex];var a;0==this._aniMode||1==this._aniMode?this.graphics=new X:this.graphics instanceof laya.ani.GraphicsAni?this.graphics.clear():this.graphics=new X,a=this.graphics;var s=this._templet.getNodes(this._aniClipIndex);this._templet.getOriginalData(this._aniClipIndex,this._curOriginalData,this._player._fullFrames[this._aniClipIndex],this._clipIndex,this._player.currentFrameTime);var r,n,h,o,u=this._aniSectionDic[this._aniClipIndex],c=0,p=0,_=0,d=0,m=0,x=this._templet.srcBoneMatrixArr.length;for(p=0,m=u[0];x>p;p++)o=this._boneList[p],h=this._templet.srcBoneMatrixArr[p],o.resultTransform.scX=h.scX*this._curOriginalData[c++],o.resultTransform.skX=h.skX+this._curOriginalData[c++],o.resultTransform.skY=h.skY+this._curOriginalData[c++],o.resultTransform.scY=h.scY*this._curOriginalData[c++],o.resultTransform.x=h.x+this._curOriginalData[c++],o.resultTransform.y=h.y+this._curOriginalData[c++];var y,g={},v={};for(m+=u[1];m>p;p++)y=s[p],g[y.name]=this._curOriginalData[c++],v[y.name]=this._curOriginalData[c++],this._curOriginalData[c++],this._curOriginalData[c++],this._curOriginalData[c++],this._curOriginalData[c++];var M={},D={};for(m+=u[2];m>p;p++)y=s[p],M[y.name]=this._curOriginalData[c++],D[y.name]=this._curOriginalData[c++],this._curOriginalData[c++],this._curOriginalData[c++],this._curOriginalData[c++];if(this._pathDic){var I;for(m+=u[3];m>p;p++)if(y=s[p],I=this._pathDic[y.name]){var b=new l(y.extenData);switch(b.getByte()){case 1:I.position=this._curOriginalData[c++];break;case 2:I.spacing=this._curOriginalData[c++];break;case 3:I.rotateMix=this._curOriginalData[c++],I.translateMix=this._curOriginalData[c++]}}}if(this._yReverseMatrix?this._rootBone.update(this._yReverseMatrix):this._rootBone.update(f.TEMP.identity()),this._ikArr){var N;for(p=0,m=this._ikArr.length;m>p;p++)N=this._ikArr[p],M.hasOwnProperty(N.name)&&(N.bendDirection=M[N.name]),D.hasOwnProperty(N.name)&&(N.mix=D[N.name]),N.apply()}if(this._pathDic)for(var A in this._pathDic)I=this._pathDic[A],I.apply(this._boneList,a);if(this._tfArr){var T;for(p=0,d=this._tfArr.length;d>p;p++)T=this._tfArr[p],T.apply()}for(p=0,d=this._boneList.length;d>p;p++)if(o=this._boneList[p],n=this._bindBoneBoneSlotDic[o.name],o.resultMatrix.copyTo(this._boneMatrixArray[p]),n)for(_=0,m=n.length;m>_;_++)r=n[_],r&&r.setParentMatrix(o.resultMatrix);var S,F,k,C={},w=this._templet.deformAniArr;if(w&&w.length>0){if(this._lastAniClipIndex!=this._aniClipIndex)for(this._lastAniClipIndex=this._aniClipIndex,p=0,m=this._boneSlotArray.length;m>p;p++)r=this._boneSlotArray[p],r.deformData=null;var P=w[this._aniClipIndex];if(S=P["default"])for(p=0,m=S.deformSlotDataList.length;m>p;p++)for(F=S.deformSlotDataList[p],_=0;_<F.deformSlotDisplayList.length;_++)k=F.deformSlotDisplayList[_],r=this._boneSlotArray[k.slotIndex],k.apply(this._player.currentPlayTime,r),C[k.slotIndex]||(C[k.slotIndex]={}),C[k.slotIndex][k.attachment]=k.deformData;if(S=P[this._skinName])for(p=0,m=S.deformSlotDataList.length;m>p;p++)for(F=S.deformSlotDataList[p],_=0;_<F.deformSlotDisplayList.length;_++)k=F.deformSlotDisplayList[_],r=this._boneSlotArray[k.slotIndex],k.apply(this._player.currentPlayTime,r),C[k.slotIndex]||(C[k.slotIndex]={}),C[k.slotIndex][k.attachment]=k.deformData}var L,B,U;if(this._drawOrder)for(p=0,m=this._drawOrder.length;m>p;p++)r=this._boneSlotArray[this._drawOrder[p]],L=g[r.name],B=v[r.name],isNaN(B)||(a.save(),a.alpha(B)),isNaN(L)||(this._templet.attachmentNames?r.showDisplayByName(this._templet.attachmentNames[L]):r.showDisplayByIndex(L)),C[this._drawOrder[p]]?(U=C[this._drawOrder[p]],r.currDisplayData&&U[r.currDisplayData.attachmentName]?r.deformData=U[r.currDisplayData.attachmentName]:r.deformData=null):r.deformData=null,isNaN(B)?r.draw(a,this._boneMatrixArray,2==this._aniMode):r.draw(a,this._boneMatrixArray,2==this._aniMode,B),isNaN(B)||a.restore();else for(p=0,m=this._boneSlotArray.length;m>p;p++)r=this._boneSlotArray[p],L=g[r.name],B=v[r.name],isNaN(B)||(a.save(),a.alpha(B)),isNaN(L)||(this._templet.attachmentNames?r.showDisplayByName(this._templet.attachmentNames[L]):r.showDisplayByIndex(L)),C[p]?(U=C[p],r.currDisplayData&&U[r.currDisplayData.attachmentName]?r.deformData=U[r.currDisplayData.attachmentName]:r.deformData=null):r.deformData=null,isNaN(B)?r.draw(a,this._boneMatrixArray,2==this._aniMode):r.draw(a,this._boneMatrixArray,2==this._aniMode,B),isNaN(B)||a.restore();0==this._aniMode?this._templet.setGrahicsDataWithCache(this._aniClipIndex,this._clipIndex,a):1==this._aniMode&&this._setGrahicsDataWithCache(this._aniClipIndex,this._clipIndex,a)},a.getAnimNum=function(){return this._templet.getAnimationCount()},a.getAniNameByIndex=function(t){return this._templet.getAniNameByIndex(t)},a.getSlotByName=function(t){return this._boneSlotDic[t]},a.showSkinByName=function(t){this.showSkinByIndex(this._templet.getSkinIndexByName(t))},a.showSkinByIndex=function(t){for(var i=0;i<this._boneSlotArray.length;i++)this._boneSlotArray[i].showSlotData(null);if(this._templet.showSkinByIndex(this._boneSlotDic,t)){var e=this._templet.skinDataArray[t];this._skinIndex=t,this._skinName=e.name}this._clearCache()},a.showSlotSkinByIndex=function(t,i){if(0!=this._aniMode){var e=this.getSlotByName(t);e&&e.showDisplayByIndex(i),this._clearCache()}},a.setSlotSkin=function(t,i){if(0!=this._aniMode){var e=this.getSlotByName(t);e&&e.replaceSkin(i),this._clearCache()}},a._clearCache=function(){if(1==this._aniMode)for(var t=0,i=this._graphicsCache.length;i>t;t++)this._graphicsCache[t].length=0},a.play=function(t,i,a,s,r){void 0===a&&(a=!0),void 0===s&&(s=0),void 0===r&&(r=0),this._indexControl=!1;var n=-1,l=NaN;if(l=i?2147483647:0,"string"==typeof t)for(var o=0,u=this._templet.getAnimationCount();u>o;o++){var c=this._templet.getAnimation(o);if(c&&t==c.name){n=o;break}}else n=t;n>-1&&n<this.getAnimNum()&&(a||this._pause||this._currAniIndex!=n)&&(this._currAniIndex=n,this._curOriginalData=new Float32Array(this._templet.getTotalkeyframesLength(n)),this._drawOrder=null,this._eventIndex=0,this._player.play(n,this._player.playbackRate,l,s,r),this._templet.showSkinByIndex(this._boneSlotDic,this._skinIndex),this._pause&&(this._pause=!1,this._lastTime=h.now(),e.stage.frameLoop(1,this,this._update,null,!0)))},a.stop=function(){this._pause||(this._pause=!0,this._player&&this._player.stop(!0),e.timer.clear(this,this._update))},a.playbackRate=function(t){this._player&&(this._player.playbackRate=t)},a.paused=function(){this._pause||(this._pause=!0,this._player&&(this._player.paused=!0),e.timer.clear(this,this._update))},a.resume=function(){this._indexControl=!1,this._pause&&(this._pause=!1,this._player&&(this._player.paused=!1),this._lastTime=h.now(),e.stage.frameLoop(1,this,this._update,null,!0))},a._getGrahicsDataWithCache=function(t,i){return this._graphicsCache[t][i]},a._setGrahicsDataWithCache=function(t,i,e){this._graphicsCache[t][i]=e},a.destroy=function(i){void 0===i&&(i=!0),t.prototype.destroy.call(this,i),this._templet=null,this._player.offAll(),this._player=null,this._curOriginalData=null,this._boneMatrixArray.length=0,this._lastTime=0,e.timer.clear(this,this._update)},r(0,a,"url",function(){return this._aniPath},function(t){this.load(t)}),r(0,a,"index",function(){return this._index},function(t){this.player&&(this._index=t,this._player.currentTime=1e3*this._index/this._player.cacheFrameRate,this._indexControl=!0,this._update(!1))}),r(0,a,"total",function(){return this._templet&&this._player?this._total=Math.floor(this._templet.getAniDuration(this._player.currentAnimationClipIndex)/1e3*this._player.cacheFrameRate):this._total=-1,this._total}),r(0,a,"player",function(){return this._player}),i}(g),G=(function(t){function i(t){this._start=0,this._Pos=0,this._data=null,this._curIndex=0,this._preIndex=0,this._playIndex=0,this._playing=!1,this._ended=!0,this._count=0,this._ids=null,this._loadedImage={},this._idOfSprite=null,this._parentMovieClip=null,this._movieClipList=null,this._labels=null,this.basePath=null,this._atlasPath=null,this._url=null,this._isRoot=!1,this.interval=30,this.loop=!1,i.__super.call(this),this._ids={},this._idOfSprite=[],this._reset(),this._playing=!1,this._parentMovieClip=t,t?(this._isRoot=!1,this._movieClipList=t._movieClipList,this._movieClipList.push(this)):(this._movieClipList=[this],this._isRoot=!0)}s(i,"laya.ani.swf.MovieClip",t);var a=i.prototype;return a.destroy=function(i){void 0===i&&(i=!0),this._clear(),t.prototype.destroy.call(this,i)},a._setDisplay=function(i){t.prototype._setDisplay.call(this,i),this._isRoot&&this._$3__onDisplay()},a._$3__onDisplay=function(){this._displayedInStage?e.timer.loop(this.interval,this,this.updates,null,!0):e.timer.clear(this,this.updates)},a.updates=function(){if(!this._parentMovieClip){var t=0,i=0;for(i=this._movieClipList.length,t=0;i>t;t++)this._movieClipList[t]&&this._movieClipList[t]._update()}},a.addLabel=function(t,i){this._labels||(this._labels={}),this._labels[i]=t},a.removeLabel=function(t){if(t){if(!this._labels)for(var i in this._labels)if(this._labels[i]===t){delete this._labels[i];break}}else this._labels=null},a._update=function(){if(this._data&&this._playing){if(this._playIndex++,this._playIndex>=this._count){if(!this.loop)return this._playIndex--,void this.stop();this._playIndex=0}this._parse(this._playIndex),this._labels&&this._labels[this._playIndex]&&this.event("label",this._labels[this._playIndex])}},a.stop=function(){this._playing=!1},a.gotoAndStop=function(t){this.index=t,this.stop()},a._clear=function(){if(this.stop(),this._idOfSprite.length=0,!this._parentMovieClip){e.timer.clear(this,this.updates);var t=0,i=0;for(i=this._movieClipList.length,t=0;i>t;t++)this._movieClipList[t]!=this&&this._movieClipList[t]._clear();this._movieClipList.length=0}var a;for(a in this._loadedImage)this._loadedImage[a]&&(_.clearRes(a),this._loadedImage[a]=!1);this.removeChildren(),this.graphics=null,this._parentMovieClip=null},a.play=function(t,i){void 0===t&&(t=0),void 0===i&&(i=!0),this.loop=i,this._playing=!0,this._data&&this._displayFrame(t)},a._displayFrame=function(t){void 0===t&&(t=-1),-1!=t&&(this._curIndex>t&&this._reset(),this._parse(t))},a._reset=function(t){void 0===t&&(t=!0),t&&1!=this._curIndex&&this.removeChildren(),this._preIndex=this._curIndex=-1,this._Pos=this._start},a._parse=function(t){var e,a,s,r=0,n=0,h=0,l=0,o=!1,u=this._idOfSprite,c=this._data;for(this._ended&&this._reset(),c.pos=this._Pos,this._ended=!1,this._playIndex=t,this._curIndex>t&&t<this._preIndex&&(this._reset(!0),c.pos=this._Pos);this._curIndex<=t&&!this._ended;)switch(n=c.getUint16()){case 12:if(r=c.getUint16(),h=this._ids[c.getUint16()],this._Pos=c.pos,c.pos=h,0==(l=c.getUint8())){var p=c.getUint16();if(a=u[r],!a){a=u[r]=new g;var _=new g;_.loadImage(this.basePath+p+".png"),this._loadedImage[this.basePath+p+".png"]=!0,a.addChild(_),_.size(c.getFloat32(),c.getFloat32());var d=c._getMatrix();_.transform=d}a.alpha=1}else 1==l&&(e=u[r],e||(u[r]=e=new i(this),e.interval=this.interval,e._ids=this._ids,e.basePath=this.basePath,e._setData(c,h),e._initState(),e.play(0)),e.alpha=1);c.pos=this._Pos;break;case 3:this.addChild(u[c.getUint16()]).zOrder=c.getUint16(),o=!0;break;case 4:u[c.getUint16()].removeSelf();break;case 5:u[c.getUint16()][i._ValueList[c.getUint16()]]=c.getFloat32();break;case 6:u[c.getUint16()].visible=c.getUint8()>0;break;case 7:a=u[c.getUint16()];var m=a.transform||f.create();m.setTo(c.getFloat32(),c.getFloat32(),c.getFloat32(),c.getFloat32(),c.getFloat32(),c.getFloat32()),a.transform=m;break;case 8:u[c.getUint16()].setPos(c.getFloat32(),c.getFloat32());break;case 9:u[c.getUint16()].setSize(c.getFloat32(),c.getFloat32());break;case 10:u[c.getUint16()].alpha=c.getFloat32();break;case 11:u[c.getUint16()].setScale(c.getFloat32(),c.getFloat32());break;case 98:s=c.getString(),this.event(s),"stop"==s&&this.stop();break;case 99:this._curIndex=c.getUint16(),o&&this.updateZOrder();break;case 100:this._count=this._curIndex+1,this._ended=!0,this._playing&&(this.event("enterframe"),this.event("end"),this.event("complete")),this._reset(!1)}this._playing&&!this._ended&&this.event("enterframe"),this._Pos=c.pos},a._setData=function(t,i){this._data=t,this._start=i+3},a.load=function(t,i,a){void 0===i&&(i=!1),this._url=t=D.formatURL(t),i&&(this._atlasPath=a?a:t.split(".swf")[0]+".json"),this.stop(),this._clear(),this._movieClipList=[this];var s;s=[{url:t,type:"arraybuffer"}],this._atlasPath&&s.push({url:this._atlasPath,type:"atlas"}),e.loader.load(s,p.create(this,this._onLoaded))},a._onLoaded=function(){this.basePath=this._atlasPath?_.getAtlas(this._atlasPath).dir:this._url.split(".swf")[0]+"/image/";var t;t=_.getRes(this._url),t&&this._initData(t)},a._initState=function(){this._reset(),this._ended=!1;var t=this._playing;for(this._playing=!1,this._curIndex=0;!this._ended;)this._parse(++this._curIndex);this._playing=t},a._initData=function(t){this._data=new l(t);var i=0,a=this._data.getUint16();for(i=0;a>i;i++)this._ids[this._data.getInt16()]=this._data.getInt32();this.interval=1e3/this._data.getUint16(),this._setData(this._data,this._ids[32767]),this._initState(),this.play(0),this.event("loaded"),this._parentMovieClip||e.timer.loop(this.interval,this,this.updates,null,!0)},r(0,a,"index",function(){return this._playIndex},function(t){this._playIndex=t,this._data&&this._displayFrame(this._playIndex),this._labels&&this._labels[t]&&this.event("label",this._labels[t])}),r(0,a,"count",function(){return this._count}),r(0,a,"playing",function(){return this._playing}),r(0,a,"url",null,function(t){this.load(t)}),i._ValueList=["x","y","width","height","scaleX","scaleY","rotation","alpha"],i}(g),function(t){function i(){this._mainTexture=null,this._textureJson=null,this._graphicsCache=[],this.srcBoneMatrixArr=[],this.ikArr=[],this.tfArr=[],this.pathArr=[],this.boneSlotDic={},this.bindBoneBoneSlotDic={},this.boneSlotArray=[],this.skinDataArray=[],this.skinDic={},this.subTextureDic={},this.isParseFail=!1,this.url=null,this.yReverseMatrix=null,this.drawOrderAniArr=[],this.eventAniArr=[],this.attachmentNames=null,this.deformAniArr=[],this._rate=60,this.aniSectionDic={},this._skBufferUrl=null,this._textureDic={},this._loadList=null,this._path=null,this.mRootBone=null,i.__super.call(this),this.skinSlotDisplayDataArr=[],this.mBoneArr=[]}s(i,"laya.ani.bone.Templet",t);var a=i.prototype;return a.loadAni=function(t){this._skBufferUrl=t,e.loader.load(t,p.create(this,this.onComplete),null,"arraybuffer")},a.onComplete=function(t){var i=_.getRes(this._skBufferUrl);this._path=this._skBufferUrl.slice(0,this._skBufferUrl.lastIndexOf("/"))+"/",this.parseData(null,i)},a.parseData=function(t,i,e){void 0===e&&(e=60),this._mainTexture=t,this._mainTexture&&m.isWebGL&&t.bitmap&&(t.bitmap.enableMerageInAtlas=!1),this._rate=e,this.parse(i)},a.buildArmature=function(t){return void 0===t&&(t=0),new W(this,t)},a.parse=function(i){t.prototype.parse.call(this,i),this._endLoaded(),this._aniVersion!=K.LAYA_ANIMATION_VISION&&(console.log("[Error] 版本不一致,请使用IDE版本(1.5.3)重新导出"),this._loaded=!1),this._loaded?this._mainTexture?this._parsePublicExtData():this._parseTexturePath():(this.event("error",this),this.isParseFail=!0)},a._parseTexturePath=function(){var t=0;this._loadList=[];var i,a=new l(this.getPublicExtData()),s=0,r=0,n=0,h=0,o=0,u=0,c=0,_=0,d=0,f=a.getUint8(),m=a.readUTFString(),x=m.split("\n");for(t=0;f>t;t++)i=this._path+x[2*t],m=x[2*t+1],s=a.getFloat32(),r=a.getFloat32(),n=a.getFloat32(),h=a.getFloat32(),d=a.getFloat32(),o=isNaN(d)?0:d,d=a.getFloat32(),u=isNaN(d)?0:d,d=a.getFloat32(),c=isNaN(d)?n:d,d=a.getFloat32(),_=isNaN(d)?h:d,-1==this._loadList.indexOf(i)&&this._loadList.push(i);e.loader.load(this._loadList,p.create(this,this._textureComplete))},a._textureComplete=function(){for(var t,i,e=0,a=this._loadList.length;a>e;e++)i=this._loadList[e],t=this._textureDic[i]=_.getRes(i),m.isWebGL&&t&&t.bitmap&&(t.bitmap.enableMerageInAtlas=!1);this._parsePublicExtData()},a._parsePublicExtData=function(){var t=0,i=0,e=0,a=0,s=0;for(t=0,s=this.getAnimationCount();s>t;t++)this._graphicsCache.push([]);var r,n,h=new l(this.getPublicExtData()),o=0,u=0,c=0,p=0,_=0,d=0,m=0,x=0,y=0,g=h.getUint8(),v=h.readUTFString(),D=v.split("\n");for(t=0;g>t;t++)r=this._mainTexture,n=this._path+D[2*t],v=D[2*t+1],null==this._mainTexture&&(r=this._textureDic[n]),o=h.getFloat32(),u=h.getFloat32(),c=h.getFloat32(),p=h.getFloat32(),y=h.getFloat32(),_=isNaN(y)?0:y,y=h.getFloat32(),d=isNaN(y)?0:y,y=h.getFloat32(),m=isNaN(y)?c:y,y=h.getFloat32(),x=isNaN(y)?p:y,this.subTextureDic[v]=M.create(r,o,u,c,p,-_,-d,m,x);this._mainTexture=r;var k,w=h.getUint16();for(t=0;w>t;t++)k=[],k.push(h.getUint16()),k.push(h.getUint16()),k.push(h.getUint16()),k.push(h.getUint16()),this.aniSectionDic[t]=k;var R,Y,X,K,W,G=h.getInt16(),q={};for(t=0;G>t;t++)R=new I,0==t?W=R:R.root=W,X=h.readUTFString(),K=h.readUTFString(),R.length=h.getFloat32(),1==h.getByte()&&(R.inheritRotation=!1),1==h.getByte()&&(R.inheritScale=!1),R.name=X,K&&(Y=q[K],Y?Y.addChild(R):this.mRootBone=R),q[X]=R,this.mBoneArr.push(R);var V,H=h.getUint16(),z=h.getUint16(),Q=Math.floor(z/H),Z=this.srcBoneMatrixArr;for(t=0;Q>t;t++)V=new E,V.scX=h.getFloat32(),V.skX=h.getFloat32(),V.skY=h.getFloat32(),V.scY=h.getFloat32(),V.x=h.getFloat32(),V.y=h.getFloat32(),Z.push(V),R=this.mBoneArr[t],R.transform=V;var $,j=h.getUint16(),J=0;for(t=0;j>t;t++){for($=new C,J=h.getUint16(),i=0;J>i;i++)$.boneNames.push(h.readUTFString()),$.boneIndexs.push(h.getInt16());$.name=h.readUTFString(),$.targetBoneName=h.readUTFString(),$.targetBoneIndex=h.getInt16(),$.bendDirection=h.getFloat32(),$.mix=h.getFloat32(),this.ikArr.push($)}var tt,it=h.getUint16(),et=0;for(t=0;it>t;t++){for(tt=new O,et=h.getUint16(),i=0;et>i;i++)tt.boneIndexs.push(h.getInt16());tt.name=h.getUTFString(),tt.targetIndex=h.getInt16(),tt.rotateMix=h.getFloat32(),tt.translateMix=h.getFloat32(),tt.scaleMix=h.getFloat32(),tt.shearMix=h.getFloat32(),tt.offsetRotation=h.getFloat32(),tt.offsetX=h.getFloat32(),tt.offsetY=h.getFloat32(),tt.offsetScaleX=h.getFloat32(),tt.offsetScaleY=h.getFloat32(),tt.offsetShearY=h.getFloat32(),this.tfArr.push(tt)}var at,st=h.getUint16(),rt=0;for(t=0;st>t;t++){for(at=new P,at.name=h.readUTFString(),rt=h.getUint16(),i=0;rt>i;i++)at.bones.push(h.getInt16());at.target=h.readUTFString(),at.positionMode=h.readUTFString(),at.spacingMode=h.readUTFString(),at.rotateMode=h.readUTFString(),at.offsetRotation=h.getFloat32(),at.position=h.getFloat32(),at.spacing=h.getFloat32(),at.rotateMix=h.getFloat32(),at.translateMix=h.getFloat32(),this.pathArr.push(at)}var nt,ht,lt,ot,ut,ct=0,pt=0,_t=0,dt=0,ft=NaN,mt=0,xt=h.getInt16();for(t=0;xt>t;t++){var yt=h.getUint8(),gt={};this.deformAniArr.push(gt);for(var vt=0;yt>vt;vt++)for(ht=new N,ht.skinName=h.getUTFString(),gt[ht.skinName]=ht,ct=h.getInt16(),i=0;ct>i;i++)for(lt=new A,ht.deformSlotDataList.push(lt),pt=h.getInt16(),e=0;pt>e;e++)for(ot=new T,lt.deformSlotDisplayList.push(ot),ot.slotIndex=_t=h.getInt16(),ot.attachment=nt=h.getUTFString(),dt=h.getInt16(),a=0;dt>a;a++)for(1==h.getByte()?ot.tweenKeyList.push(!0):ot.tweenKeyList.push(!1),ft=h.getFloat32(),ot.timeList.push(ft),ut=[],ot.vectices.push(ut),mt=h.getInt16(),s=0;mt>s;s++)ut.push(h.getFloat32())}var Mt,Dt,It=h.getInt16(),bt=0,Nt=0;for(t=0;It>t;t++){for(bt=h.getInt16(),Mt=[],i=0;bt>i;i++){for(Dt=new S,Dt.time=h.getFloat32(),Nt=h.getInt16(),e=0;Nt>e;e++)Dt.drawOrder.push(h.getInt16());Mt.push(Dt)}this.drawOrderAniArr.push(Mt)}var At,Tt,St=h.getInt16(),Ft=0;for(t=0;St>t;t++){for(Ft=h.getInt16(),At=[],i=0;Ft>i;i++)Tt=new F,Tt.name=h.getUTFString(),Tt.intValue=h.getInt32(),Tt.floatValue=h.getFloat32(),Tt.stringValue=h.getUTFString(),Tt.time=h.getFloat32(),At.push(Tt);this.eventAniArr.push(At)}var kt=h.getInt16();if(kt>0)for(this.attachmentNames=[],t=0;kt>t;t++)this.attachmentNames.push(h.getUTFString());var Ct,wt,Pt=h.getInt16();for(t=0;Pt>t;t++)Ct=new b,Ct.name=h.readUTFString(),Ct.parent=h.readUTFString(),Ct.attachmentName=h.readUTFString(),Ct.srcDisplayIndex=Ct.displayIndex=h.getInt16(),Ct.templet=this,this.boneSlotDic[Ct.name]=Ct,wt=this.bindBoneBoneSlotDic[Ct.parent],null==wt&&(this.bindBoneBoneSlotDic[Ct.parent]=wt=[]),wt.push(Ct),this.boneSlotArray.push(Ct);var Lt,Bt,Ut,Rt=h.readUTFString(),Ot=Rt.split("\n"),Et=0,Yt=h.getUint8(),Xt=0,Kt=0,Wt=0,Gt=0,qt=0,Vt=0,Ht=0;for(t=0;Yt>t;t++){for(Lt=new L,Lt.name=Ot[Et++],Xt=h.getUint8(),i=0;Xt>i;i++){for(Bt=new U,Bt.name=Ot[Et++],Ct=this.boneSlotDic[Bt.name],Kt=h.getUint8(),e=0;Kt>e;e++){if(Ut=new B,this.skinSlotDisplayDataArr.push(Ut),Ut.name=Ot[Et++],Ut.attachmentName=Ot[Et++],Ut.transform=new E,Ut.transform.scX=h.getFloat32(),Ut.transform.skX=h.getFloat32(),Ut.transform.skY=h.getFloat32(),Ut.transform.scY=h.getFloat32(),Ut.transform.x=h.getFloat32(),Ut.transform.y=h.getFloat32(),Bt.displayArr.push(Ut),Ut.width=h.getFloat32(),Ut.height=h.getFloat32(),Ut.type=h.getUint8(),Ut.verLen=h.getUint16(),G=h.getUint16(),G>0)for(Ut.bones=[],a=0;G>a;a++){var zt=h.getUint16();Ut.bones.push(zt)}if(Wt=h.getUint16(),Wt>0)for(Ut.uvs=[],a=0;Wt>a;a++)Ut.uvs.push(h.getFloat32());if(Gt=h.getUint16(),Gt>0)for(Ut.weights=[],a=0;Gt>a;a++)Ut.weights.push(h.getFloat32());if(qt=h.getUint16(),qt>0)for(Ut.triangles=[],a=0;qt>a;a++)Ut.triangles.push(h.getUint16());if(Vt=h.getUint16(),Vt>0)for(Ut.vertices=[],a=0;Vt>a;a++)Ut.vertices.push(h.getFloat32());if(Ht=h.getUint16(),Ht>0)for(Ut.lengths=[],a=0;Ht>a;a++)Ut.lengths.push(h.getFloat32())}Lt.slotArr.push(Bt)}this.skinDic[Lt.name]=Lt,this.skinDataArray.push(Lt)}var Qt=h.getUint8();1==Qt?(this.yReverseMatrix=new f(1,0,0,-1,0,0),W&&W.setTempMatrix(this.yReverseMatrix)):W&&W.setTempMatrix(new f),this.showSkinByIndex(this.boneSlotDic,0),this.event("complete",this)},a.getTexture=function(t){var i=this.subTextureDic[t];return null==i?this._mainTexture:i},a.showSkinByIndex=function(t,i){if(0>i&&i>=this.skinDataArray.length)return!1;var e,a,s=0,r=0,n=this.skinDataArray[i];if(n){for(s=0,r=n.slotArr.length;r>s;s++)a=n.slotArr[s],a&&(e=t[a.name],e&&(e.showSlotData(a),"undefined"!=e.attachmentName&&"null"!=e.attachmentName?e.showDisplayByName(e.attachmentName):e.showDisplayByIndex(e.displayIndex)));return!0}return!1},a.getSkinIndexByName=function(t){for(var i,e=0,a=this.skinDataArray.length;a>e;e++)if(i=this.skinDataArray[e],i.name==t)return e;return-1},a.getGrahicsDataWithCache=function(t,i){return this._graphicsCache[t][i]},a.setGrahicsDataWithCache=function(t,i,e){this._graphicsCache[t][i]=e},a.destroy=function(){var t;for(var e in this.subTextureDic)t=this.subTextureDic[e],t.destroy();var e;for(e in this._textureDic)t=this._textureDic[e],t.destroy();for(var a,s=0,r=this.skinSlotDisplayDataArr.length;r>s;s++)a=this.skinSlotDisplayDataArr[s],a.destory();this.skinSlotDisplayDataArr.length=0,this.url&&delete i.TEMPLET_DICTIONARY[this.url]},a.getAniNameByIndex=function(t){var i=this.getAnimation(t);return i?i.name:null},r(0,a,"rate",function(){return this._rate}),i.TEMPLET_DICTIONARY=null,i}(K))}(window,document,Laya); |