!function(t,e,i){i.un,i.uns;var a=i.static,s=i.class,r=i.getset,n=i.__newvec,h=laya.maths.Bezier,l=laya.utils.Browser,o=laya.utils.Byte,u=(laya.events.Event,laya.events.EventDispatcher),c=laya.display.Graphics,d=laya.resource.HTMLCanvas,_=laya.utils.Handler,p=laya.net.Loader,f=laya.maths.MathUtil,m=laya.maths.Matrix,y=(laya.display.Node,laya.maths.Point,laya.maths.Rectangle),x=laya.renders.Render,g=(laya.renders.RenderContext,laya.resource.Resource),v=laya.utils.RunDriver,M=laya.display.Sprite,D=laya.utils.Stat,I=laya.resource.Texture,N=laya.net.URL,b=laya.utils.Utils,T=function(){function t(){this.nodes=null,this.name=null,this.playTime=NaN,this.bone3DMap=null,this.totalKeyframeDatasLength=0}return s(t,"laya.ani.AnimationContent"),t}(),A=function(){function t(){this.name=null,this.parentIndex=0,this.parent=null,this.keyframeWidth=0,this.lerpType=0,this.interpolationMethod=null,this.childs=null,this.keyFrame=null,this.playTime=NaN,this.extenData=null,this.dataOffset=0}return s(t,"laya.ani.AnimationNodeContent"),t}(),C=function(){function t(){}return s(t,"laya.ani.AnimationParser01"),t.parse=function(t,e){var i=e.__getBuffer(),a=0,s=0,r=0,n=0,h=0,l=0,u=0,c=e.readUTFString();t._aniClassName=c;var d,_=e.readUTFString().split("\n"),p=e.getUint8(),f=e.getUint32(),m=e.getUint32();f>0&&(d=i.slice(f,m));var y=new o(d);for(m>0&&(t._publicExtData=i.slice(m,i.byteLength)),t._useParent=!!e.getUint8(),t._anis.length=p,a=0;a=0&&(M.name=_[D],x.bone3DMap[M.name]=s),M.keyFrame=new Array,M.parentIndex=e.getInt16(),-1==M.parentIndex?M.parent=null:M.parent=x.nodes[M.parentIndex],M.lerpType=e.getUint8();var I=e.getUint32();y.pos=I;var N=M.keyframeWidth=y.getUint16();if(x.totalKeyframeDatasLength+=N,0===M.lerpType||1===M.lerpType)for(M.interpolationMethod=[],M.interpolationMethod.length=N,r=0;r0&&(M.extenData=i.slice(e.pos,e.pos+b),e.pos+=b);var C=e.getUint16();M.keyFrame.length=C;var w,S=0;for(r=0,n=C;r-1e-8&&w.data[h]<1e-8&&(w.data[h]=0);S+=w.duration}w.startTime=x.playTime,M.playTime=x.playTime,t._calculateKeyFrame(M,C,N)}}},t}(),w=function(){function t(){}return s(t,"laya.ani.AnimationParser02"),t.READ_DATA=function(){t._DATA.offset=t._reader.getUint32(),t._DATA.size=t._reader.getUint32()},t.READ_BLOCK=function(){for(var e=t._BLOCK.count=t._reader.getUint16(),i=t._BLOCK.blockStarts=[],a=t._BLOCK.blockLengths=[],s=0;s=0&&(_.name=t._strings[p],u.bone3DMap[_.name]=s),_.keyFrame=new Array,_.parentIndex=e.getInt16(),-1==_.parentIndex?_.parent=null:_.parent=u.nodes[_.parentIndex],u.totalKeyframeDatasLength+=h,_.interpolationMethod=l,null!=_.parent&&_.parent.childs.push(_);var f=e.getUint16();_.keyFrame.length=f;var m=null,y=null;for(r=0,n=f;r-1&&t"0.9.15")&&(this.currTexture=this.currDisplayData.createTexture(this.currTexture))}}else this.displayIndex=-1,this.currDisplayData=null,this.currTexture=null},e.replaceSkin=function(t){this._diyTexture=t,this._curDiyUV&&(this._curDiyUV.length=0),this.currDisplayData&&this._diyTexture==this.currDisplayData.texture&&(this._diyTexture=null)},e.setParentMatrix=function(t){this._parentMatrix=t},e.draw=function(e,i,a,s){if(void 0===a&&(a=!1),void 0===s&&(s=1),(null!=this._diyTexture||null!=this.currTexture)&&null!=this.currDisplayData||this.currDisplayData&&3==this.currDisplayData.type){var r=this.currTexture;this._diyTexture&&(r=this._diyTexture);var n;switch(this.currDisplayData.type){case 0:if(e){var h=this.getDisplayMatrix();if(this._parentMatrix){var l=!1;if(h){m.mul(h,this._parentMatrix,m.TEMP);var o;if(a?(null==this._resultMatrix&&(this._resultMatrix=new m),o=this._resultMatrix):o=new m,!x.isWebGL&&this.currDisplayData.uvs||x.isWebGL&&this._diyTexture&&this.currDisplayData.uvs){var u=t._tempMatrix;u.identity(),this.currDisplayData.uvs[1]>this.currDisplayData.uvs[5]&&(u.d=-1),this.currDisplayData.uvs[0]>this.currDisplayData.uvs[4]&&this.currDisplayData.uvs[1]>this.currDisplayData.uvs[5]&&(l=!0,u.rotate(-Math.PI/2)),m.mul(u,m.TEMP,o)}else m.TEMP.copyTo(o);l?e.drawTexture(r,-this.currDisplayData.height/2,-this.currDisplayData.width/2,this.currDisplayData.height,this.currDisplayData.width,o):e.drawTexture(r,-this.currDisplayData.width/2,-this.currDisplayData.height/2,this.currDisplayData.width,this.currDisplayData.height,o)}}}break;case 1:if(a?(null==this._skinSprite&&(this._skinSprite=t.createSkinMesh()),n=this._skinSprite):n=t.createSkinMesh(),null==n)return;var c;if(null==this.currDisplayData.bones){var d=this.currDisplayData.weights;this.deformData&&(d=this.deformData);var _;this._diyTexture?(this._curDiyUV||(this._curDiyUV=[]),0==this._curDiyUV.length&&(this._curDiyUV=Z.getRelativeUV(this.currTexture.uv,this.currDisplayData.uvs,this._curDiyUV),this._curDiyUV=Z.getAbsoluteUV(this._diyTexture.uv,this._curDiyUV,this._curDiyUV)),_=this._curDiyUV):_=this.currDisplayData.uvs,this._mVerticleArr=d;this.currDisplayData.triangles.length;c=this.currDisplayData.triangles,n.init2(r,null,c,this._mVerticleArr,_);var p=this.getDisplayMatrix();if(this._parentMatrix&&p){m.mul(p,this._parentMatrix,m.TEMP);var f;a?(null==this._resultMatrix&&(this._resultMatrix=new m),f=this._resultMatrix):f=new m,m.TEMP.copyTo(f),n.transform=f}}else this.skinMesh(i,n,s);e.drawSkin(n);break;case 2:if(a?(null==this._skinSprite&&(this._skinSprite=t.createSkinMesh()),n=this._skinSprite):n=t.createSkinMesh(),null==n)return;this.skinMesh(i,n,s),e.drawSkin(n)}}},e.skinMesh=function(t,e,i){var a,s=this.currTexture,r=this.currDisplayData.bones;this._diyTexture?(s=this._diyTexture,this._curDiyUV||(this._curDiyUV=[]),0==this._curDiyUV.length&&(this._curDiyUV=Z.getRelativeUV(this.currTexture.uv,this.currDisplayData.uvs,this._curDiyUV),this._curDiyUV=Z.getAbsoluteUV(this._diyTexture.uv,this._curDiyUV,this._curDiyUV)),a=this._curDiyUV):a=this.currDisplayData.uvs;var n,h,l=this.currDisplayData.weights,o=this.currDisplayData.triangles,u=0,c=0,d=0,_=NaN,p=NaN,f=0,m=0,y=[],x=0,g=0;if(this.deformData&&this.deformData.length>0){var v=0;for(x=0,g=r.length;x0){var A=t.canvasPadding,C=t.canvasPadding,w=(M+D+I)/3,S=(N+b+T)/3,F=M-w,k=N-S,P=Math.sqrt(F*F+k*k);M=w+F/P*(P+A),N=S+k/P*(P+C),k=b-S,D=w+(F=D-w)/(P=Math.sqrt(F*F+k*k))*(P+A),b=S+k/P*(P+C),k=T-S,I=w+(F=I-w)/(P=Math.sqrt(F*F+k*k))*(P+A),T=S+k/P*(P+C)}if(s.save(),this.transform){var B=this.transform;s.transform(B.a,B.b,B.c,B.d,B.tx,B.ty)}s.beginPath(),s.moveTo(M,N),s.lineTo(D,b),s.lineTo(I,T),s.closePath(),s.clip();var U=1/(p*x+y*m+f*g-x*m-y*f-p*g),L=M*x+y*I+D*g-x*I-y*D-M*g,R=p*D+M*m+f*I-D*m-M*f-p*I,O=p*x*I+y*D*m+M*f*g-M*x*m-y*f*I-p*D*g,E=N*x+y*T+b*g-x*T-y*b-N*g,K=p*b+N*m+f*T-b*m-N*f-p*T,Y=p*x*T+y*b*m+N*f*g-N*x*m-y*f*T-p*b*g;s.transform(L*U,E*U,R*U,K*U,O*U,Y*U),s.drawImage(o,h.uv[0]*d,h.uv[1]*_,u,c,h.uv[0]*d,h.uv[1]*_,u,c),s.restore()},t}(),P=function(){function t(){this.texture=null,this.uvs=[0,0,1,0,1,1,0,1],this.vertices=[0,0,100,0,100,100,0,100],this.indexes=[0,1,3,3,1,2],this.uvTransform=null,this.useUvTransform=!1,this.canvasPadding=1}s(t,"laya.ani.bone.canvasmesh.MeshData");return t.prototype.getBounds=function(){return y._getWrapRec(this.vertices)},t}(),B=function(){function t(){this.skinName=null,this.deformSlotDataList=[]}return s(t,"laya.ani.bone.DeformAniData"),t}(),U=function(){function t(){this.deformSlotDisplayList=[]}return s(t,"laya.ani.bone.DeformSlotData"),t}(),L=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 e=t.prototype;return e.binarySearch1=function(t,e){var i=0,a=t.length-2;if(0==a)return 1;for(var s=a>>>1;;){if(t[Math.floor(s+1)]<=e?i=s+1:a=s,i==a)return i+1;s=i+a>>>1}return 0},e.apply=function(t,e,i){if(void 0===i&&(i=1),t+=.05,!(this.timeList.length<=0)){var a=0;if(!(t=this.timeList[this.timeList.length-1]){var h=this.vectices[this.vectices.length-1];if(i<1)for(a=0;a180?c-=360:c<-180&&(c+=360),e.transform.skX=e.transform.skY=e.transform.skX+c*s,e.update()},e.updatePos=function(t,e){this._sp&&this._sp.pos(t,e)},e._applyIk2=function(e,a,s,r,n,h){if(0!=h){var l=e.resultTransform.x,o=e.resultTransform.y,u=e.transform.scX,c=e.transform.scY,d=a.transform.scX,_=0,p=0,f=0;u<0?(u=-u,_=180,f=-1):(_=0,f=1),c<0&&(c=-c,f=-f),d<0?(d=-d,p=180):p=0;var m=a.resultTransform.x,y=NaN,x=NaN,g=NaN,v=e.resultMatrix.a,D=e.resultMatrix.c,I=e.resultMatrix.b,N=e.resultMatrix.d,b=Math.abs(u-c)<=1e-4;b?(x=v*m+D*(y=a.resultTransform.y)+e.resultMatrix.tx,g=I*m+N*y+e.resultMatrix.ty):(y=0,x=v*m+e.resultMatrix.tx,g=I*m+e.resultMatrix.ty),this.isDebug&&(this._sp||(this._sp=new M,i.stage.addChild(this._sp)),this._sp.graphics.clear(),this._sp.graphics.drawCircle(s,r,15,"#ffff00"),this._sp.graphics.drawCircle(x,g,15,"#ff00ff")),e.setRotation(Math.atan2(g-e.resultMatrix.ty,x-e.resultMatrix.tx));var T=e.parentBone;v=T.resultMatrix.a,D=T.resultMatrix.c,I=T.resultMatrix.b;var A=1/(v*(N=T.resultMatrix.d)-D*I),C=s-T.resultMatrix.tx,w=r-T.resultMatrix.ty,S=(C*N-w*D)*A-l,F=(w*v-C*I)*A-o,k=((C=x-T.resultMatrix.tx)*N-(w=g-T.resultMatrix.ty)*D)*A-l,P=(w*v-C*I)*A-o,B=Math.sqrt(k*k+P*P),U=a.length*d,L=NaN,R=NaN;if(b){var O=(S*S+F*F-B*B-(U*=u)*U)/(2*B*U);O<-1?O=-1:O>1&&(O=1),R=Math.acos(O)*n,v=B+U*O,D=U*Math.sin(R),L=Math.atan2(F*v-S*D,S*v+F*D)}else{var E=(v=u*U)*v,K=(D=c*U)*D,Y=S*S+F*F,V=Math.atan2(F,S),W=-2*K*B,X=K-E;if((N=W*W-4*X*(I=K*B*B+E*Y-E*K))>0){var z=Math.sqrt(N);W<0&&(z=-z);var q=(z=-(W+z)/2)/X,G=I/z,H=Math.abs(q)tt&&(J=0,tt=N,et=C),(N=(C=B-v)*C)tt&&(J=at,tt=N,et=C,it=w),Y<=(Z+tt)/2?(L=V-Math.atan2($*n,j),R=Q*n):(L=V-Math.atan2(it*n,et),R=J*n)}var st=Math.atan2(y,m)*f,rt=e.resultTransform.skX;(L=(L-st)*t.radDeg+_-rt)>180?L-=360:L<-180&&(L+=360),e.resultTransform.x=l,e.resultTransform.y=o,e.resultTransform.skX=e.resultTransform.skY=rt+L*h,rt=a.resultTransform.skX,(R=((R+st)*t.radDeg-0)*f+p-(rt%=360))>180?R-=360:R<-180&&(R+=360),a.resultTransform.x=m,a.resultTransform.y=y,a.resultTransform.skX=a.resultTransform.skY=a.resultTransform.skY+R*h,e.update()}},e._applyIk3=function(e,a,s,r,n,h){if(0!=h){var l=NaN,o=NaN,u=a.resultMatrix.a*a.length,c=a.resultMatrix.b*a.length,d=u*u+c*c,_=Math.sqrt(d),p=e.resultMatrix.tx,f=e.resultMatrix.ty,m=a.resultMatrix.tx,y=a.resultMatrix.ty,x=m-p,g=y-f,v=x*x+g*g,D=Math.sqrt(v),I=(x=s-e.resultMatrix.tx)*x+(g=r-e.resultMatrix.ty)*g,N=Math.sqrt(I);if(_+D<=N||N+_<=D||N+D<=_){var b=NaN;m=p+(b=_+D<=N?1:-1)*(s-p)*D/N,y=f+b*(r-f)*D/N}else{var T=(v-d+I)/(2*I),A=Math.sqrt(v-T*T*I)/N,C=p+x*T,w=f+g*T,S=-g*A,F=x*A;n>0?(m=C-S,y=w-F):(m=C+S,y=w+F)}l=m,o=y,this.isDebug&&(this._sp||(this._sp=new M,i.stage.addChild(this._sp)),this._sp.graphics.clear(),this._sp.graphics.drawCircle(p,f,15,"#ff00ff"),this._sp.graphics.drawCircle(s,r,15,"#ffff00"),this._sp.graphics.drawCircle(l,o,15,"#ff00ff"));var k=NaN;k=Math.atan2(o-e.resultMatrix.ty,l-e.resultMatrix.tx),e.setRotation(k);var P;(P=t._tempMatrix).identity(),P.rotate(k),P.scale(e.resultMatrix.getScaleX(),e.resultMatrix.getScaleY()),P.translate(e.resultMatrix.tx,e.resultMatrix.ty),P.copyTo(e.resultMatrix),e.updateChild();var B=NaN;B=Math.atan2(r-o,s-l),a.setRotation(B);var U;(U=t._tempMatrix).identity(),U.rotate(B),U.scale(a.resultMatrix.getScaleX(),a.resultMatrix.getScaleY()),U.translate(l,o),P.copyTo(a.resultMatrix),a.updateChild()}},a(t,["radDeg",function(){return this.radDeg=180/Math.PI},"degRad",function(){return this.degRad=Math.PI/180},"_tempMatrix",function(){return this._tempMatrix=new m}]),t}(),K=function(){function t(){this.name=null,this.targetBoneName=null,this.bendDirection=1,this.mix=1,this.isSpine=!0,this.targetBoneIndex=-1,this.boneNames=[],this.boneIndexs=[]}return s(t,"laya.ani.bone.IkConstraintData"),t}(),Y=function(){function t(){}return s(t,"laya.ani.bone.MeshTools"),t.findEdge=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=!0);var a=0,s=0,r=0;for(s=t.length,r=-1,a=0;a0,r=this.data.spacingMode,n="length"==r,h=this.data.rotateMode,l="tangent"==h,o="chainScale"==h,u=[],c=this.bones.length,d=l?c:c+1,_=[];this._spaces=_,_[0]=this.position;var p=this.spacing;if(o||n)for(var f=0,m=d-1;fMath.PI?U-=2*Math.PI:U<-Math.PI&&(U+=2*Math.PI),U*=a,L=Math.cos(U),R=Math.sin(U),y.resultMatrix.a=L*F-R*P,y.resultMatrix.c=L*k-R*B,y.resultMatrix.b=R*F+L*P,y.resultMatrix.d=R*k+L*B}}}},e.computeWorldVertices2=function(e,i,a,s,r,n){var h,l,o=e.currDisplayData.bones,u=e.currDisplayData.weights,c=e.currDisplayData.triangles,d=0,_=0,p=0,f=0,m=0,y=0,x=0,g=0,v=0,M=0,D=0;if(null!=o){for(d=0;dm)this.addAfterPosition(g-m,d,o-4,_,y);else{for(;;x++)if(D=I[x],!(g>D)){0==x?g/=D:g=(g-(M=I[x-1]))/(D-M);break}if(x!=f){f=x;var X=6*x;for(N=d[X],b=d[X+1],T=d[X+2],A=d[X+3],C=d[X+4],w=d[X+5],L=2*(k=.03*(N-2*T+C))+(B=.006*(3*(T-C)-N+(S=d[X+6]))),R=2*(P=.03*(b-2*A+w))+(U=.006*(3*(A-w)-b+(F=d[X+7]))),O=.3*(T-N)+k+.16666667*B,E=.3*(A-b)+P+.16666667*U,V=Math.sqrt(O*O+E*E),Y[0]=V,X=1;X<8;X++)O+=L,E+=R,L+=B,R+=U,V+=Math.sqrt(O*O+E*E),Y[X]=V;O+=L,E+=R,V+=Math.sqrt(O*O+E*E),Y[8]=V,O+=L+B,E+=R+U,V+=Math.sqrt(O*O+E*E),Y[9]=V,W=0}for(g*=V;;W++)if(D=Y[W],!(g>D)){0==W?g/=D:g=W+(g-(M=Y[W-1]))/(D-M);break}this.addCurvePosition(.1*g,N,b,T,A,C,w,S,F,_,y,s||l>0&&0==v)}return _},e.addBeforePosition=function(t,e,i,a,s){var r=e[i],n=e[i+1],h=e[i+2]-r,l=e[i+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},e.addAfterPosition=function(t,e,i,a,s){var r=e[i+2],n=e[i+3],h=r-e[i],l=n-e[i+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},e.addCurvePosition=function(t,e,i,a,s,r,n,h,l,o,u,c){0==t&&(t=1e-4);var d=t*t,_=d*t,p=1-t,f=p*p,m=f*p,y=p*t,x=3*y,g=p*x,v=x*t,M=e*m+a*g+r*v+h*_,D=i*m+s*g+n*v+l*_;o[u]=M,o[u+1]=D,o[u+2]=c?Math.atan2(D-(i*f+s*y*2+n*d),M-(e*f+a*y*2+r*d)):0},t.NONE=-1,t.BEFORE=-2,t.AFTER=-3,a(t,["_tempMt",function(){return this._tempMt=new m}]),t}(),W=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}(),X=function(){function t(){this.name=null,this.slotArr=[]}return s(t,"laya.ani.bone.SkinData"),t}(),z=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 e=t.prototype;return e.createTexture=function(t){return this.texture?this.texture:(this.texture=new I(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),x.isWebGL||this.uvs[1]>this.uvs[5]&&(this.texture.offsetY=this.texture.sourceHeight-this.texture.height-this.texture.offsetY),this.texture)},e.destory=function(){this.texture&&this.texture.destroy()},t}(),q=function(){function t(){this.name=null,this.displayArr=[]}s(t,"laya.ani.bone.SlotData");return t.prototype.getDisplayByName=function(t){for(var e=0,i=this.displayArr.length;e0){var h=t.resultMatrix.a,l=t.resultMatrix.b,o=t.resultMatrix.c,u=t.resultMatrix.d,c=Math.atan2(a,e)-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 d=Math.cos(c),_=Math.sin(c);t.resultMatrix.a=d*h-_*o,t.resultMatrix.b=d*l-_*u,t.resultMatrix.c=_*h+d*o,t.resultMatrix.d=_*l+d*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 p=Math.sqrt(t.resultMatrix.a*t.resultMatrix.a+t.resultMatrix.c*t.resultMatrix.c),f=Math.sqrt(e*e+a*a),m=p>1e-5?(p+(f-p+this._data.offsetScaleX)*this.scaleMix)/p:0;t.resultMatrix.a*=m,t.resultMatrix.c*=m,p=Math.sqrt(t.resultMatrix.b*t.resultMatrix.b+t.resultMatrix.d*t.resultMatrix.d),f=Math.sqrt(i*i+s*s),m=p>1e-5?(p+(f-p+this._data.offsetScaleY)*this.scaleMix)/p:0,t.resultMatrix.b*=m,t.resultMatrix.d*=m}if(this.shearMix>0){l=t.resultMatrix.b,u=t.resultMatrix.d;var y=Math.atan2(u,l);(c=Math.atan2(s,i)-Math.atan2(a,e)-(y-Math.atan2(t.resultMatrix.c,t.resultMatrix.a)))>Math.PI?c-=2*Math.PI:c<-Math.PI&&(c+=2*Math.PI),c=y+(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}(),H=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}(),Q=function(){function t(){this.skX=0,this.skY=0,this.scX=1,this.scY=1,this.x=0,this.y=0,this.skewX=0,this.skewY=0,this.mMatrix=null}s(t,"laya.ani.bone.Transform");var e=t.prototype;return e.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)},e.getMatrix=function(){var t;return(t=this.mMatrix?this.mMatrix:this.mMatrix=new m).identity(),t.scale(this.scX,this.scY),(this.skewX||this.skewY)&&this.skew(t,this.skewX*Math.PI/180,this.skewY*Math.PI/180),t.rotate(this.skX*Math.PI/180),t.translate(this.x,this.y),t},e.skew=function(t,e,i){var a=Math.sin(i),s=Math.cos(i),r=Math.sin(e),n=Math.cos(e);return t.setTo(t.a*n-t.b*a,t.a*r+t.b*s,t.c*n-t.d*a,t.c*r+t.d*s,t.tx*n-t.ty*a,t.tx*r+t.ty*s),t},t}(),Z=function(){function t(){}return s(t,"laya.ani.bone.UVTools"),t.getRelativeUV=function(t,e,i){var a=t[0],s=t[2]-t[0],r=t[1],n=t[5]-t[1];i||(i=[]),i.length=e.length;var h=0,l=0;l=i.length;var o=1/s,u=1/n;for(h=0;ht&&(this._playEnd=t),this._playDuration=this._playEnd-this._playStart}},a._setPlayParams=function(t,e){this._currentTime=t,this._currentKeyframeIndex=Math.max(Math.floor(this.currentPlayTime/e+.01),0),this._currentFrameTime=this._currentKeyframeIndex*e},a._setPlayParamsWhenStop=function(t,e){this._currentTime=t,this._currentKeyframeIndex=Math.max(Math.floor(t/e+.01),0),this._currentFrameTime=this._currentKeyframeIndex*e,this._currentAnimationClipIndex=-1},a._update=function(t){if(-1!==this._currentAnimationClipIndex&&!this._paused&&this._templet&&this._templet.loaded){var e=this._cacheFrameRateInterval*this._cachePlayRate,i=0;this._startUpdateLoopCount!==D.loopCount&&(i=t*this.playbackRate,this._elapsedPlaybackTime+=i);var a=this.playDuration;if(0!==this._overallDuration&&this._elapsedPlaybackTime>=this._overallDuration||0===this._overallDuration&&this._elapsedPlaybackTime>=a)return this._setPlayParamsWhenStop(a,e),void this.event("stopped");if(i+=this._currentTime,a>0)if(i>=a)do{if(i-=a,this._stopWhenCircleFinish)return this._setPlayParamsWhenStop(a,e),this._stopWhenCircleFinish=!1,void this.event("stopped");i=a);else this._setPlayParams(i,e);else{if(this._stopWhenCircleFinish)return this._setPlayParamsWhenStop(a,e),this._stopWhenCircleFinish=!1,void this.event("stopped");this._currentTime=this._currentFrameTime=this._currentKeyframeIndex=0,this.event("complete")}}},a._destroy=function(){this.offAll(),this._templet=null,this._fullFrames=null,this._destroyed=!0},a.play=function(t,e,i,a,s){if(void 0===t&&(t=0),void 0===e&&(e=1),void 0===i&&(i=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(i<0||a<0||s<0)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=e,this._overallDuration=i,this._playStart=a,this._playEnd=s,this._paused=!1,this._currentAnimationClipIndex=t,this._currentKeyframeIndex=0,this._startUpdateLoopCount=D.loopCount,this.event("played"),this._templet.loaded?this._calculatePlayDuration():this._templet.once("loaded",this,this._onAnimationTempletLoaded),this._update(0)},a.playByFrame=function(t,e,i,a,s,r){void 0===t&&(t=0),void 0===e&&(e=1),void 0===i&&(i=2147483647),void 0===a&&(a=0),void 0===s&&(s=0),void 0===r&&(r=30);var n=1e3/r;this.play(t,e,i,a*n,s*n)},a.stop=function(t){void 0===t&&(t=!0),t?(this._currentTime=this._currentFrameTime=this._currentKeyframeIndex=0,this._currentAnimationClipIndex=-1,this.event("stopped")):this._stopWhenCircleFinish=!0},r(0,a,"playEnd",function(){return this._playEnd}),r(0,a,"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,a,"playStart",function(){return this._playStart}),r(0,a,"playDuration",function(){return this._playDuration}),r(0,a,"state",function(){return-1===this._currentAnimationClipIndex?0:this._paused?1:2}),r(0,a,"currentKeyframeIndex",function(){return this._currentKeyframeIndex}),r(0,a,"overallDuration",function(){return this._overallDuration}),r(0,a,"currentFrameTime",function(){return this._currentFrameTime}),r(0,a,"currentAnimationClipIndex",function(){return this._currentAnimationClipIndex}),r(0,a,"currentPlayTime",function(){return this._currentTime+this._playStart}),r(0,a,"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,a,"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,a,"currentTime",null,function(t){if(-1!==this._currentAnimationClipIndex&&this._templet&&this._templet.loaded){if(tthis._playEnd)throw new Error("AnimationPlayer:value must large than playStartTime,small than playEndTime.");this._startUpdateLoopCount=D.loopCount;var e=this._cacheFrameRateInterval*this._cachePlayRate;this._currentTime=t,this._currentKeyframeIndex=Math.max(Math.floor(this.currentPlayTime/e),0),this._currentFrameTime=this._currentKeyframeIndex*e}}),r(0,a,"paused",function(){return this._paused},function(t){this._paused=t,t&&this.event("paused")}),r(0,a,"cacheFrameRateInterval",function(){return this._cacheFrameRateInterval}),r(0,a,"destroyed",function(){return this._destroyed}),e}(),tt=function(t){function e(){e.__super.call(this),x.isConchNode&&(this.drawSkin=function(t){t.transform||(t.transform=m.EMPTY),this._addCmd([t]),this.setSkinMesh&&this.setSkinMesh(t._ps,t.mVBData,t.mEleNum,0,t.mTexture,t.transform)})}s(e,"laya.ani.GraphicsAni",c);return e.prototype.drawSkin=function(t){var e=[t];this._saveToCmd(x._context._drawSkin,e)},e.create=function(){return e._caches.pop()||new e},e.recycle=function(t){t.clear(),e._caches.push(t)},e._caches=[],e}(),et=function(t){function e(){e.__super.call(this),this.mesh=new P}s(e,"laya.ani.bone.canvasmesh.SkinMeshCanvas",k);var i=e.prototype;return i.init2=function(t,e,i,a,s){this.transform&&(this.transform=null);var r;i?r=i:(r=[]).push(0,1,3,3,1,2),this.mesh.texture=t,this.mesh.indexes=r,this.mesh.vertices=a,this.mesh.uvs=s},i.render=function(t,i,a){this.mesh.texture&&(this.transform?(this.transform.translate(i,a),this.renderToContext(t),this.transform.translate(-i,-a)):(this.transform=e._tempMatrix,this.transform.identity(),this.transform.translate(i,a),this.renderToContext(t),this.transform.translate(-i,-a),this.transform=null))},a(e,["_tempMatrix",function(){return this._tempMatrix=new m}]),e}(),it=function(t){function e(){this._aniMap={},this.unfixedLastAniIndex=-1,e.__super.call(this),this._anis=new Array}s(e,"laya.ani.AnimationTemplet",g);var a=e.prototype;return a.parse=function(t){var e=new o(t);this._aniVersion=e.readUTFString(),C.parse(this,e)},a._calculateKeyFrame=function(t,e,i){var a=t.keyFrame;a[e]=a[0];for(var s=0;sthis.unfixedCurrentTimes[a]);)this.unfixedCurrentFrameIndexes[a]++;this.unfixedCurrentFrameIndexes[a]--}return this.unfixedCurrentFrameIndexes},a.getOriginalDataUnfixedRate=function(t,i,a){var s=this._anis[t].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;hthis.unfixedCurrentTimes[h]);)this.unfixedKeyframes[h]=u.keyFrame[this.unfixedCurrentFrameIndexes[h]],this.unfixedCurrentFrameIndexes[h]++;var c=this.unfixedKeyframes[h];u.dataOffset=o;var d=a-c.startTime;if(u.lerpType)switch(u.lerpType){case 0:case 1:for(r=0;r1&&(a=1),i=0;i0)for(this._ikArr=[],i=0,a=t.ikArr.length;i0){var s,r;null==this._pathDic&&(this._pathDic={});var n;for(i=0,a=t.pathArr.length;i0)for(this._tfArr=[],i=0,a=t.tfArr.length;i0){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,e,a){void 0===a&&(a=0),this._aniPath=t,this._complete=e,this._loadAniMode=a,i.loader.load([{url:t,type:"arraybuffer"}],_.create(this,this._onLoaded))},a._onLoaded=function(){var t=p.getRes(this._aniPath);if(null!=t){null==rt.TEMPLET_DICTIONARY&&(rt.TEMPLET_DICTIONARY={});var e;(e=rt.TEMPLET_DICTIONARY[this._aniPath])?e.isParseFail?this._parseFail():e.isParserComplete?this._parseComplete():(e.on("complete",this,this._parseComplete),e.on("error",this,this._parseFail)):((e=new rt)._setUrl(this._aniPath),rt.TEMPLET_DICTIONARY[this._aniPath]=e,e.on("complete",this,this._parseComplete),e.on("error",this,this._parseFail),e.isParserComplete=!1,e.parseData(null,t))}},a._parseComplete=function(){var t=rt.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,e=this._templet.eventAniArr[this._aniClipIndex];if(e&&this._eventIndex=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,e=0;for(e=this._templet.srcBoneMatrixArr.length,t=0;t=this._player.playStart&&s.time<=this._player.playEnd&&this.event("label",s)}},a._update=function(t){if(void 0===t&&(t=!0),!(this._pause||t&&this._indexControl)){var e=this.timer.currTimer,i=this._player.currentKeyframeIndex,a=e-this._lastTime;if(t?this._player._update(a):i=-1,this._lastTime=e,this._player&&(this._index=this._clipIndex=this._player.currentKeyframeIndex,!(this._index<0||a>0&&this._clipIndex==i&&this._lastUpdateAniClipIndex==this._aniClipIndex))){this._lastUpdateAniClipIndex=this._aniClipIndex,i>this._clipIndex&&0!=this._eventIndex&&(this._emitMissedEvents(this._player.playStart,this._player.playEnd,this._eventIndex),this._eventIndex=0);var s,r=this._templet.eventAniArr[this._aniClipIndex];r&&this._eventIndex=this._player.playStart&&s.time<=this._player.playEnd?this._player.currentPlayTime>=s.time&&(this.event("label",s),this._eventIndex++):this._eventIndex++);var n;if(0==this._aniMode){if(n=this._templet.getGrahicsDataWithCache(this._aniClipIndex,this._clipIndex))return void(this.graphics!=n&&(this.graphics=n));var h=0,l=0;for(l=this._clipIndex;!this._templet.getGrahicsDataWithCache(this._aniClipIndex,l-1)&&l>0;)l--;if(l0;)l--;if(l0)for(this._drawOrderIndex=0,e=a[this._drawOrderIndex];i>=e.time&&(this._drawOrder=e.drawOrder,this._drawOrderIndex++,!(this._drawOrderIndex>=a.length));)e=a[this._drawOrderIndex];var s;0==this._aniMode||1==this._aniMode?this.graphics=tt.create():this.graphics instanceof laya.ani.GraphicsAni?this.graphics.clear():this.graphics=tt.create(),s=this.graphics;var r=this._templet.getNodes(this._aniClipIndex);this._templet.getOriginalData(this._aniClipIndex,this._curOriginalData,this._player._fullFrames[this._aniClipIndex],t,i);var n,h,l,u,c=this._aniSectionDic[this._aniClipIndex],d=0,_=0,p=0,f=0,y=0,x=this._templet.srcBoneMatrixArr.length;for(_=0,y=c[0];_0){if(this._lastAniClipIndex!=this._aniClipIndex)for(this._lastAniClipIndex=this._aniClipIndex,_=0,y=this._boneSlotArray.length;_-1&&n=this._count){if(!this.loop)return this._playIndex--,void this.stop();this._playIndex=0}if(this._parse(this._playIndex),this._labels&&this._labels[this._playIndex]&&this.event("label",this._labels[this._playIndex]),-1!=this._endFrame&&this._endFrame==this._playIndex){if(this._endFrame=-1,null!=this._completeHandler){var t=this._completeHandler;this._completeHandler=null,t.run()}this.stop()}}},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){this.timer.clear(this,this.updates);var t=0,e=0;for(e=this._movieClipList.length,t=0;tt&&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 i,a,s,r=0,n=0,h=0,l=!1,o=this._idOfSprite,u=this._data;for(this._ended&&this._reset(),u.pos=this._Pos,this._ended=!1,this._playIndex=t,this._curIndex>t&&t0;break;case 7:var f=(a=o[u.getUint16()]).transform||m.create();f.setTo(u.getFloat32(),u.getFloat32(),u.getFloat32(),u.getFloat32(),u.getFloat32(),u.getFloat32()),a.transform=f;break;case 8:o[u.getUint16()].setPos(u.getFloat32(),u.getFloat32());break;case 9:o[u.getUint16()].setSize(u.getFloat32(),u.getFloat32());break;case 10:o[u.getUint16()].alpha=u.getFloat32();break;case 11:o[u.getUint16()].setScale(u.getFloat32(),u.getFloat32());break;case 98:s=u.getString(),this.event(s),"stop"==s&&this.stop();break;case 99:this._curIndex=u.getUint16(),l&&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=u.pos},a._setData=function(t,e){this._data=t,this._start=e+3},a.load=function(t,e,a){void 0===e&&(e=!1),this._url=t=N.formatURL(t),e&&(this._atlasPath=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"}),i.loader.load(s,_.create(this,this._onLoaded))},a._onLoaded=function(){var t;(t=p.getRes(this._url))?(this.basePath=this._atlasPath?p.getAtlas(this._atlasPath).dir:this._url.split(".swf")[0]+"/image/",this._initData(t)):this.event("error","file not find")},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 o(t);var e=0,i=this._data.getUint16();for(e=0;e"+e.LAYA_ANIMATION_VISION),this._loaded=!1),this.loaded?this._mainTexture?this._parsePublicExtData():this._parseTexturePath():(this.event("error",this),this.isParseFail=!0)},a._parseTexturePath=function(){if(this._isDestroyed)this.destroy();else{var t=0;this._loadList=[];var e,a=new o(this.getPublicExtData()),s=0,r=0,n=0,h=a.getInt32(),l=a.readUTFString(),u=l.split("\n");for(t=0;t0)for(this.attachmentNames=[],t=0;t0)for(Bt.bones=[],a=0;a0)for(Bt.uvs=[],a=0;a0)for(Bt.weights=[],a=0;a0)for(Bt.triangles=[],a=0;a0)for(Bt.vertices=[],a=0;a0)for(Bt.lengths=[],a=0;a=this.skinDataArray.length)return!1;var a,s,r=0,n=0,h=this.skinDataArray[e];if(h){for(r=0,n=h.slotArr.length;r