<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1, minimum-scale=1,maximum-scale=1"/>
<!--https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html-->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<meta name="format-detection" content="telephone=no">
<!-- force webkit on 360 -->
<meta name="renderer" content="webkit"/>
<meta name="force-rendering" content="webkit"/>
<!-- force edge on IE -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<meta name="msapplication-tap-highlight" content="no">
<!-- force full screen on some browser -->
<meta name="full-screen" content="yes"/>
<meta name="x5-fullscreen" content="true"/>
<meta name="360-fullscreen" content="true"/>
<!-- force screen orientation on some browser -->
<!-- <meta name="screen-orientation" content="portrait"/>
<meta name="x5-orientation" content="portrait"> -->
<meta name="browsermode" content="application">
<meta name="x5-page-mode" content="app">
<meta name="description" content="SUMVIP CLUB - Giàu Phút Mốt - Cổng Game Nổ Hũ - Cổng Game Trúng Lớn - Cổng Game Đại Gia - SUM VIP" />
<meta name="keywords" content="SUMVIP,sumvipclub,sum vip,SUM VIP,socvip,socvipclub,soc vip, soc vip club, sóc vip,no hu, nổ hũ, đẳng cấp quý tộc, taisoc, tai socvip">
<meta property="og:locale" content="vi_VN" />
<meta property="og:type" content="website" />
<meta property="og:title" content="SUMVIP CLUB - Cổng Game Nổ Hũ - Cổng Game Trúng Lớn - Cổng Game Đại Gia" />
<meta property="og:description" content="SUM VIP Club - Cổng Game Uy Tín - Chơi SUMVIP - trúng lớn, hũ to, chơi game thành đại gia" />
<meta property="og:url" content="https://sumvip.club/" />
<meta property="og:site_name" content="sumvip.club" />
=g.max)){var h=0,k,m,n,p,r,s=cc.Node._performStacks[cc.Node._performing];s||(s=[],cc.Node._performStacks.push(s));s.length=0;cc.Node._performing++;for(n=s[0]= this;n;){if((k=n._children)&&0n._localZOrder)n.visit(this);else break;for(f.pushRenderCommand(g);hk||h>k)return cc.log(cc._LogInfos.Texture2D_initWithImage_2,g,h,k,k),!1;this._textureLoaded=!0;return this._initPremultipliedATextureWithImage(f, g,h)},initWithElement:function(f){f&&(this._webTextureObj=cc._renderContext.createTexture(),this._htmlElementObj=f,this._hasPremultipliedAlpha=this._textureLoaded=!0)},getHtmlElementObj:function(){return this._htmlElementObj},isLoaded:function(){return this._textureLoaded},handleLoadedTexture:function(f){f=void 0!==f?f:this._hasPremultipliedAlpha;if(cc.game._rendererInitialized&&this._htmlElementObj&&this._htmlElementObj.width&&this._htmlElementObj.height){var g=cc._renderContext;cc.glBindTexture2D(this); g.pixelStorei(g.UNPACK_ALIGNMENT,4);f&&g.pixelStorei(g.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1);g.texImage2D(g.TEXTURE_2D,0,g.RGBA,g.RGBA,g.UNSIGNED_BYTE,this._htmlElementObj);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_MIN_FILTER,g.LINEAR);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_MAG_FILTER,g.LINEAR);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_WRAP_S,g.CLAMP_TO_EDGE);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_WRAP_T,g.CLAMP_TO_EDGE);this.shaderProgram=cc.shaderCache.programForKey(cc.SHADER_POSITION_TEXTURE);cc.glBindTexture2D(null); f&&g.pixelStorei(g.UNPACK_PREMULTIPLY_ALPHA_WEBGL,0);g=this._htmlElementObj.height;this._pixelsWide=this._contentSize.width=this._htmlElementObj.width;this._pixelsHigh=this._contentSize.height=g;this._pixelFormat=cc.Texture2D.PIXEL_FORMAT_RGBA8888;this.maxT=this.maxS=1;this._hasPremultipliedAlpha=f;this._hasMipmaps=!1;window.ENABLE_IMAEG_POOL&&(this._htmlElementObj=null);this.dispatchEvent("load")}},initWithString:function(f,g,h,k,m,n){cc.log(cc._LogInfos.Texture2D_initWithString);return null},initWithETCFile:function(f){cc.log(cc._LogInfos.Texture2D_initWithETCFile_2); return!1},initWithPVRFile:function(f){cc.log(cc._LogInfos.Texture2D_initWithPVRFile_2);return!1},initWithPVRTCData:function(f,g,h,k,m,n){cc.log(cc._LogInfos.Texture2D_initWithPVRTCData_2);return!1},setTexParameters:function(f,g,h,k){var m=cc._renderContext;void 0!==g&&(f={minFilter:f,magFilter:g,wrapS:h,wrapT:k});cc.assert(this._pixelsWide===cc.NextPOT(this._pixelsWide)&&this._pixelsHigh===cc.NextPOT(this._pixelsHigh)||f.wrapS===m.CLAMP_TO_EDGE&&f.wrapT===m.CLAMP_TO_EDGE,"WebGLRenderingContext.CLAMP_TO_EDGE should be used in NPOT textures"); cc.glBindTexture2D(this);m.texParameteri(m.TEXTURE_2D,m.TEXTURE_MIN_FILTER,f.minFilter);m.texParameteri(m.TEXTURE_2D,m.TEXTURE_MAG_FILTER,f.magFilter);m.texParameteri(m.TEXTURE_2D,m.TEXTURE_WRAP_S,f.wrapS);m.texParameteri(m.TEXTURE_2D,m.TEXTURE_WRAP_T,f.wrapT)},setAntiAliasTexParameters:function(){var f=cc._renderContext;cc.glBindTexture2D(this);this._hasMipmaps?f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,f.LINEAR_MIPMAP_NEAREST):f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,f.LINEAR);f.texParameteri(f.TEXTURE_2D, f.TEXTURE_MAG_FILTER,f.LINEAR)},setAliasTexParameters:function(){var f=cc._renderContext;cc.glBindTexture2D(this);this._hasMipmaps?f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,f.NEAREST_MIPMAP_NEAREST):f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,f.NEAREST);f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,f.NEAREST)},generateMipmap:function(){cc.assert(this._pixelsWide===cc.NextPOT(this._pixelsWide)&&this._pixelsHigh===cc.NextPOT(this._pixelsHigh),"Mimpap texture only works in POT textures"); cc.glBindTexture2D(this);cc._renderContext.generateMipmap(cc._renderContext.TEXTURE_2D);this._hasMipmaps=!0},stringForFormat:function(){return cc.Texture2D._M[this._pixelFormat]},bitsPerPixelForFormat:function(f){f=f||this._pixelFormat;var g=cc.Texture2D._B[f];if(null!=g)return g;cc.log(cc._LogInfos.Texture2D_bitsPerPixelForFormat,f);return-1},_initPremultipliedATextureWithImage:function(f,g,h){var k=cc.Texture2D,m=f.getData(),n=null,n=null,p=f.hasAlpha(),r=cc.size(f.getWidth(),f.getHeight()),s=k.defaultPixelFormat, t=f.getBitsPerComponent();p||(8<=t?s=k.PIXEL_FORMAT_RGB888:(cc.log(cc._LogInfos.Texture2D__initPremultipliedATextureWithImage),s=k.PIXEL_FORMAT_RGB565));var u=g*h;if(s===k.PIXEL_FORMAT_RGB565)if(p)for(m=new Uint16Array(g*h),n=f.getData(),t=0;t>0&255)>>3<<11|(n[t]>>8&255)>>2<<5|(n[t]>>16&255)>>3<<0;else for(m=new Uint16Array(g*h),n=f.getData(),t=0;t>3<<11|(n[t]&255)>>2<<5|(n[t]&255)>>3<<0;else if(s===k.PIXEL_FORMAT_RGBA4444)for(m=new Uint16Array(g*h),n=f.getData(), t=0;t>0&255)>>4<<12|(n[t]>>8&255)>>4<<8|(n[t]>>16&255)>>4<<4|(n[t]>>24&255)>>4<<0;else if(s===k.PIXEL_FORMAT_RGB5A1)for(m=new Uint16Array(g*h),n=f.getData(),t=0;t>0&255)>>3<<11|(n[t]>>8&255)>>3<<6|(n[t]>>16&255)>>3<<1|(n[t]>>24&255)>>7<<0;else if(s===k.PIXEL_FORMAT_A8)for(m=new Uint8Array(g*h),n=f.getData(),t=0;t>24&255;if(p&&s===k.PIXEL_FORMAT_RGB888)for(n=f.getData(),m=new Uint8Array(g*h*3),t=0;t>0&255,m[3*t+1]=n>>8&255,m[3*t+2]= n>>16&255;this.initWithData(m,s,g,h,r);f.getData();this._hasPremultipliedAlpha=f.isPremultipliedAlpha();return!0},addLoadedEventListener:function(f,g){this.addEventListener("load",f,g)},removeLoadedEventListener:function(f){this.removeEventTarget("load",f)}})}; cc._tmp.WebGLTextureAtlas=function(){var f=cc.TextureAtlas.prototype;f._setupVBO=function(){var f=cc._renderContext;this._buffersVBO[0]=f.createBuffer();this._buffersVBO[1]=f.createBuffer();this._quadsWebBuffer=f.createBuffer();this._mapBuffers()};f._mapBuffers=function(){var f=cc._renderContext;f.bindBuffer(f.ARRAY_BUFFER,this._quadsWebBuffer);f.bufferData(f.ARRAY_BUFFER,this._quadsArrayBuffer,f.DYNAMIC_DRAW);f.bindBuffer(f.ELEMENT_ARRAY_BUFFER,this._buffersVBO[1]);f.bufferData(f.ELEMENT_ARRAY_BUFFER, this._indices,f.STATIC_DRAW)};f.drawNumberOfQuads=function(f,h){h=h||0;if(0!==f&&this.texture&&this.texture.isLoaded()){var k=cc._renderContext;cc.glBindTexture2D(this.texture);k.bindBuffer(k.ARRAY_BUFFER,this._quadsWebBuffer);this.dirty&&(k.bufferData(k.ARRAY_BUFFER,this._quadsArrayBuffer,k.DYNAMIC_DRAW),this.dirty=!1);k.enableVertexAttribArray(cc.VERTEX_ATTRIB_POSITION);k.enableVertexAttribArray(cc.VERTEX_ATTRIB_COLOR);k.enableVertexAttribArray(cc.VERTEX_ATTRIB_TEX_COORDS);k.vertexAttribPointer(cc.VERTEX_ATTRIB_POSITION, 3,k.FLOAT,!1,24,0);k.vertexAttribPointer(cc.VERTEX_ATTRIB_COLOR,4,k.UNSIGNED_BYTE,!0,24,12);k.vertexAttribPointer(cc.VERTEX_ATTRIB_TEX_COORDS,2,k.FLOAT,!1,24,16);k.bindBuffer(k.ELEMENT_ARRAY_BUFFER,this._buffersVBO[1]);cc.TEXTURE_ATLAS_USE_TRIANGLE_STRIP?k.drawElements(k.TRIANGLE_STRIP,6*f,k.UNSIGNED_SHORT,6*h*this._indices.BYTES_PER_ELEMENT):k.drawElements(k.TRIANGLES,6*f,k.UNSIGNED_SHORT,6*h*this._indices.BYTES_PER_ELEMENT);cc.g_NumberOfDraws++}}}; cc._tmp.WebGLTextureCache=function(){var f=cc.textureCache;f.handleLoadedTexture=function(f,h){var k=this._textures,m;cc.game._rendererInitialized||(k=this._loadedTexturesBefore);m=k[f];m||(m=k[f]=new cc.Texture2D,m.url=f);m.initWithElement(h);".png"===cc.path.extname(f)?m.handleLoadedTexture(!0):m.handleLoadedTexture();return m};f.addImage=function(f,h,k){cc.assert(f,cc._LogInfos.Texture2D_addImage_2);var m=this._textures;cc.game._rendererInitialized||(m=this._loadedTexturesBefore);var n=m[f]||m[cc.loader._getAliase(f)]; if(n)return n.isLoaded()?h&&h.call(k,n):n.addEventListener("load",function(){h&&h.call(k,n)},k),n;n=m[f]=new cc.Texture2D;n.url=f;m=cc.loader.getBasePath?cc.loader.getBasePath():cc.loader.resPath;cc.loader.loadImg(cc.path.join(m||"",f),function(m,n){if(m)return h&&h.call(k,m);var s=cc.textureCache.handleLoadedTexture(f,n);h&&h.call(k,s)});return n};f.addImageAsync=f.addImage;f=null};cc._tmp.PrototypeTexture2D=function(){var f=cc.Texture2D;f.PVRImagesHavePremultipliedAlpha=function(f){cc.PVRHaveAlphaPremultiplied_=f};f.PIXEL_FORMAT_RGBA8888=2;f.PIXEL_FORMAT_RGB888=3;f.PIXEL_FORMAT_RGB565=4;f.PIXEL_FORMAT_A8=5;f.PIXEL_FORMAT_I8=6;f.PIXEL_FORMAT_AI88=7;f.PIXEL_FORMAT_RGBA4444=8;f.PIXEL_FORMAT_RGB5A1=7;f.PIXEL_FORMAT_PVRTC4=9;f.PIXEL_FORMAT_PVRTC2=10;f.PIXEL_FORMAT_DEFAULT=f.PIXEL_FORMAT_RGBA8888;f.defaultPixelFormat=f.PIXEL_FORMAT_DEFAULT;var g=cc.Texture2D._M={};g[f.PIXEL_FORMAT_RGBA8888]= "RGBA8888";g[f.PIXEL_FORMAT_RGB888]="RGB888";g[f.PIXEL_FORMAT_RGB565]="RGB565";g[f.PIXEL_FORMAT_A8]="A8";g[f.PIXEL_FORMAT_I8]="I8";g[f.PIXEL_FORMAT_AI88]="AI88";g[f.PIXEL_FORMAT_RGBA4444]="RGBA4444";g[f.PIXEL_FORMAT_RGB5A1]="RGB5A1";g[f.PIXEL_FORMAT_PVRTC4]="PVRTC4";g[f.PIXEL_FORMAT_PVRTC2]="PVRTC2";g=cc.Texture2D._B={};g[f.PIXEL_FORMAT_RGBA8888]=32;g[f.PIXEL_FORMAT_RGB888]=24;g[f.PIXEL_FORMAT_RGB565]=16;g[f.PIXEL_FORMAT_A8]=8;g[f.PIXEL_FORMAT_I8]=8;g[f.PIXEL_FORMAT_AI88]=16;g[f.PIXEL_FORMAT_RGBA4444]= 16;g[f.PIXEL_FORMAT_RGB5A1]=16;g[f.PIXEL_FORMAT_PVRTC4]=4;g[f.PIXEL_FORMAT_PVRTC2]=3;f=cc.Texture2D.prototype;cc.defineGetterSetter(f,"name",f.getName);cc.defineGetterSetter(f,"pixelFormat",f.getPixelFormat);cc.defineGetterSetter(f,"pixelsWidth",f.getPixelsWide);cc.defineGetterSetter(f,"pixelsHeight",f.getPixelsHigh);cc.defineGetterSetter(f,"width",f._getWidth);cc.defineGetterSetter(f,"height",f._getHeight)}; cc._tmp.PrototypeTextureAtlas=function(){var f=cc.TextureAtlas.prototype;cc.defineGetterSetter(f,"totalQuads",f.getTotalQuads);cc.defineGetterSetter(f,"capacity",f.getCapacity);cc.defineGetterSetter(f,"quads",f.getQuads,f.setQuads)};cc.ALIGN_CENTER=51;cc.ALIGN_TOP=19;cc.ALIGN_TOP_RIGHT=18;cc.ALIGN_RIGHT=50;cc.ALIGN_BOTTOM_RIGHT=34;cc.ALIGN_BOTTOM=35;cc.ALIGN_BOTTOM_LEFT=33;cc.ALIGN_LEFT=49;cc.ALIGN_TOP_LEFT=17;cc.PVRHaveAlphaPremultiplied_=!1; cc.game.addEventListener(cc.game.EVENT_RENDERER_INITED,function(){if(cc._renderType===cc.game.RENDER_TYPE_CANVAS){var f={_contentSize:null,_textureLoaded:!1,_htmlElementObj:null,url:null,_pattern:null,ctor:function(){this._contentSize=cc.size(0,0);this._textureLoaded=!1;this._htmlElementObj=null;this._pattern="";this._pixelsHigh=this._pixelsWide=0},getPixelsWide:function(){return this._pixelsWide},getPixelsHigh:function(){return this._pixelsHigh},getContentSize:function(){var f=cc.contentScaleFactor(); return cc.size(this._contentSize.width/f,this._contentSize.height/f)},_getWidth:function(){return this._contentSize.width/cc.contentScaleFactor()},_getHeight:function(){return this._contentSize.height/cc.contentScaleFactor()},getContentSizeInPixels:function(){return this._contentSize},initWithElement:function(f){f&&(this._htmlElementObj=f,this._pixelsWide=this._contentSize.width=f.width,this._pixelsHigh=this._contentSize.height=f.height,this._textureLoaded=!0)},getHtmlElementObj:function(){return this._htmlElementObj}, isLoaded:function(){return this._textureLoaded},handleLoadedTexture:function(){if(this._htmlElementObj){var f=this._htmlElementObj;this._pixelsWide=this._contentSize.width=f.width;this._pixelsHigh=this._contentSize.height=f.height;this.dispatchEvent("load")}},description:function(){return"\x3ccc.Texture2D | width \x3d "+this._contentSize.width+" height "+this._contentSize.height+"\x3e"},initWithData:function(f,h,k,m,n){return!1},initWithImage:function(f){return!1},initWithString:function(f,h,k,m, n,p){return!1},releaseTexture:function(){this._htmlElementObj=null;cc.loader.release(this.url)},getName:function(){return null},getMaxS:function(){return 1},setMaxS:function(f){},getMaxT:function(){return 1},setMaxT:function(f){},getPixelFormat:function(){return null},getShaderProgram:function(){return null},setShaderProgram:function(f){},hasPremultipliedAlpha:function(){return!1},hasMipmaps:function(){return!1},releaseData:function(f){},keepData:function(f,h){return f},drawAtPoint:function(f){}, drawInRect:function(f){},initWithETCFile:function(f){cc.log(cc._LogInfos.Texture2D_initWithETCFile);return!1},initWithPVRFile:function(f){cc.log(cc._LogInfos.Texture2D_initWithPVRFile);return!1},initWithPVRTCData:function(f,h,k,m,n,p){cc.log(cc._LogInfos.Texture2D_initWithPVRTCData);return!1},setTexParameters:function(f,h,k,m){void 0!==h&&(f={minFilter:f,magFilter:h,wrapS:k,wrapT:m});this._pattern=f.wrapS===cc.REPEAT&&f.wrapT===cc.REPEAT?"repeat":f.wrapS===cc.REPEAT?"repeat-x":f.wrapT===cc.REPEAT? "repeat-y":""},setAntiAliasTexParameters:function(){},setAliasTexParameters:function(){},generateMipmap:function(){},stringForFormat:function(){return""},bitsPerPixelForFormat:function(f){return-1},addLoadedEventListener:function(f,h){this.addEventListener("load",f,h)},removeLoadedEventListener:function(f){this.removeEventTarget("load",f)},_generateColorTexture:function(){},_generateTextureCacheForColor:function(){if(this.channelCache)return this.channelCache;var f=[document.createElement("canvas"), document.createElement("canvas"),document.createElement("canvas"),document.createElement("canvas")],h=this._htmlElementObj,k=h.width,m=h.height;f[0].width=k;f[0].height=m;f[1].width=k;f[1].height=m;f[2].width=k;f[2].height=m;f[3].width=k;f[3].height=m;var n=f[3].getContext("2d");n.drawImage(h,0,0);for(var n=n.getImageData(0,0,k,m).data,p,r=0;4>r;r++){p=f[r].getContext("2d");for(var s=p.getImageData(0,0,k,m),t=s.data,u=0;uthis._capacity)cc.log(cc._LogInfos.TextureAtlas_insertQuad);else{var h=cc.V3F_C4B_T2F_Quad.BYTES_PER_ELEMENT,k=g*h,m=(this._totalQuads- 1-g)*h;this._quads[this._totalQuads-1]=new cc.V3F_C4B_T2F_Quad(null,null,null,null,this._quadsArrayBuffer,(this._totalQuads-1)*h);this._quadsReader.set(this._quadsReader.subarray(k,k+m),k+h);this._setQuadToArray(f,g);this.dirty=!0}},insertQuads:function(f,g,h){h=h||f.length;cc.assert(g+h<=this._capacity,cc._LogInfos.TextureAtlas_insertQuads);var k=cc.V3F_C4B_T2F_Quad.BYTES_PER_ELEMENT;this._totalQuads+=h;if(this._totalQuads>this._capacity)cc.log(cc._LogInfos.TextureAtlas_insertQuad);else{var m=g* k,n=(this._totalQuads-1-g-h)*k,p=this._totalQuads-1-h,r;for(r=0;rg?(n=g*h,k.set(k.subarray(n,n+(f-g)*h),n+h),k.set(m,n)):(n=(f+1)*h,k.set(k.subarray(n,n+(g-f)*h),n-h),k.set(m,g*h));this.dirty=!0}},removeQuadAtIndex:function(f){cc.assert(fh){n=[];p=new ArrayBuffer(g*k);for(f=0;fh?(g=new Uint16Array(6*k),g.set(this._indices,0),this._indices=g):this._indices=this._indices.subarray(0,6*k);this._setupIndices();this._mapBuffers(); return this.dirty=!0},increaseTotalQuadsWith:function(f){this._totalQuads+=f},moveQuadsFromIndex:function(f,g,h){if(void 0===h){if(h=g,g=this._totalQuads-f,cc.assert(h+(this._totalQuads-f)<=this._capacity,cc._LogInfos.TextureAtlas_moveQuadsFromIndex),0===g)return}else if(cc.assert(h+g<=this._totalQuads,cc._LogInfos.TextureAtlas_moveQuadsFromIndex_2),cc.assert(fn._localZOrder)n.visit(this);else break;for(f.pushRenderCommand(g);hchild._localZOrder)child.visit(this);else break;for(f.pushRenderCommand(g);h=this._layers.length?cc.log(cc._LogInfos.LayerMultiplex_switchTo):(this.removeChild(this._layers[this._enabledLayer],!0),this._enabledLayer=f,this.addChild(this._layers[f]))},switchToAndReleaseMe:function(f){f>=this._layers.length?cc.log(cc._LogInfos.LayerMultiplex_switchToAndReleaseMe):(this.removeChild(this._layers[this._enabledLayer],!0),this._layers[this._enabledLayer]=null,this._enabledLayer=f,this.addChild(this._layers[f]))},addLayer:function(f){f?this._layers.push(f): cc.log(cc._LogInfos.LayerMultiplex_addLayer)}});cc.LayerMultiplex.create=function(){return new cc.LayerMultiplex(Array.prototype.slice.call(arguments))};(function(){cc.Layer.CanvasRenderCmd=function(f){this._rootCtor(f);this._isBaked=!1;this._bakeSprite=null;this._canUseDirtyRegion=!0;this._updateCache=2};var f=cc.Layer.CanvasRenderCmd.prototype=Object.create(cc.Node.CanvasRenderCmd.prototype);f.constructor=cc.Layer.CanvasRenderCmd;f._layerCmdCtor=cc.Layer.CanvasRenderCmd;f._setCacheDirty=function(f){f&&0===this._updateCache&&(this._updateCache=2);!1===this._cacheDirty&&(this._cacheDirty=!0,(f=this._cachedParent)&&f!==this&&f._setNodeDirtyForCache&& f._setNodeDirtyForCache())};f.updateStatus=function(){var f=cc.Node._dirtyFlags;this._dirtyFlag&f.orderDirty&&(this._cacheDirty=!0,0===this._updateCache&&(this._updateCache=2),this._dirtyFlag&=~f.orderDirty);this.originUpdateStatus()};f._syncStatus=function(f){var h=cc.Node._dirtyFlags,k=this._dirtyFlag;if(this._isBaked||k&h.orderDirty)this._cacheDirty=!0,0===this._updateCache&&(this._updateCache=2),this._dirtyFlag&=~h.orderDirty;this._originSyncStatus(f)};f.transform=function(f,h){this._worldTransform|| (this._worldTransform={a:1,b:0,c:0,d:1,tx:0,ty:0});var k=this._worldTransform,m=k.a,n=k.b,p=k.c,r=k.d;this.originTransform(f,h);k.a===m&&k.b===n&&k.c===p&&k.d===r||0!==this._updateCache||(this._updateCache=2)};f.bake=function(){if(!this._isBaked){this._needDraw=!0;this._isBaked=this._cacheDirty=cc.renderer.childrenOrderDirty=!0;0===this._updateCache&&(this._updateCache=2);for(var f=this._node._children,h=0,k=f.length;hr._localZOrder)r.visit(f);else break;for(cc.renderer.pushRenderCommand(this);mh;h++)f[4*h+3]=this._color[0];this._dataDirty=!0};f.rendering=function(f){f=f||cc._renderContext; var h=this._node;this._matrix||(this._matrix=new cc.math.Matrix4,this._matrix.identity());var k=this._worldTransform;this._matrix.mat[0]=k.a;this._matrix.mat[4]=k.c;this._matrix.mat[12]=k.tx;this._matrix.mat[1]=k.b;this._matrix.mat[5]=k.d;this._matrix.mat[13]=k.ty;this._dataDirty&&(this._vertexBuffer||(this._vertexBuffer=f.createBuffer()),f.bindBuffer(f.ARRAY_BUFFER,this._vertexBuffer),f.bufferData(f.ARRAY_BUFFER,this._data,f.DYNAMIC_DRAW),this._dataDirty=!1);this._glProgramState.apply(this._matrix); cc.glBlendFunc(h._blendFunc.src,h._blendFunc.dst);f.bindBuffer(f.ARRAY_BUFFER,this._vertexBuffer);f.enableVertexAttribArray(cc.VERTEX_ATTRIB_POSITION);f.enableVertexAttribArray(cc.VERTEX_ATTRIB_COLOR);f.vertexAttribPointer(cc.VERTEX_ATTRIB_POSITION,3,f.FLOAT,!1,16,0);f.vertexAttribPointer(cc.VERTEX_ATTRIB_COLOR,4,f.UNSIGNED_BYTE,!0,16,12);f.drawArrays(f.TRIANGLE_STRIP,0,4)};f.updateBlendFunc=function(f){}})(); (function(){cc.LayerGradient.WebGLRenderCmd=function(f){cc.LayerColor.WebGLRenderCmd.call(this,f);this._needDraw=!0;this._clipRect=new cc.Rect;this._clippingRectDirty=!1};var f=cc.LayerGradient.WebGLRenderCmd.prototype=Object.create(cc.LayerColor.WebGLRenderCmd.prototype);f.constructor=cc.LayerGradient.WebGLRenderCmd;f.updateStatus=function(){var f=cc.Node._dirtyFlags;this._dirtyFlag&f.gradientDirty&&(this._dirtyFlag|=f.colorDirty,this._updateVertex(),this._dirtyFlag&=~f.gradientDirty);this.originUpdateStatus()}; f._syncStatus=function(f){var h=cc.Node._dirtyFlags;this._dirtyFlag&h.gradientDirty&&(this._dirtyFlag|=h.colorDirty,this._updateVertex(),this._dirtyFlag&=~h.gradientDirty);this._originSyncStatus(f)};f.transform=function(f,h){this.originTransform(f,h);this._updateVertex()};f._updateVertex=function(){var f=this._node,h=f._colorStops;if(h&&!(2>h.length)){this._clippingRectDirty=!0;var k,m=h.length,n=2*m,p=f._contentSize;this._positionView.length/4k?(t=cc.p(-n.x,n.y),k=cc.p(n.x,n.y)):180>k?(t=cc.p(n.x,n.y),k=cc.p(n.x,-n.y)):270>k?(t=cc.p(n.x,-n.y),k=cc.p(-n.x,-n.y)):(t=cc.p(-n.x,-n.y),k=cc.p(-n.x,n.y));var u=Math.sin(r),r=Math.cos(r);t=Math.abs((t.x*r-t.y*u)/n.x);k=Math.abs((k.x*u+k.y*r)/n.y);s=cc.affineTransformScale(s,t,k);u=this._positionView;for(k=0;kf.length)){var h=f.length,k,m=this._colorView,n=this._displayedOpacity/255;for(i=0;if.width&&cc.error(cc._LogInfos.RectWidth,f.url),k>f.height&&cc.error(cc._LogInfos.RectHeight, f.url))};f.rendering=function(f,h,k){var m=this._node,n=this._textureCoord,p=this._displayedOpacity/255,r=this._textureToRender||m._texture;if((!r||0!==n.width&&0!==n.height&&r._textureLoaded)&&0!==p){f=f||cc._renderContext;var s=f.getContext(),t=m._offsetPosition.x,u=m._rect.height,v=m._rect.width,w=-m._offsetPosition.y-u;f.setTransform(this._worldTransform,h,k);f.setCompositeOperation(this._blendFuncStr);f.setGlobalAlpha(p);(m._flippedX||m._flippedY)&&f.save();m._flippedX&&(t=-t-v,s.scale(-1,1)); m._flippedY&&(w=m._offsetPosition.y,s.scale(1,-1));var x,y,z;this._colorized?x=p=0:(p=n.renderX,x=n.renderY);y=n.width;z=n.height;r&&r._htmlElementObj?(h=r._htmlElementObj,""!==r._pattern?(f.setFillStyle(s.createPattern(h,r._pattern)),s.fillRect(t,w,v,u)):s.drawImage(h,p,x,y,z,t,w,v,u)):(r=m._contentSize,n.validRect&&(n=this._displayedColor,f.setFillStyle("rgba("+n.r+","+n.g+","+n.b+",1)"),s.fillRect(t,w,r.width*h,r.height*k)));(m._flippedX||m._flippedY)&&f.restore();cc.g_NumberOfDraws++}};f._updateColor= function(){var f=this._node._texture,h=this._textureCoord,k=this._displayedColor;f&&(255!==k.r||255!==k.g||255!==k.b?(this._textureToRender=f._generateColorTexture(k.r,k.g,k.b,h),this._colorized=!0):f&&(this._textureToRender=f,this._colorized=!1))};f._textureLoadedCallback=function(f){if(!this._textureLoaded){this._textureLoaded=!0;var h=this._rect,k=this._renderCmd;h?cc._rectEqualToZero(h)&&(h.width=f.width,h.height=f.height):h=cc.rect(0,0,f.width,f.height);this.texture=f;this.setTextureRect(h,this._rectRotated); f=k._displayedColor;255===f.r&&255===f.g&&255===f.b||k._updateColor();this.setBatchNode(this._batchNode);this.dispatchEvent("load")}};f._setTextureCoords=function(f,h){void 0===h&&(h=!0);var k=this._textureCoord,m=h?cc.contentScaleFactor():1;k.renderX=k.x=0|f.x*m;k.renderY=k.y=0|f.y*m;k.width=0|f.width*m;k.height=0|f.height*m;k.validRect=!(0===k.width||0===k.height||0>k.x||0>k.y)};cc.Sprite.CanvasRenderCmd._cutRotateImageToCanvas=function(f,h,k){if(!f)return null;if(!h)return f;k=null==k?!0:k;var m= document.createElement("canvas");m.width=h.width;m.height=h.height;var n=m.getContext("2d");n.translate(m.width/2,m.height/2);k?n.rotate(-1.5707963267948966):n.rotate(1.5707963267948966);n.drawImage(f,h.x,h.y,h.height,h.width,-h.height/2,-h.width/2,h.height,h.width);return m}})();(function(){cc.Sprite.WebGLRenderCmd=function(f){this._rootCtor(f);this._needDraw=!0;this._vertices=[{x:0,y:0,u:0,v:0},{x:0,y:0,u:0,v:0},{x:0,y:0,u:0,v:0},{x:0,y:0,u:0,v:0}];this._color=new Uint32Array(1);this._recursiveDirty=this._dirty=!1;this._shaderProgram=cc.shaderCache.programForKey(cc.SHADER_SPRITE_POSITION_TEXTURECOLOR)};var f=cc.Sprite.WebGLRenderCmd.prototype=Object.create(cc.Node.WebGLRenderCmd.prototype);f.constructor=cc.Sprite.WebGLRenderCmd;f._spriteCmdCtor=cc.Sprite.WebGLRenderCmd; f.updateBlendFunc=function(f){};f.setDirtyFlag=function(f){cc.Node.WebGLRenderCmd.prototype.setDirtyFlag.call(this,f);this._dirty=!0};f.setDirtyRecursively=function(f){this._dirty=this._recursiveDirty=f;for(var h=this._node._children,k,m=h?h.length:0,n=0;nf.width&&cc.error(cc._LogInfos.RectWidth,f.url),h>f.height&&cc.error(cc._LogInfos.RectHeight,f.url))};f.transform=function(f,h){this.originTransform(f,h);var k=this._node,m=k._offsetPosition.x, n=m+k._rect.width,p=k._offsetPosition.y,r=p+k._rect.height,s=this._worldTransform,k=s.tx,t=s.ty,u=m*s.a,m=m*s.b,v=n*s.a,n=n*s.b,w=r*s.c,r=r*s.d,x=p*s.c,p=p*s.d,s=this._vertices;s[0].x=u+w+k;s[0].y=m+r+t;s[1].x=u+x+k;s[1].y=m+p+t;s[2].x=v+w+k;s[2].y=n+r+t;s[3].x=v+x+k;s[3].y=n+p+t};f.needDraw=function(){var f=this._node._texture;return this._needDraw&&f};f.uploadData=function(f,h,k){var m=this._node,n=m._texture;if(!(n&&n._textureLoaded&&m._rect.width&&m._rect.height&&this._displayedOpacity))return 0; var n=this._displayedOpacity,p=this._displayedColor.r,r=this._displayedColor.g,s=this._displayedColor.b;if(m._opacityModifyRGB)var t=n/255,p=p*t,r=r*t,s=s*t;this._color[0]=n<<24|s<<16|r<<8|p;m=m._vertexZ;n=this._vertices;p=n.length;s=k;for(k=0;kf.getPixelsWide()&&cc.error(cc._LogInfos.RectWidth,f.url);p>f.getPixelsHigh()&&cc.error(cc._LogInfos.RectHeight,f.url)}this._offsetInPixels.x= k.x;this._offsetInPixels.y=k.y;cc._pointPixelsToPointsOut(k,this._offset);this._originalSizeInPixels.width=m.width;this._originalSizeInPixels.height=m.height;cc._sizePixelsToPointsOut(m,this._originalSize);this._rotated=h;return!0}});cc.EventHelper.prototype.apply(cc.SpriteFrame.prototype);cc.SpriteFrame.create=function(f,g,h,k,m){return new cc.SpriteFrame(f,g,h,k,m)};cc.SpriteFrame.createWithTexture=cc.SpriteFrame.create; cc.SpriteFrame._frameWithTextureForCanvas=function(f,g,h,k,m){var n=new cc.SpriteFrame;n._texture=f;n._rectInPixels=g;n._rect=cc.rectPixelsToPoints(g);n._offsetInPixels.x=k.x;n._offsetInPixels.y=k.y;cc._pointPixelsToPointsOut(n._offsetInPixels,n._offset);n._originalSizeInPixels.width=m.width;n._originalSizeInPixels.height=m.height;cc._sizePixelsToPointsOut(n._originalSizeInPixels,n._originalSize);n._rotated=h;return n};cc.spriteFrameCache={_CCNS_REG1:/^\s*\{\s*([\-]?\d+[.]?\d*)\s*,\s*([\-]?\d+[.]?\d*)\s*\}\s*$/,_CCNS_REG2:/^\s*\{\s*\{\s*([\-]?\d+[.]?\d*)\s*,\s*([\-]?\d+[.]?\d*)\s*\}\s*,\s*\{\s*([\-]?\d+[.]?\d*)\s*,\s*([\-]?\d+[.]?\d*)\s*\}\s*\}\s*$/,_spriteFrames:{},_spriteFramesAliases:{},_frameConfigCache:{},_rectFromString:function(f){return(f=this._CCNS_REG2.exec(f))?cc.rect(parseFloat(f[1]),parseFloat(f[2]),parseFloat(f[3]),parseFloat(f[4])):cc.rect(0,0,0,0)},_pointFromString:function(f){return(f=this._CCNS_REG1.exec(f))? cc.p(parseFloat(f[1]),parseFloat(f[2])):cc.p(0,0)},_sizeFromString:function(f){return(f=this._CCNS_REG1.exec(f))?cc.size(parseFloat(f[1]),parseFloat(f[2])):cc.size(0,0)},_getFrameConfig:function(f){var g=cc.loader.getRes(f);cc.assert(g,cc._LogInfos.spriteFrameCache__getFrameConfig_2,f);cc.loader.release(f);if(g._inited)return this._frameConfigCache[f]=g;this._frameConfigCache[f]=this._parseFrameConfig(g);return this._frameConfigCache[f]},_getFrameConfigByJsonObject:function(f,g){cc.assert(g,cc._LogInfos.spriteFrameCache__getFrameConfig_2, f);this._frameConfigCache[f]=this._parseFrameConfig(g);return this._frameConfigCache[f]},_parseFrameConfig:function(f){var g=f.frames,h=f.metadata||f.meta;f={};var k={},m=0;h&&(m=h.format,m=1>=m.length?parseInt(m):m,k.image=h.textureFileName||h.textureFileName||h.image);for(var n in g){var p=g[n];if(p){h={};if(0==m){h.rect=cc.rect(p.x,p.y,p.width,p.height);h.rotated=!1;h.offset=cc.p(p.offsetX,p.offsetY);var r=p.originalWidth,p=p.originalHeight;r&&p||cc.log(cc._LogInfos.spriteFrameCache__getFrameConfig); r=Math.abs(r);p=Math.abs(p);h.size=cc.size(r,p)}else if(1==m||2==m)h.rect=this._rectFromString(p.frame),h.rotated=p.rotated||!1,h.offset=this._pointFromString(p.offset),h.size=this._sizeFromString(p.sourceSize);else if(3==m){var r=this._sizeFromString(p.spriteSize),s=this._rectFromString(p.textureRect);r&&(s=cc.rect(s.x,s.y,r.width,r.height));h.rect=s;h.rotated=p.textureRotated||!1;h.offset=this._pointFromString(p.spriteOffset);h.size=this._sizeFromString(p.spriteSourceSize);h.aliases=p.aliases}else r= p.frame,s=p.sourceSize,n=p.filename||n,h.rect=cc.rect(r.x,r.y,r.w,r.h),h.rotated=p.rotated||!1,h.offset=cc.p(0,0),h.size=cc.size(s.w,s.h);f[n]=h}}return{_inited:!0,frames:f,meta:k}},_addSpriteFramesByObject:function(f,g,h){cc.assert(f,cc._LogInfos.spriteFrameCache_addSpriteFrames_2);g&&g.frames&&(g=this._frameConfigCache[f]||this._getFrameConfigByJsonObject(f,g),this._createSpriteFrames(f,g,h))},_createSpriteFrames:function(f,g,h){var k=g.frames;g=g.meta;h?h instanceof cc.Texture2D||(cc.isString(h)? h=cc.textureCache.addImage(h):cc.assert(0,cc._LogInfos.spriteFrameCache_addSpriteFrames_3)):(h=cc.path.changeBasename(f,g.image||".png"),h=cc.textureCache.addImage(h));f=this._spriteFramesAliases;g=this._spriteFrames;for(var m in k){var n=k[m],p=g[m];if(!p){p=new cc.SpriteFrame(h,cc.rect(n.rect),n.rotated,n.offset,n.size);if(n=n.aliases)for(var r=0,s=n.length;r=h)){for(;h>f;){var k=g.pop();k.running&&(k._performRecursive(cc.Node._stateCallbackType.onExitTransitionDidStart),k._performRecursive(cc.Node._stateCallbackType.onExit));k._performRecursive(cc.Node._stateCallbackType.cleanup);h--}this._nextScene=g[g.length-1];this._sendCleanupToScene=!0}},getScheduler:function(){return this._scheduler}, setScheduler:function(f){this._scheduler!==f&&(this._scheduler=f)},getActionManager:function(){return this._actionManager},setActionManager:function(f){this._actionManager!==f&&(this._actionManager=f)},getDeltaTime:function(){return this._deltaTime},_calculateMPF:function(){this._secondsPerFrame=(Date.now()-this._lastUpdate)/1E3}});cc.Director.EVENT_PROJECTION_CHANGED="director_projection_changed";cc.Director.EVENT_AFTER_UPDATE="director_after_update";cc.Director.EVENT_AFTER_VISIT="director_after_visit"; cc.Director.EVENT_AFTER_DRAW="director_after_draw";cc.DisplayLinkDirector=cc.Director.extend({invalid:!1,startAnimation:function(){this._nextDeltaTimeZero=!0;this.invalid=!1},mainLoop:function(){this._purgeDirectorInNextLoop?(this._purgeDirectorInNextLoop=!1,this.purgeDirector()):this.invalid||this.drawScene()},stopAnimation:function(){this.invalid=!0},setAnimationInterval:function(f){this._animationInterval=f;this.invalid||(this.stopAnimation(),this.startAnimation())}}); cc.Director.sharedDirector=null;cc.Director.firstUseDirector=!0;cc.Director._getInstance=function(){cc.Director.firstUseDirector&&(cc.Director.firstUseDirector=!1,cc.Director.sharedDirector=new cc.DisplayLinkDirector,cc.Director.sharedDirector.init());return cc.Director.sharedDirector};cc.defaultFPS=60;cc.Director.PROJECTION_2D=0;cc.Director.PROJECTION_3D=1;cc.Director.PROJECTION_CUSTOM=3;cc.Director.PROJECTION_DEFAULT=cc.Director.PROJECTION_3D;cc.game.addEventListener(cc.game.EVENT_RENDERER_INITED,function(){if(cc._renderType===cc.game.RENDER_TYPE_CANVAS){var f=cc.Director.prototype;f.getProjection=function(f){return this._projection};f.setProjection=function(f){this._projection=f;cc.eventManager.dispatchEvent(this._eventProjectionChanged)};f.setDepthTest=function(){};f.setClearColor=function(f){cc.renderer._clearColor=f;cc.renderer._clearFillStyle="rgb("+f.r+","+f.g+","+f.b+")"};f.setOpenGLView=function(f){this._winSizeInPoints.width= cc._canvas.width;this._winSizeInPoints.height=cc._canvas.height;this._openGLView=f||cc.view;cc.eventManager&&cc.eventManager.setEnabled(!0)};f.getVisibleSize=function(){return this.getWinSize()};f.getVisibleOrigin=function(){return cc.p(0,0)}}else cc.Director._fpsImage=new Image,cc.Director._fpsImage.addEventListener("load",function(){cc.Director._fpsImageLoaded=!0}),cc._fpsImage&&(cc.Director._fpsImage.src=cc._fpsImage)});cc.game.addEventListener(cc.game.EVENT_RENDERER_INITED,function(){if(cc._renderType===cc.game.RENDER_TYPE_WEBGL){cc.DirectorDelegate=cc.Class.extend({updateProjection:function(){}});var f=cc.Director.prototype,g=function(f){if(f&&f._renderCmd){f._renderCmd.setDirtyFlag(cc.Node._dirtyFlags.transformDirty);var k=f._children;for(f=0;fg.length&&g.push(f)};var h=function(f,g,h,k){this.list= f;this.entry=g;this.target=h;this.callback=k},k=[];h.get=function(f,g,m,n){var p=k.pop();p?(p.list=f,p.entry=g,p.target=m,p.callback=n):p=new h(f,g,m,n);return p};h.put=function(f){f.list=null;f.entry=null;f.target=null;f.callback=null;20>k.length&&k.push(f)};var m=function(f,g,h,k,m,n){this.timers=f;this.target=g;this.timerIndex=h;this.currentTimer=k;this.currentTimerSalvaged=m;this.paused=n},n=[];m.get=function(f,g,h,k,p,r){var y=n.pop();y?(y.timers=f,y.target=g,y.timerIndex=h,y.currentTimer=k, y.currentTimerSalvaged=p,y.paused=r):y=new m(f,g,h,k,p,r);return y};m.put=function(f){f.timers=null;f.target=null;f.timerIndex=0;f.currentTimer=null;f.currentTimerSalvaged=!1;f.paused=!1;20>n.length&&n.push(f)};var p=function(){this._scheduler=null;this._elapsed=-1;this._useDelay=this._runForever=!1;this._interval=this._delay=this._repeat=this._timesExecuted=0;this._key=this._callback=this._target=null};cc.inject({initWithCallback:function(f,g,h,k,m,n,p){this._scheduler=f;this._target=h;this._callback= g;p&&(this._key=p);this._elapsed=-1;this._interval=k;this._delay=n;this._useDelay=0=this._interval&&(this.trigger(),this._elapsed=0):(this._useDelay?this._elapsed>=this._delay&&(this.trigger(), this._elapsed-=this._delay,this._timesExecuted+=1,this._useDelay=!1):this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0,this._timesExecuted+=1),this._callback&&!this._runForever&&this._timesExecuted>this._repeat&&this.cancel()))},getCallback:function(){return this._callback},getKey:function(){return this._key},trigger:function(){this._target&&this._callback&&this._callback.call(this._target,this._elapsed)},cancel:function(){this._scheduler.unschedule(this._callback,this._target)}},p.prototype); var r=[];p.get=function(){return r.pop()||new p};p.put=function(f){f._scheduler=null;f._elapsed=-1;f._runForever=!1;f._useDelay=!1;f._timesExecuted=0;f._repeat=0;f._delay=0;f._interval=0;f._target=null;f._callback=null;f._key=null;20>r.length&&r.push(f)};cc.Scheduler=cc.Class.extend({_timeScale:1,_updatesNegList:null,_updates0List:null,_updatesPosList:null,_hashForTimers:null,_arrayForTimers:null,_hashForUpdates:null,_currentTarget:null,_currentTargetSalvaged:!1,_updateHashLocked:!1,ctor:function(){this._timeScale= 1;this._updatesNegList=[];this._updates0List=[];this._updatesPosList=[];this._hashForUpdates={};this._hashForTimers={};this._currentTarget=null;this._updateHashLocked=this._currentTargetSalvaged=!1;this._arrayForTimers=[]},_schedulePerFrame:function(f,g,h,k){var m=this._hashForUpdates[g.__instanceId];if(m&&m.entry)if(m.entry.priority!==h){if(this._updateHashLocked){cc.log("warning: you CANNOT change update priority in scheduled function");m.entry.markedForDeletion=!1;m.entry.paused=k;return}this.unscheduleUpdate(g)}else{m.entry.markedForDeletion= !1;m.entry.paused=k;return}0===h?this._appendIn(this._updates0List,f,g,k):0>h?this._priorityIn(this._updatesNegList,f,g,h,k):this._priorityIn(this._updatesPosList,f,g,h,k)},_removeHashElement:function(f){delete this._hashForTimers[f.target.__instanceId];for(var g=this._arrayForTimers,h=0,k=g.length;h=m&&h.timerIndex--;0===k.length&&(this._currentTarget===h?this._currentTargetSalvaged= !0:this._removeHashElement(h));break}}}},unscheduleUpdate:function(f){f&&(f=this._hashForUpdates[f.__instanceId])&&(this._updateHashLocked?f.entry.markedForDeletion=!0:this._removeUpdateFromHash(f.entry))},unscheduleAllForTarget:function(f){if(f){var g=this._hashForTimers[f.__instanceId];if(g){var h=g.timers;-1f)for(g=0;g=f&&this.unscheduleUpdate(h.target),k==this._updatesNegList.length&&g++;if(0>=f)for(g=0;g=f&&this.unscheduleUpdate(h.target),k==this._updatesPosList.length&&g++},isScheduled:function(f,g){cc.assert(f,"Argument callback must not be empty");cc.assert(g,"Argument target must be non-nullptr");var h=this._hashForTimers[g.__instanceId];if(!h)return!1;if(null!=h.timers)for(var h= h.timers,k=0;kf)for(m=0;m=f&&(h.paused=!0,g.push(h.target));if(0>=f)for(m=0;m=f&&(h.paused=!0,g.push(h.target));return g},resumeTargets:function(f){if(f)for(var g=0;gf.length)throw Error("Polygon's point must greater than 2");var m=f[0];g=this._renderContext.getContext(); g.beginPath();g.moveTo(m.x,-m.y);for(var m=1,n=f.length;m\u3001\u2018\u201c\u300b\u00bb\uff1f\u3002\uff0c\uff01\u2010\u2032-\u2034\u203a\u203c\u2046\u2047-\u2049]/;cc.LabelTTF._lastWordRex=/([a-zA-Z0-9\-\u00bf\u00a1\u00ab\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02af\u0300-\u034e\u0350-\u036F\u0370-\u052f\u2011\u2035-\u2037\u2039\u2045]+|\S)$/; cc.LabelTTF._lastEnglish=/[a-zA-Z0-9\-\u00bf\u00a1\u00ab\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02af\u0300-\u034e\u0350-\u036F\u0370-\u052f\u2011\u2035-\u2037\u2039\u2045]+$/;cc.LabelTTF._firsrEnglish=/^[a-zA-Z0-9\-\u00bf\u00a1\u00ab\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02af\u0300-\u034e\u0350-\u036F\u0370-\u052f\u2011\u2035-\u2037\u2039\u2045]/; (function(){cc.LabelTTF.RenderCmd=function(){this._fontClientHeight=18;this._fontStyleStr="";this._shadowColorStr="rgba(128, 128, 128, 0.5)";this._strokeColorStr="";this._fillColorStr="rgba(255,255,255,1)";this._labelContext=this._labelCanvas=null;this._lineWidths=[];this._strings=[];this._isMultiLine=!1;this._status=[];this._renderingIndex=0;this._canUseDirtyRegion=!0};var f=cc.LabelTTF.RenderCmd.prototype;f.constructor=cc.LabelTTF.RenderCmd;f._labelCmdCtor=cc.LabelTTF.RenderCmd;f._setFontStyle= function(f,g,m,n){if(f instanceof cc.FontDefinition)this._fontStyleStr=f._getCanvasFontStr(),this._fontClientHeight=cc.LabelTTF.__getFontHeightByDiv(f);else{var p=g*cc.view.getDevicePixelRatio();this._fontStyleStr=m+" "+n+" "+p+"px '"+f+"'";this._fontClientHeight=cc.LabelTTF.__getFontHeightByDiv(f,g)}};f._getFontStyle=function(){return this._fontStyleStr};f._getFontClientHeight=function(){return this._fontClientHeight};f._updateColor=function(){this._setColorsString();this._updateTexture()};f._setColorsString= function(){var f=this._displayedColor,g=this._node,m=g._shadowColor||this._displayedColor,n=g._strokeColor,p=g._textFillColor,r=f.r/255,s=f.g/255,f=f.b/255;this._shadowColorStr="rgba("+(0|r*m.r)+","+(0|s*m.g)+","+(0|f*m.b)+","+g._shadowOpacity+")";this._fillColorStr="rgba("+(0|r*p.r)+","+(0|s*p.g)+","+(0|f*p.b)+", 1)";this._strokeColorStr="rgba("+(0|r*n.r)+","+(0|s*n.g)+","+(0|f*n.b)+", 1)"};var g=new cc.Rect;f.getLocalBB=function(){var f=this._node;g.x=g.y=0;var k=cc.view.getDevicePixelRatio();g.width= f._getWidth()*k;g.height=f._getHeight()*k;return g};f._updateTTF=function(){var f=this._node,g=cc.view.getDevicePixelRatio(),m=f._dimensions.width*g,n,p,r=this._lineWidths;r.length=0;this._isMultiLine=!1;this._measureConfig();var s={};if(0!==m)for(this._strings=f._string.split("\n"),n=0;nm&&1m&&100>w++;)r*=m/t,r|=0,s=n.substr(r), t=p-this._measure(s);for(w=0;tw++;)s&&(v=(u=cc.LabelTTF._wordRex.exec(s))?u[0].length:1,u=s),r+=v,s=n.substr(r),t=p-this._measure(s);r-=v;0===r&&(r=1,u=u.substr(1));m=n.substr(0,r);cc.LabelTTF.wrapInspection&&cc.LabelTTF._symbolRex.test(u||s)&&(p=cc.LabelTTF._lastWordRex.exec(m),r-=p?p[0].length:0,0===r&&(r=1),u=n.substr(r),m=n.substr(0,r));cc.LabelTTF._firsrEnglish.test(u)&&(p=cc.LabelTTF._lastEnglish.exec(m))&&m!==p[0]&&(r-=p[0].length,u=n.substr(r),m=n.substr(0,r));f[g]=u||s;f.splice(g, 0,m)}};f.updateStatus=function(){this._dirtyFlag&cc.Node._dirtyFlags.textDirty&&this._updateTexture();this.originUpdateStatus()};f._syncStatus=function(f){var g=cc.Node._dirtyFlags,m=this._dirtyFlag;m&g.textDirty&&this._updateTexture();this._originSyncStatus(f);(cc._renderType===cc.game.RENDER_TYPE_WEBGL||m&g.transformDirty)&&this.transform(f)};f.drawLabels=function(f,g,m){var n=this._node;if(n._shadowEnabled){var p=n._shadowOffset;f.shadowColor=this._shadowColorStr;f.shadowOffsetX=p.x;f.shadowOffsetY= -p.y;f.shadowBlur=n._shadowBlur}var p=n._hAlignment,r=n._vAlignment,s=n._strokeSize;f.font!==this._fontStyleStr&&(f.font=this._fontStyleStr);f.fillStyle=this._fillColorStr;if(n=n._strokeEnabled)f.lineWidth=2*s,f.strokeStyle=this._strokeColorStr;f.textBaseline=cc.LabelTTF._textBaseline[r];f.textAlign=cc.LabelTTF._textAlign[p];p=this._strings.length;for(r=0;r=this._status.length)){var p= this._renderingIndex>=this._status.length?this._renderingIndex-this._status.length:this._renderingIndex,r=this._status[p];this._renderingIndex=p+1;var s=n._offsetPosition.x,p=-n._offsetPosition.y-n._rect.height,t=this._displayedOpacity/255;f.setTransform(this._worldTransform,h,k);f.setCompositeOperation(this._blendFuncStr);f.setGlobalAlpha(t);f.save();n._flippedX&&(s=-s-n._rect.width,m.scale(-1,1));n._flippedY&&(p=n._offsetPosition.y,m.scale(1,-1));h=r.xOffset+r.contextTransform.x+s*h;n=[];s=this._strings.length; for(t=0;t=h&&g.actionIndex--;break}}else cc.log(cc._LogInfos.ActionManager_removeAction)}},removeActionByTag:function(f,g){f===cc.ACTION_TAG_INVALID&&cc.log(cc._LogInfos.ActionManager_addAction); cc.assert(g,cc._LogInfos.ActionManager_addAction);var h=this._hashTargets[g.__instanceId];if(h)for(var k=h.actions.length,m=0;m=f&&g.actionIndex--;0===g.actions.length&&this._deleteHashElement(g)},_deleteHashElement:function(f){var g=!1;if(f&&!f.lock&&this._hashTargets[f.target.__instanceId]){delete this._hashTargets[f.target.__instanceId];for(var g=this._arrayTargets,h=0,k=g.length;hB;++B){var G=C[B].style;G.color="rgb(0, 255, 255)";G.font="bold 12px Helvetica, Arial";G.lineHeight="20px";G.width="100%";u.appendChild(C[B])}var E=function(){m=cc.director.getSecondsPerFrame();h++;n+=cc.director.getDeltaTime();if(n>cc.DIRECTOR_FPS_INTERVAL){k=h/n;n=h=0;if(D.onFrameRateChange){var g=k,p=w.length-1,u=p,C=0;z++;for(A+=g;0<=u;u--)if(g>=w[u]){x[u]++;break}if(z>=v){C=A/v;for(u=p;0=w[u]){u!=y&&(y=u,D.onFrameRateChange&&D.onFrameRateChange(C.toFixed(2))); break}A=z=_changeCount=0;for(u=p;0g&&f-cc.math.EPSILONg.x-f.math.EPSILON&&this.yg.y-f.math.EPSILON}})(cc);(function(f){f.math.Vec3=f.kmVec3=function(f,g,m){f&&void 0===g?(this.x=f.x,this.y=f.y,this.z=f.z):(this.x=f||0,this.y=g||0,this.z=m||0)};f.math.vec3=function(g,k,m){return new f.math.Vec3(g,k,m)};var g=f.math.Vec3.prototype;g.fill=function(f,g,m){f&&void 0===g?(this.x=f.x,this.y=f.y,this.z=f.z):(this.x=f,this.y=g,this.z=m);return this};g.length=function(){return Math.sqrt(f.math.square(this.x)+f.math.square(this.y)+f.math.square(this.z))};g.lengthSq=function(){return f.math.square(this.x)+f.math.square(this.y)+ f.math.square(this.z)};g.normalize=function(){var f=1/this.length();this.x*=f;this.y*=f;this.z*=f;return this};g.cross=function(f){var g=this.x,m=this.y,n=this.z;this.x=m*f.z-n*f.y;this.y=n*f.x-g*f.z;this.z=g*f.y-m*f.x;return this};g.dot=function(f){return this.x*f.x+this.y*f.y+this.z*f.z};g.add=function(f){this.x+=f.x;this.y+=f.y;this.z+=f.z;return this};g.subtract=function(f){this.x-=f.x;this.y-=f.y;this.z-=f.z;return this};g.transform=function(f){var g=this.x,m=this.y,n=this.z;f=f.mat;this.x=g* f[0]+m*f[4]+n*f[8]+f[12];this.y=g*f[1]+m*f[5]+n*f[9]+f[13];this.z=g*f[2]+m*f[6]+n*f[10]+f[14];return this};g.transformNormal=function(f){var g=this.x,m=this.y,n=this.z;f=f.mat;this.x=g*f[0]+m*f[4]+n*f[8];this.y=g*f[1]+m*f[5]+n*f[9];this.z=g*f[2]+m*f[6]+n*f[10];return this};g.transformCoord=function(g){var k=new f.math.Vec4(this.x,this.y,this.z,1);k.transform(g);this.x=k.x/k.w;this.y=k.y/k.w;this.z=k.z/k.w;return this};g.scale=function(f){this.x*=f;this.y*=f;this.z*=f;return this};g.equals=function(g){var k= f.math.EPSILON;return this.xg.x-k&&this.yg.y-k&&this.zg.z-k};g.inverseTransform=function(g){g=g.mat;var k=new f.math.Vec3(this.x-g[12],this.y-g[13],this.z-g[14]);this.x=k.x*g[0]+k.y*g[1]+k.z*g[2];this.y=k.x*g[4]+k.y*g[5]+k.z*g[6];this.z=k.x*g[8]+k.y*g[9]+k.z*g[10];return this};g.inverseTransformNormal=function(f){var g=this.x,m=this.y,n=this.z;f=f.mat;this.x=g*f[0]+m*f[1]+n*f[2];this.y=g*f[4]+m*f[5]+n*f[6];this.z=g*f[8]+m*f[9]+n*f[10];return this};g.assignFrom= function(f){if(!f)return this;this.x=f.x;this.y=f.y;this.z=f.z;return this};f.math.Vec3.zero=function(f){f.x=f.y=f.z=0;return f};g.toTypeArray=function(){var f=new Float32Array(3);f[0]=this.x;f[1]=this.y;f[2]=this.z;return f}})(cc);(function(f){f.math.Vec4=function(f,g,m,n){f&&void 0===g?(this.x=f.x,this.y=f.y,this.z=f.z,this.w=f.w):(this.x=f||0,this.y=g||0,this.z=m||0,this.w=n||0)};f.kmVec4=f.math.Vec4;var g=f.math.Vec4.prototype;g.fill=function(f,g,m,n){f&&void 0===g?(this.x=f.x,this.y=f.y,this.z=f.z,this.w=f.w):(this.x=f,this.y=g,this.z=m,this.w=n)};g.add=function(f){if(!f)return this;this.x+=f.x;this.y+=f.y;this.z+=f.z;this.w+=f.w;return this};g.dot=function(f){return this.x*f.x+this.y*f.y+this.z*f.z+this.w*f.w};g.length= function(){return Math.sqrt(f.math.square(this.x)+f.math.square(this.y)+f.math.square(this.z)+f.math.square(this.w))};g.lengthSq=function(){return f.math.square(this.x)+f.math.square(this.y)+f.math.square(this.z)+f.math.square(this.w)};g.lerp=function(f,g){return this};g.normalize=function(){var f=1/this.length();this.x*=f;this.y*=f;this.z*=f;this.w*=f;return this};g.scale=function(f){this.normalize();this.x*=f;this.y*=f;this.z*=f;this.w*=f;return this};g.subtract=function(f){this.x-=f.x;this.y-= f.y;this.z-=f.z;this.w-=f.w};g.transform=function(f){var g=this.x,m=this.y,n=this.z,p=this.w;f=f.mat;this.x=g*f[0]+m*f[4]+n*f[8]+p*f[12];this.y=g*f[1]+m*f[5]+n*f[9]+p*f[13];this.z=g*f[2]+m*f[6]+n*f[10]+p*f[14];this.w=g*f[3]+m*f[7]+n*f[11]+p*f[15];return this};f.math.Vec4.transformArray=function(g,k){for(var m=[],n=0;ng.x-k&&this.yg.y-k&& this.zg.z-k&&this.wg.w-k};g.assignFrom=function(f){this.x=f.x;this.y=f.y;this.z=f.z;this.w=f.w;return this};g.toTypeArray=function(){var f=new Float32Array(4);f[0]=this.x;f[1]=this.y;f[2]=this.z;f[3]=this.w;return f}})(cc);(function(f){function g(g,k,m){k=new f.math.Vec2(k);k.subtract(g);m.x=-k.y;m.y=k.x;m.normalize()}f.math.Ray2=function(g,k){this.start=g||new f.math.Vec2;this.dir=k||new f.math.Vec2};f.math.Ray2.prototype.fill=function(f,g,m,n){this.start.x=f;this.start.y=g;this.dir.x=m;this.dir.y=n};f.math.Ray2.prototype.intersectLineSegment=function(g,k,m){var n=this.start.x,p=this.start.y,r=this.start.x+this.dir.x,s=this.start.y+this.dir.y,t=g.x,u=g.y,v=k.x,w=k.y,x=(w-u)*(r-n)-(v-t)*(s-p);if(x>-f.math.EPSILON&& xMath.max(g.x,k.x)+f.math.EPSILON||uMath.max(g.y,k.y)+f.math.EPSILON||tMath.max(n,r)+f.math.EPSILON||uMath.max(p,s)+f.math.EPSILON)return!1;m.x=t;m.y=u;return!0};f.math.Ray2.prototype.intersectTriangle=function(h,k,m,n,p){var r=new f.math.Vec2,s=new f.math.Vec2,t=new f.math.Vec2, u=1E4,v=!1,w;this.intersectLineSegment(h,k,r)&&(v=!0,w=r.subtract(this.start).length(),wp;++p)if(!(n[p]+h>g[p]&&n[p]-hh;h++)g[h]=f[h];return this};f.kmMat4Identity=function(f){var g=f.mat;g[1]=g[2]=g[3]=g[4]=g[6]=g[7]=g[8]=g[9]=g[11]=g[12]=g[13]=g[14]=0;g[0]=g[5]=g[10]=g[15]=1;return f};g.identity=function(){var f=this.mat;f[1]=f[2]=f[3]=f[4]=f[6]=f[7]=f[8]=f[9]=f[11]=f[12]=f[13]=f[14]=0;f[0]=f[5]=f[10]=f[15]=1; return this};g.get=function(f,g){return this.mat[f+4*g]};g.set=function(f,g,h){this.mat[f+4*g]=h};g.swap=function(f,g,h,k){var s=this.mat,t=s[f+4*g];s[f+4*g]=s[h+4*k];s[h+4*k]=t};f.math.Matrix4._gaussj=function(f,g){var h,k=0,s=0,t,u,v,w,x=[0,0,0,0],y=[0,0,0,0],z=[0,0,0,0];for(h=0;4>h;h++){for(t=w=0;4>t;t++)if(1!==z[t])for(u=0;4>u;u++)0===z[u]&&(v=Math.abs(f.get(t,u)),v>=w&&(w=v,s=t,k=u));++z[k];if(s!==k){for(t=0;4>t;t++)f.swap(s,t,k,t);for(t=0;4>t;t++)g.swap(s,t,k,t)}y[h]=s;x[h]=k;if(0===f.get(k, k))return!1;u=1/f.get(k,k);f.set(k,k,1);for(t=0;4>t;t++)f.set(k,t,f.get(k,t)*u);for(t=0;4>t;t++)g.set(k,t,g.get(k,t)*u);for(u=0;4>u;u++)if(u!==k){v=f.get(u,k);f.set(u,k,0);for(t=0;4>t;t++)f.set(u,t,f.get(u,t)-f.get(k,t)*v);for(t=0;4>t;t++)g.set(u,t,f.get(u,t)-g.get(k,t)*v)}}for(t=3;0<=t;t--)if(y[t]!==x[t])for(u=0;4>u;u++)f.swap(u,y[t],u,x[t]);return!0};var h=(new f.math.Matrix4).identity();f.kmMat4Inverse=function(g,k){var p=new f.math.Matrix4(k),r=new f.math.Matrix4(h);if(!1===f.math.Matrix4._gaussj(p, r))return null;g.assignFrom(p);return g};g.inverse=function(){var g=new f.math.Matrix4(this),k=new f.math.Matrix4(h);return!1===f.math.Matrix4._gaussj(g,k)?null:g};g.isIdentity=function(){var f=this.mat;return 1===f[0]&&0===f[1]&&0===f[2]&&0===f[3]&&0===f[4]&&1===f[5]&&0===f[6]&&0===f[7]&&0===f[8]&&0===f[9]&&1===f[10]&&0===f[11]&&0===f[12]&&0===f[13]&&0===f[14]&&1===f[15]};g.transpose=function(){var f=this.mat,g=f[1],h=f[2],k=f[3],s=f[6],t=f[7],u=f[8],v=f[9],w=f[11],x=f[12],y=f[13],z=f[14];f[1]=f[4]; f[2]=u;f[3]=x;f[4]=g;f[6]=v;f[7]=y;f[8]=h;f[9]=s;f[11]=z;f[12]=k;f[13]=t;f[14]=w;return this};f.kmMat4Multiply=function(f,g,h){var k=f.mat,s=g.mat,t=h.mat;h=s[0];g=s[1];var u=s[2],v=s[3],w=s[4],x=s[5],y=s[6],z=s[7],A=s[8],C=s[9],B=s[10],G=s[11],E=s[12],D=s[13],F=s[14],s=s[15],H=t[0],J=t[1],K=t[2],O=t[3],M=t[4],L=t[5],I=t[6],Q=t[7],N=t[8],P=t[9],T=t[10],W=t[11],R=t[12],U=t[13],Z=t[14],t=t[15];k[0]=H*h+J*w+K*A+O*E;k[1]=H*g+J*x+K*C+O*D;k[2]=H*u+J*y+K*B+O*F;k[3]=H*v+J*z+K*G+O*s;k[4]=M*h+L*w+I*A+Q*E;k[5]= M*g+L*x+I*C+Q*D;k[6]=M*u+L*y+I*B+Q*F;k[7]=M*v+L*z+I*G+Q*s;k[8]=N*h+P*w+T*A+W*E;k[9]=N*g+P*x+T*C+W*D;k[10]=N*u+P*y+T*B+W*F;k[11]=N*v+P*z+T*G+W*s;k[12]=R*h+U*w+Z*A+t*E;k[13]=R*g+U*x+Z*C+t*D;k[14]=R*u+U*y+Z*B+t*F;k[15]=R*v+U*z+Z*G+t*s;return f};g.multiply=function(f){var g=this.mat,h=f.mat;f=g[0];var k=g[1],s=g[2],t=g[3],u=g[4],v=g[5],w=g[6],x=g[7],y=g[8],z=g[9],A=g[10],C=g[11],B=g[12],G=g[13],E=g[14],D=g[15],F=h[0],H=h[1],J=h[2],K=h[3],O=h[4],M=h[5],L=h[6],I=h[7],Q=h[8],N=h[9],P=h[10],T=h[11],W=h[12], R=h[13],U=h[14],h=h[15];g[0]=F*f+H*u+J*y+K*B;g[1]=F*k+H*v+J*z+K*G;g[2]=F*s+H*w+J*A+K*E;g[3]=F*t+H*x+J*C+K*D;g[4]=O*f+M*u+L*y+I*B;g[5]=O*k+M*v+L*z+I*G;g[6]=O*s+M*w+L*A+I*E;g[7]=O*t+M*x+L*C+I*D;g[8]=Q*f+N*u+P*y+T*B;g[9]=Q*k+N*v+P*z+T*G;g[10]=Q*s+N*w+P*A+T*E;g[11]=Q*t+N*x+P*C+T*D;g[12]=W*f+R*u+U*y+h*B;g[13]=W*k+R*v+U*z+h*G;g[14]=W*s+R*w+U*A+h*E;g[15]=W*t+R*x+U*C+h*D;return this};f.getMat4MultiplyValue=function(f,g){var h=f.mat,k=g.mat,s=new Float32Array(16);s[0]=h[0]*k[0]+h[4]*k[1]+h[8]*k[2]+h[12]*k[3]; s[1]=h[1]*k[0]+h[5]*k[1]+h[9]*k[2]+h[13]*k[3];s[2]=h[2]*k[0]+h[6]*k[1]+h[10]*k[2]+h[14]*k[3];s[3]=h[3]*k[0]+h[7]*k[1]+h[11]*k[2]+h[15]*k[3];s[4]=h[0]*k[4]+h[4]*k[5]+h[8]*k[6]+h[12]*k[7];s[5]=h[1]*k[4]+h[5]*k[5]+h[9]*k[6]+h[13]*k[7];s[6]=h[2]*k[4]+h[6]*k[5]+h[10]*k[6]+h[14]*k[7];s[7]=h[3]*k[4]+h[7]*k[5]+h[11]*k[6]+h[15]*k[7];s[8]=h[0]*k[8]+h[4]*k[9]+h[8]*k[10]+h[12]*k[11];s[9]=h[1]*k[8]+h[5]*k[9]+h[9]*k[10]+h[13]*k[11];s[10]=h[2]*k[8]+h[6]*k[9]+h[10]*k[10]+h[14]*k[11];s[11]=h[3]*k[8]+h[7]*k[9]+h[11]* k[10]+h[15]*k[11];s[12]=h[0]*k[12]+h[4]*k[13]+h[8]*k[14]+h[12]*k[15];s[13]=h[1]*k[12]+h[5]*k[13]+h[9]*k[14]+h[13]*k[15];s[14]=h[2]*k[12]+h[6]*k[13]+h[10]*k[14]+h[14]*k[15];s[15]=h[3]*k[12]+h[7]*k[13]+h[11]*k[14]+h[15]*k[15];return s};f.kmMat4Assign=function(g,h){if(g===h)return f.log("cc.kmMat4Assign(): pOut equals pIn"),g;var k=g.mat,r=h.mat;k[0]=r[0];k[1]=r[1];k[2]=r[2];k[3]=r[3];k[4]=r[4];k[5]=r[5];k[6]=r[6];k[7]=r[7];k[8]=r[8];k[9]=r[9];k[10]=r[10];k[11]=r[11];k[12]=r[12];k[13]=r[13];k[14]=r[14]; k[15]=r[15];return g};g.assignFrom=function(g){if(this===g)return f.log("cc.mat.Matrix4.assignFrom(): mat4 equals current matrix"),this;var h=this.mat;g=g.mat;h[0]=g[0];h[1]=g[1];h[2]=g[2];h[3]=g[3];h[4]=g[4];h[5]=g[5];h[6]=g[6];h[7]=g[7];h[8]=g[8];h[9]=g[9];h[10]=g[10];h[11]=g[11];h[12]=g[12];h[13]=g[13];h[14]=g[14];h[15]=g[15];return this};g.equals=function(g){if(this===g)return f.log("cc.kmMat4AreEqual(): pMat1 and pMat2 are same object."),!0;var h=this.mat;g=g.mat;for(var k=f.math.EPSILON,r=0;16> r;r++)if(!(h[r]+k>g[r]&&h[r]-kg?f.math.Plane.POINT_BEHIND_PLANE:f.math.Plane.POINT_ON_PLANE}})(cc);(function(f){f.math.Quaternion=function(f,g,m,n){f&&void 0===g?(this.x=f.x,this.y=f.y,this.z=f.z,this.w=f.w):(this.x=f||0,this.y=g||0,this.z=m||0,this.w=n||0)};f.kmQuaternion=f.math.Quaternion;var g=f.math.Quaternion.prototype;g.conjugate=function(f){this.x=-f.x;this.y=-f.y;this.z=-f.z;this.w=f.w;return this};g.dot=function(f){return this.w*f.w+this.x*f.x+this.y*f.y+this.z*f.z};g.exponential=function(){return this};g.identity=function(){this.z=this.y=this.x=0;this.w=1;return this};g.inverse=function(){var g= this.length();if(Math.abs(g)>f.math.EPSILON)return this.w=this.z=this.y=this.x=0,this;this.conjugate(this).scale(1/g);return this};g.isIdentity=function(){return 0===this.x&&0===this.y&&0===this.z&&1===this.w};g.length=function(){return Math.sqrt(this.lengthSq())};g.lengthSq=function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w};g.multiply=function(f){var g=this.x,m=this.y,n=this.z,p=this.w;this.w=p*f.w-g*f.x-m*f.y-n*f.z;this.x=p*f.x+g*f.w+m*f.z-n*f.y;this.y=p*f.y+m*f.w+n*f.x- g*f.z;this.z=p*f.z+n*f.w+g*f.y-m*f.x;return this};g.normalize=function(){var g=this.length();if(Math.abs(g)<=f.math.EPSILON)throw Error("current quaternion is an invalid value");this.scale(1/g);return this};g.rotationAxis=function(f,g){var m=0.5*g,n=Math.sin(m);this.w=Math.cos(m);this.x=f.x*n;this.y=f.y*n;this.z=f.z*n;return this};f.math.Quaternion.rotationMatrix=function(g){if(!g)return null;var k,m,n;k=[];m=g.mat;g=0;k[0]=m[0];k[1]=m[3];k[2]=m[6];k[4]=m[1];k[5]=m[4];k[6]=m[7];k[8]=m[2];k[9]=m[5]; k[10]=m[8];k[15]=1;var p=k[0];g=p[0]+p[5]+p[10]+1;g>f.math.EPSILON?(g=2*Math.sqrt(g),k=(p[9]-p[6])/g,m=(p[2]-p[8])/g,n=(p[4]-p[1])/g,g*=0.25):p[0]>p[5]&&p[0]>p[10]?(g=2*Math.sqrt(1+p[0]-p[5]-p[10]),k=0.25*g,m=(p[4]+p[1])/g,n=(p[2]+p[8])/g,g=(p[9]-p[6])/g):p[5]>p[10]?(g=2*Math.sqrt(1+p[5]-p[0]-p[10]),k=(p[4]+p[1])/g,m=0.25*g,n=(p[9]+p[6])/g,g=(p[2]-p[8])/g):(g=2*Math.sqrt(1+p[10]-p[0]-p[5]),k=(p[2]+p[8])/g,m=(p[9]+p[6])/g,n=0.25*g,g=(p[4]-p[1])/g);return new f.math.Quaternion(k,m,n,g)};f.math.Quaternion.rotationYawPitchRoll= function(g,k,m){var n,p,r,s,t;n=f.degreesToRadians(k)/2;p=f.degreesToRadians(g)/2;r=f.degreesToRadians(m)/2;m=Math.cos(n);g=Math.cos(p);k=Math.cos(r);n=Math.sin(n);p=Math.sin(p);r=Math.sin(r);s=g*k;t=p*r;var u=new f.math.Quaternion;u.w=m*s+n*t;u.x=n*s-m*t;u.y=m*p*k+n*g*r;u.z=m*g*r-n*p*k;u.normalize();return u};g.slerp=function(g,k){if(this.x===g.x&&this.y===g.y&&this.z===g.z&&this.w===g.w)return this;var m=this.dot(g),n=Math.acos(m),p=Math.sqrt(1-f.math.square(m)),m=Math.sin(k*n)/p,n=Math.sin((1- k)*n)/p,p=new f.math.Quaternion(g);this.scale(n);p.scale(m);this.add(p);return this};g.toAxisAndAngle=function(){var g,k,m=new f.math.Vec3;g=Math.acos(this.w);k=Math.sqrt(f.math.square(this.x)+f.math.square(this.y)+f.math.square(this.z));k>-f.math.EPSILON&&k2*Math.PI-f.math.EPSILON?(g=0,m.x=0,m.y=0,m.z=1):(g*=2,m.x=this.x/k,m.y=this.y/k,m.z=this.z/k,m.normalize());return{axis:m,angle:g}};g.scale=function(f){this.x*=f;this.y*=f;this.z*=f;this.w*=f;return this}; g.assignFrom=function(f){this.x=f.x;this.y=f.y;this.z=f.z;this.w=f.w;return this};g.add=function(f){this.x+=f.x;this.y+=f.y;this.z+=f.z;this.w+=f.w;return this};f.math.Quaternion.rotationBetweenVec3=function(g,k,m){var n=new f.math.Vec3(g),p=new f.math.Vec3(k);n.normalize();p.normalize();var r=n.dot(p);k=new f.math.Quaternion;if(1<=r)return k.identity(),k;-0.999999>r?Math.abs(m.lengthSq())=this.min.x&&f.x<=this.max.x&&f.y>=this.min.y&&f.y<=this.max.y&&f.z>=this.min.z&&f.z<=this.max.z};cc.math.AABB.containsPoint=function(f,g){return f.x>=g.min.x&&f.x<=g.max.x&&f.y>=g.min.y&&f.y<=g.max.y&&f.z>=g.min.z&&f.z<=g.max.z};cc.math.AABB.prototype.assignFrom=function(f){this.min.assignFrom(f.min);this.max.assignFrom(f.max)}; cc.math.AABB.assign=function(f,g){f.min.assignFrom(g.min);f.max.assignFrom(g.max);return f};(function(f){f.math.Matrix4Stack=function(f,g){this.top=f;this.stack=g||[];this.lastUpdated=0};f.km_mat4_stack=f.math.Matrix4Stack;var g=f.math.Matrix4Stack.prototype;g.initialize=function(){this.stack.length=0;this.top=null};f.km_mat4_stack_push=function(g,k){g.stack.push(g.top);g.top=new f.math.Matrix4(k)};f.km_mat4_stack_pop=function(f,g){f.top=f.stack.pop()};f.km_mat4_stack_release=function(f){f.stack=null;f.top=null};g.push=function(g){g=g||this.top;this.stack.push(this.top);this.top=new f.math.Matrix4(g)}; g.pop=function(){this.top=this.stack.pop()};g.release=function(){this._matrixPool=this.top=this.stack=null};g._getFromPool=function(g){var k=this._matrixPool;if(0===k.length)return new f.math.Matrix4(g);k=k.pop();k.assignFrom(g);return k};g._putInPool=function(f){this._matrixPool.push(f)}})(cc);(function(f){f.KM_GL_MODELVIEW=5888;f.KM_GL_PROJECTION=5889;f.KM_GL_TEXTURE=5890;f.modelview_matrix_stack=new f.math.Matrix4Stack;f.projection_matrix_stack=new f.math.Matrix4Stack;f.texture_matrix_stack=new f.math.Matrix4Stack;f.current_stack=null;f.lazyInitialize=function(){var g=new f.math.Matrix4;f.modelview_matrix_stack.initialize();f.projection_matrix_stack.initialize();f.texture_matrix_stack.initialize();f.current_stack=f.modelview_matrix_stack;f.initialized=!0;g.identity();f.modelview_matrix_stack.push(g); f.projection_matrix_stack.push(g);f.texture_matrix_stack.push(g)};f.lazyInitialize();f.kmGLFreeAll=function(){f.modelview_matrix_stack.release();f.modelview_matrix_stack=null;f.projection_matrix_stack.release();f.projection_matrix_stack=null;f.texture_matrix_stack.release();f.texture_matrix_stack=null;f.initialized=!1;f.current_stack=null};f.kmGLPushMatrix=function(){f.current_stack.push(f.current_stack.top)};f.kmGLPushMatrixWitMat4=function(g){f.current_stack.stack.push(f.current_stack.top);g.assignFrom(f.current_stack.top); f.current_stack.top=g};f.kmGLPopMatrix=function(){f.current_stack.top=f.current_stack.stack.pop()};f.kmGLMatrixMode=function(g){switch(g){case f.KM_GL_MODELVIEW:f.current_stack=f.modelview_matrix_stack;break;case f.KM_GL_PROJECTION:f.current_stack=f.projection_matrix_stack;break;case f.KM_GL_TEXTURE:f.current_stack=f.texture_matrix_stack;break;default:throw Error("Invalid matrix mode specified");}f.current_stack.lastUpdated=f.director.getTotalFrames()};f.kmGLLoadIdentity=function(){f.current_stack.top.identity()}; f.kmGLLoadMatrix=function(g){f.current_stack.top.assignFrom(g)};f.kmGLMultMatrix=function(g){f.current_stack.top.multiply(g)};var g=new f.math.Matrix4;f.kmGLTranslatef=function(h,m,n){h=f.math.Matrix4.createByTranslation(h,m,n,g);f.current_stack.top.multiply(h)};var h=new f.math.Vec3;f.kmGLRotatef=function(k,m,n,p){h.fill(m,n,p);k=f.math.Matrix4.createByAxisAndAngle(h,f.degreesToRadians(k),g);f.current_stack.top.multiply(k)};f.kmGLScalef=function(h,m,n){h=f.math.Matrix4.createByScale(h,m,n,g);f.current_stack.top.multiply(h)}; f.kmGLGetMatrix=function(g,h){switch(g){case f.KM_GL_MODELVIEW:h.assignFrom(f.modelview_matrix_stack.top);break;case f.KM_GL_PROJECTION:h.assignFrom(f.projection_matrix_stack.top);break;case f.KM_GL_TEXTURE:h.assignFrom(f.texture_matrix_stack.top);break;default:throw Error("Invalid matrix mode specified");}}})(cc);cc.SHADER_POSITION_UCOLOR_FRAG="precision lowp float;\nvarying vec4 v_fragmentColor;\nvoid main() \n{ \n gl_FragColor \x3d v_fragmentColor; \n}\n";cc.SHADER_POSITION_UCOLOR_VERT="attribute vec4 a_position;\nuniform vec4 u_color;\nuniform float u_pointSize;\nvarying lowp vec4 v_fragmentColor; \nvoid main(void) \n{\n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n gl_PointSize \x3d u_pointSize; \n v_fragmentColor \x3d u_color; \n}"; cc.SHADER_POSITION_COLOR_FRAG="precision lowp float; \nvarying vec4 v_fragmentColor; \nvoid main() \n{ \n gl_FragColor \x3d v_fragmentColor; \n} ";cc.SHADER_POSITION_COLOR_VERT="attribute vec4 a_position;\nattribute vec4 a_color;\nvarying lowp vec4 v_fragmentColor;\nvoid main()\n{\n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n v_fragmentColor \x3d a_color; \n}";cc.SHADER_SPRITE_POSITION_COLOR_VERT="attribute vec4 a_position;\nattribute vec4 a_color;\nvarying lowp vec4 v_fragmentColor;\nvoid main()\n{\n gl_Position \x3d CC_PMatrix * a_position; \n v_fragmentColor \x3d a_color; \n}"; cc.SHADER_POSITION_COLOR_LENGTH_TEXTURE_FRAG="// #extension GL_OES_standard_derivatives : enable\nvarying mediump vec4 v_color;\nvarying mediump vec2 v_texcoord;\nvoid main()\t\n{ \n// #if defined GL_OES_standard_derivatives\t\n// gl_FragColor \x3d v_color*smoothstep(0.0, length(fwidth(v_texcoord)), 1.0 - length(v_texcoord)); \n// #else\t\ngl_FragColor \x3d v_color * step(0.0, 1.0 - length(v_texcoord)); \n// #endif \n}";cc.SHADER_POSITION_COLOR_LENGTH_TEXTURE_VERT="attribute mediump vec4 a_position; \nattribute mediump vec2 a_texcoord; \nattribute mediump vec4 a_color;\t\nvarying mediump vec4 v_color; \nvarying mediump vec2 v_texcoord;\t\nvoid main() \n{ \n v_color \x3d a_color;//vec4(a_color.rgb * a_color.a, a_color.a); \n v_texcoord \x3d a_texcoord; \n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n}"; cc.SHADER_POSITION_TEXTURE_FRAG="precision lowp float; \nvarying vec2 v_texCoord; \nvoid main() \n{ \n gl_FragColor \x3d texture2D(CC_Texture0, v_texCoord); \n}";cc.SHADER_POSITION_TEXTURE_VERT="attribute vec4 a_position; \nattribute vec2 a_texCoord; \nvarying mediump vec2 v_texCoord; \nvoid main() \n{ \n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n v_texCoord \x3d a_texCoord; \n}";cc.SHADER_POSITION_TEXTURE_UCOLOR_FRAG="precision lowp float; \nuniform vec4 u_color; \nvarying vec2 v_texCoord; \nvoid main() \n{ \n gl_FragColor \x3d texture2D(CC_Texture0, v_texCoord) * u_color; \n}"; cc.SHADER_POSITION_TEXTURE_UCOLOR_VERT="attribute vec4 a_position;\nattribute vec2 a_texCoord; \nvarying mediump vec2 v_texCoord; \nvoid main() \n{ \n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n v_texCoord \x3d a_texCoord; \n}";cc.SHADER_POSITION_TEXTURE_A8COLOR_FRAG="precision lowp float; \nvarying vec4 v_fragmentColor; \nvarying vec2 v_texCoord; \nvoid main() \n{ \n gl_FragColor \x3d vec4( v_fragmentColor.rgb, \n v_fragmentColor.a * texture2D(CC_Texture0, v_texCoord).a \n ); \n}"; cc.SHADER_POSITION_TEXTURE_A8COLOR_VERT="attribute vec4 a_position; \nattribute vec2 a_texCoord; \nattribute vec4 a_color; \nvarying lowp vec4 v_fragmentColor; \nvarying mediump vec2 v_texCoord; \nvoid main() \n{ \n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n v_fragmentColor \x3d a_color; \n v_texCoord \x3d a_texCoord; \n}";cc.SHADER_POSITION_TEXTURE_COLOR_FRAG="precision lowp float;\nvarying vec4 v_fragmentColor; \nvarying vec2 v_texCoord; \nvoid main() \n{ \n gl_FragColor \x3d v_fragmentColor * texture2D(CC_Texture0, v_texCoord); \n}"; cc.SHADER_POSITION_TEXTURE_COLOR_VERT="attribute vec4 a_position; \nattribute vec2 a_texCoord; \nattribute vec4 a_color; \nvarying lowp vec4 v_fragmentColor; \nvarying mediump vec2 v_texCoord; \nvoid main() \n{ \n gl_Position \x3d (CC_PMatrix * CC_MVMatrix) * a_position; \n v_fragmentColor \x3d a_color; \n v_texCoord \x3d a_texCoord; \n}";cc.SHADER_SPRITE_POSITION_TEXTURE_COLOR_VERT="attribute vec4 a_position; \nattribute vec2 a_texCoord; \nattribute vec4 a_color; \nvarying lowp vec4 v_fragmentColor; \nvarying mediump vec2 v_texCoord; \nvoid main() \n{ \n gl_Position \x3d CC_PMatrix * a_position; \n v_fragmentColor \x3d a_color; \n v_texCoord \x3d a_texCoord; \n}"; cc.SHADER_SPRITE_POSITION_TEXTURE_COLOR_GRAY_FRAG="precision lowp float;\nvarying vec4 v_fragmentColor; \nvarying vec2 v_texCoord; \nvoid main() \n{ \n vec4 c \x3d texture2D(CC_Texture0, v_texCoord); \n gl_FragColor.xyz \x3d vec3(0.2126*c.r + 0.7152*c.g + 0.0722*c.b); \n gl_FragColor.w \x3d c.w ; \n}";cc.SHADER_POSITION_TEXTURE_COLOR_ALPHATEST_FRAG="precision lowp float; \nvarying vec4 v_fragmentColor; \nvarying vec2 v_texCoord; \nuniform float CC_alpha_value; \nvoid main() \n{ \n vec4 texColor \x3d texture2D(CC_Texture0, v_texCoord); \n if ( texColor.a \x3c\x3d CC_alpha_value ) \n discard; \n gl_FragColor \x3d texColor * v_fragmentColor; \n}"; cc.SHADEREX_SWITCHMASK_FRAG="precision lowp float; \nvarying vec4 v_fragmentColor; \nvarying vec2 v_texCoord; \nuniform sampler2D u_texture; \nuniform sampler2D u_mask; \nvoid main() \n{ \n vec4 texColor \x3d texture2D(u_texture, v_texCoord); \n vec4 maskColor \x3d texture2D(u_mask, v_texCoord); \n vec4 finalColor \x3d vec4(texColor.r, texColor.g, texColor.b, maskColor.a * texColor.a); \n gl_FragColor \x3d v_fragmentColor * finalColor; \n}";cc.shaderCache={TYPE_POSITION_TEXTURECOLOR:0,TYPE_POSITION_TEXTURECOLOR_ALPHATEST:1,TYPE_POSITION_COLOR:2,TYPE_POSITION_TEXTURE:3,TYPE_POSITION_TEXTURE_UCOLOR:4,TYPE_POSITION_TEXTURE_A8COLOR:5,TYPE_POSITION_UCOLOR:6,TYPE_POSITION_LENGTH_TEXTURECOLOR:7,TYPE_SPRITE_POSITION_TEXTURECOLOR:8,TYPE_SPRITE_POSITION_TEXTURECOLOR_ALPHATEST:9,TYPE_SPRITE_POSITION_COLOR:10,TYPE_SPRITE_POSITION_TEXTURECOLOR_GRAY:11,TYPE_MAX:11,_keyMap:[cc.SHADER_POSITION_TEXTURECOLOR,cc.SHADER_POSITION_TEXTURECOLORALPHATEST,cc.SHADER_POSITION_COLOR, cc.SHADER_POSITION_TEXTURE,cc.SHADER_POSITION_TEXTURE_UCOLOR,cc.SHADER_POSITION_TEXTUREA8COLOR,cc.SHADER_POSITION_UCOLOR,cc.SHADER_POSITION_LENGTHTEXTURECOLOR,cc.SHADER_SPRITE_POSITION_TEXTURECOLOR,cc.SHADER_SPRITE_POSITION_TEXTURECOLORALPHATEST,cc.SHADER_SPRITE_POSITION_COLOR,cc.SHADER_SPRITE_POSITION_TEXTURECOLOR_GRAY],_programs:{},_init:function(){this.loadDefaultShaders();return!0},_loadDefaultShader:function(f,g){switch(g){case cc.SHADER_POSITION_TEXTURECOLOR:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_TEXTURE_COLOR_VERT, cc.SHADER_POSITION_TEXTURE_COLOR_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_SPRITE_POSITION_TEXTURECOLOR:f.initWithVertexShaderByteArray(cc.SHADER_SPRITE_POSITION_TEXTURE_COLOR_VERT,cc.SHADER_POSITION_TEXTURE_COLOR_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR, cc.VERTEX_ATTRIB_COLOR);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_SPRITE_POSITION_TEXTURECOLOR_GRAY:f.initWithVertexShaderByteArray(cc.SHADER_SPRITE_POSITION_TEXTURE_COLOR_VERT,cc.SHADER_SPRITE_POSITION_TEXTURE_COLOR_GRAY_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_POSITION_TEXTURECOLORALPHATEST:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_TEXTURE_COLOR_VERT, cc.SHADER_POSITION_TEXTURE_COLOR_ALPHATEST_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_SPRITE_POSITION_TEXTURECOLORALPHATEST:f.initWithVertexShaderByteArray(cc.SHADER_SPRITE_POSITION_TEXTURE_COLOR_VERT,cc.SHADER_POSITION_TEXTURE_COLOR_ALPHATEST_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION); f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_POSITION_COLOR:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_COLOR_VERT,cc.SHADER_POSITION_COLOR_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);break;case cc.SHADER_SPRITE_POSITION_COLOR:f.initWithVertexShaderByteArray(cc.SHADER_SPRITE_POSITION_COLOR_VERT, cc.SHADER_POSITION_COLOR_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);break;case cc.SHADER_POSITION_TEXTURE:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_TEXTURE_VERT,cc.SHADER_POSITION_TEXTURE_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_POSITION_TEXTURE_UCOLOR:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_TEXTURE_UCOLOR_VERT, cc.SHADER_POSITION_TEXTURE_UCOLOR_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_POSITION_TEXTUREA8COLOR:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_TEXTURE_A8COLOR_VERT,cc.SHADER_POSITION_TEXTURE_A8COLOR_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD, cc.VERTEX_ATTRIB_TEX_COORDS);break;case cc.SHADER_POSITION_UCOLOR:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_UCOLOR_VERT,cc.SHADER_POSITION_UCOLOR_FRAG);f.addAttribute("aVertex",cc.VERTEX_ATTRIB_POSITION);break;case cc.SHADER_POSITION_LENGTHTEXTURECOLOR:f.initWithVertexShaderByteArray(cc.SHADER_POSITION_COLOR_LENGTH_TEXTURE_VERT,cc.SHADER_POSITION_COLOR_LENGTH_TEXTURE_FRAG);f.addAttribute(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION);f.addAttribute(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_TEX_COORDS); f.addAttribute(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR);break;default:cc.log("cocos2d: cc.shaderCache._loadDefaultShader, error shader type");return}f.link();f.updateUniforms()},loadDefaultShaders:function(){for(var f=0;f arguments.length))switch(arguments.length){case 2:this.setUniformLocationWith1f(arguments[0],arguments[1]);break;case 3:this.setUniformLocationWith2f(arguments[0],arguments[1],arguments[2]);break;case 4:this.setUniformLocationWith3f(arguments[0],arguments[1],arguments[2],arguments[3]);break;case 5:this.setUniformLocationWith4f(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4])}},setUniformsForBuiltins:function(){var f=new cc.math.Matrix4,g=new cc.math.Matrix4,h=new cc.math.Matrix4; cc.kmGLGetMatrix(cc.KM_GL_PROJECTION,f);cc.kmGLGetMatrix(cc.KM_GL_MODELVIEW,g);cc.kmMat4Multiply(h,f,g);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_PMATRIX_S],f.mat,1);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVMATRIX_S],g.mat,1);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVPMATRIX_S],h.mat,1);this._usesTime&&(f=cc.director,f=f.getTotalFrames()*f.getAnimationInterval(),this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_TIME_S],f/10, f,2*f,4*f),this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_SINTIME_S],f/8,f/4,f/2,Math.sin(f)),this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_COSTIME_S],f/8,f/4,f/2,Math.cos(f)));-1!==this._uniforms[cc.UNIFORM_RANDOM01_S]&&this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_RANDOM01_S],Math.random(),Math.random(),Math.random(),Math.random())},_setUniformsForBuiltinsForRenderer:function(f){if(f&&f._renderCmd){var g=new cc.math.Matrix4,h=new cc.math.Matrix4;cc.kmGLGetMatrix(cc.KM_GL_PROJECTION, g);cc.kmMat4Multiply(h,g,f._renderCmd._stackMatrix);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_PMATRIX_S],g.mat,1);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVMATRIX_S],f._renderCmd._stackMatrix.mat,1);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVPMATRIX_S],h.mat,1);this._usesTime&&(f=cc.director,f=f.getTotalFrames()*f.getAnimationInterval(),this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_TIME_S],f/10,f,2*f,4*f),this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_SINTIME_S], f/8,f/4,f/2,Math.sin(f)),this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_COSTIME_S],f/8,f/4,f/2,Math.cos(f)));-1!==this._uniforms[cc.UNIFORM_RANDOM01_S]&&this.setUniformLocationWith4f(this._uniforms[cc.UNIFORM_RANDOM01_S],Math.random(),Math.random(),Math.random(),Math.random())}},setUniformForModelViewProjectionMatrix:function(){this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVPMATRIX_S],cc.getMat4MultiplyValue(cc.projection_matrix_stack.top,cc.modelview_matrix_stack.top))}, setUniformForModelViewProjectionMatrixWithMat4:function(f){cc.kmMat4Multiply(f,cc.projection_matrix_stack.top,cc.modelview_matrix_stack.top);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVPMATRIX_S],f.mat)},setUniformForModelViewAndProjectionMatrixWithMat4:function(){this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVMATRIX_S],cc.modelview_matrix_stack.top.mat);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_PMATRIX_S],cc.projection_matrix_stack.top.mat)}, _setUniformForMVPMatrixWithMat4:function(f){if(!f)throw Error("modelView matrix is undefined.");this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_MVMATRIX_S],f.mat);this.setUniformLocationWithMatrix4fv(this._uniforms[cc.UNIFORM_PMATRIX_S],cc.projection_matrix_stack.top.mat)},_updateProjectionUniform:function(){var f=cc.projection_matrix_stack;f.lastUpdated!==this._projectionUpdated&&(this._glContext.uniformMatrix4fv(this._uniforms[cc.UNIFORM_PMATRIX_S],!1,f.top.mat),this._projectionUpdated= f.lastUpdated)},vertexShaderLog:function(){return this._glContext.getShaderInfoLog(this._vertShader)},getVertexShaderLog:function(){return this._glContext.getShaderInfoLog(this._vertShader)},getFragmentShaderLog:function(){return this._glContext.getShaderInfoLog(this._vertShader)},fragmentShaderLog:function(){return this._glContext.getShaderInfoLog(this._fragShader)},programLog:function(){return this._glContext.getProgramInfoLog(this._programObj)},getProgramLog:function(){return this._glContext.getProgramInfoLog(this._programObj)}, reset:function(){this._fragShader=this._vertShader=null;0>1;f|=f>>2;f|=f>>4;f|=f>>8;return(f|f>>16)+1}; cc.RenderTexture=cc.Node.extend({sprite:null,clearFlags:0,clearDepthVal:0,autoDraw:!1,_texture:null,_pixelFormat:0,clearStencilVal:0,_clearColor:null,_className:"RenderTexture",ctor:function(f,g,h,k){cc.Node.prototype.ctor.call(this);this._cascadeOpacityEnabled=this._cascadeColorEnabled=!0;this._pixelFormat=cc.Texture2D.PIXEL_FORMAT_RGBA8888;this._clearColor=new cc.Color(0,0,0,255);void 0!==f&&void 0!==g&&(h=h||cc.Texture2D.PIXEL_FORMAT_RGBA8888,this.initWithWidthAndHeight(f,g,h,k||0));this.setAnchorPoint(0, 0)},_createRenderCmd:function(){return cc._renderType===cc.game.RENDER_TYPE_CANVAS?new cc.RenderTexture.CanvasRenderCmd(this):new cc.RenderTexture.WebGLRenderCmd(this)},visit:function(f){var g=this._renderCmd;f=f?f._renderCmd:null;if(this._visible){var h=cc.renderer;g.visit(f);h.pushRenderCommand(g);this.sprite.visit(this);g._dirtyFlag=0}else g._propagateFlagsDown(f)},cleanup:function(){cc.Node.prototype.onExit.call(this);this._renderCmd.cleanup()},getSprite:function(){return this.sprite},setSprite:function(f){this.sprite= f},setVirtualViewport:function(f,g,h){this._renderCmd.setVirtualViewport(f,g,h)},initWithWidthAndHeight:function(f,g,h,k){return this._renderCmd.initWithWidthAndHeight(f,g,h,k)},begin:function(){cc.renderer._turnToCacheMode(this.__instanceId);this._renderCmd.begin()},beginWithClear:function(f,g,h,k,m,n){var p=cc._renderContext;m=m||p.COLOR_BUFFER_BIT;n=n||p.COLOR_BUFFER_BIT|p.DEPTH_BUFFER_BIT;this._beginWithClear(f,g,h,k,m,n,p.COLOR_BUFFER_BIT|p.DEPTH_BUFFER_BIT|p.STENCIL_BUFFER_BIT)},_beginWithClear:function(f, g,h,k,m,n,p){this.begin();this._renderCmd._beginWithClear(f,g,h,k,m,n,p)},end:function(){this._renderCmd.end()},clear:function(f,g,h,k){this.beginWithClear(f,g,h,k);this.end()},clearRect:function(f,g,h,k){this._renderCmd.clearRect(f,g,h,k)},clearDepth:function(f){this._renderCmd.clearDepth(f)},clearStencil:function(f){this._renderCmd.clearStencil(f)},getClearFlags:function(){return this.clearFlags},setClearFlags:function(f){this.clearFlags=f},getClearColor:function(){return this._clearColor},setClearColor:function(f){var g= this._clearColor;g.r=f.r;g.g=f.g;g.b=f.b;g.a=f.a;this._renderCmd.updateClearColor(f)},getClearDepth:function(){return this.clearDepthVal},setClearDepth:function(f){this.clearDepthVal=f},getClearStencil:function(){return this.clearStencilVal},setClearStencil:function(f){this.clearStencilVal=f},isAutoDraw:function(){return this.autoDraw},setAutoDraw:function(f){this.autoDraw=f},saveToFile:function(f,g){cc.log("saveToFile isn't supported on Cocos2d-Html5")},newCCImage:function(f){cc.log("saveToFile isn't supported on cocos2d-html5"); return null},listenToBackground:function(f){},listenToForeground:function(f){}});_p=cc.RenderTexture.prototype;cc.defineGetterSetter(_p,"clearColorVal",_p.getClearColor,_p.setClearColor);cc.RenderTexture.create=function(f,g,h,k){return new cc.RenderTexture(f,g,h,k)};(function(){cc.RenderTexture.CanvasRenderCmd=function(f){this._rootCtor(f);this._needDraw=!1;this._clearColorStr="rgba(255,255,255,1)";this._cacheCanvas=document.createElement("canvas");this._cacheContext=new cc.CanvasContextWrapper(this._cacheCanvas.getContext("2d"))};var f=cc.RenderTexture.CanvasRenderCmd.prototype=Object.create(cc.Node.CanvasRenderCmd.prototype);f.constructor=cc.RenderTexture.CanvasRenderCmd;f.cleanup=function(){this._cacheCanvas=this._cacheContext=null};f.clearStencil=function(f){}; f.setVirtualViewport=function(f,h,k){};f.updateClearColor=function(f){this._clearColorStr="rgba("+(0|f.r)+","+(0|f.g)+","+(0|f.b)+","+f.a/255+")"};f.initWithWidthAndHeight=function(f,h,k,m){k=this._node;m=this._cacheCanvas;var n=cc.contentScaleFactor();m.width=0|f*n;m.height=0|h*n;f=new cc.Texture2D;f.initWithElement(m);f.handleLoadedTexture();f=k.sprite=new cc.Sprite(f);f.setBlendFunc(cc.ONE,cc.ONE_MINUS_SRC_ALPHA);k.autoDraw=!1;k.addChild(f);return!0};f.begin=function(){};f._beginWithClear=function(f, h,k,m,n,p,r){f=f||0;h=h||0;k=k||0;m=isNaN(m)?255:m;n=this._cacheContext.getContext();p=this._cacheCanvas;n.setTransform(1,0,0,1,0,0);this._cacheContext.setFillStyle("rgba("+(0|f)+","+(0|h)+","+(0|k)+","+m/255+")");n.clearRect(0,0,p.width,p.height);n.fillRect(0,0,p.width,p.height)};f.end=function(){var f=this._node,h=cc.contentScaleFactor();cc.renderer._renderingToCacheCanvas(this._cacheContext,f.__instanceId,h,h);f=f.sprite._renderCmd;f._notifyRegionStatus&&f._notifyRegionStatus(cc.Node.CanvasRenderCmd.RegionStatus.Dirty)}; f.clearRect=function(f,h,k,m){this._cacheContext.clearRect(f,h,k,-m)};f.clearDepth=function(f){cc.log("clearDepth isn't supported on Cocos2d-Html5")}})();(function(){cc.RenderTexture.WebGLRenderCmd=function(f){this._rootCtor(f);this._needDraw=!0;this._depthRenderBuffer=this._textureCopy=this._oldFBO=this._fBO=null;this._rtTextureRect=new cc.Rect;this._fullRect=new cc.Rect;this._fullViewport=new cc.Rect};var f=cc.RenderTexture.WebGLRenderCmd.prototype=Object.create(cc.Node.WebGLRenderCmd.prototype);f.constructor=cc.RenderTexture.WebGLRenderCmd;f.setVirtualViewport=function(f,h,k){this._rtTextureRect.x=f.x;this._rtTextureRect.y=f.y;this._fullRect=h; this._fullViewport=k};f.needDraw=function(){return this._needDraw&&this._node.autoDraw};f.rendering=function(f){var h=f||cc._renderContext;f=this._node;if(f.autoDraw){f.begin();var k=f.clearFlags;if(k){var m=[0,0,0,0],n=0,p=0;k&h.COLOR_BUFFER_BIT&&(m=h.getParameter(h.COLOR_CLEAR_VALUE),h.clearColor(f._clearColor.r/255,f._clearColor.g/255,f._clearColor.b/255,f._clearColor.a/255));k&h.DEPTH_BUFFER_BIT&&(n=h.getParameter(h.DEPTH_CLEAR_VALUE),h.clearDepth(f.clearDepthVal));k&h.STENCIL_BUFFER_BIT&&(p= h.getParameter(h.STENCIL_CLEAR_VALUE),h.clearStencil(f.clearStencilVal));h.clear(k);k&h.COLOR_BUFFER_BIT&&h.clearColor(m[0],m[1],m[2],m[3]);k&h.DEPTH_BUFFER_BIT&&h.clearDepth(n);k&h.STENCIL_BUFFER_BIT&&h.clearStencil(p)}f.sortAllChildren();h=f._children;for(k=0;k=g)return 0;var h=this.getChildByTag(f),k=this.getChildByTag(f+g);return this._getLetterPosXLeft(k)-this._getLetterPosXLeft(h)},_checkWarp:function(f,g,h,k){for(var m=f[g],n=0,p=0;ph&&1h&&100>v++;)k*=h/s,k|=0,p=m.substr(k),s=r-this._getCharsWidth(n+k,p.length-1);for(v=0;sv++;)p&&(u=(t=cc.LabelTTF._wordRex.exec(p))?t[0].length:1,t=p),this._lineBreakWithoutSpaces&&(u=0),k+=u,p=m.substr(k),s=r-this._getCharsWidth(n+k,p.length-1);k-=u;0===k&&(k=1,t=t.substr(1));h=m.substr(0,k);cc.LabelTTF.wrapInspection&&cc.LabelTTF._symbolRex.test(t||p)&&(u=(n=cc.LabelTTF._lastWordRex.exec(h))? n[0].length:0,this._lineBreakWithoutSpaces&&(u=0),k-=u,t=m.substr(k),h=m.substr(0,k));cc.LabelTTF._firsrEnglish.test(t)&&(n=cc.LabelTTF._lastEnglish.exec(h))&&h!==n[0]&&(u=n[0].length,this._lineBreakWithoutSpaces&&(u=0),k-=u,t=m.substr(k),h=m.substr(0,k));f[g]=t||p;f.splice(g,0,h)}},updateLabel:function(){this.string=this._initialString;var f,g,h;if(0h)){var s=this.getChildByTag(h);if(null!=s){g=s.getPositionX()+s._getWidth()/2;s=0;switch(this._alignment){case cc.TEXT_ALIGNMENT_CENTER:s=this.width/2-g/2;break;case cc.TEXT_ALIGNMENT_RIGHT:s=this.width-g}if(0!== s)for(g=0;gh||(h=this.getChildByTag(h))&&(h.x+=s);f+=r;k++;n.length=0}}}else n.push(this._string[f])},setAlignment:function(f){this._alignment=f;this.updateLabel()},_getAlignment:function(){return this._alignment},setBoundingWidth:function(f){this._width=f;this.updateLabel()},_getBoundingWidth:function(){return this._width},setLineBreakWithoutSpace:function(f){this._lineBreakWithoutSpaces=f;this.updateLabel()},setScale:function(f,g){cc.Node.prototype.setScale.call(this,f,g);this.updateLabel()}, setScaleX:function(f){cc.Node.prototype.setScaleX.call(this,f);this.updateLabel()},setScaleY:function(f){cc.Node.prototype.setScaleY.call(this,f);this.updateLabel()},setFntFile:function(f){if(null!=f&&f!==this._fntFile){var g=cc.loader.getRes(f);g?(this._fntFile=f,this._config=g,f=cc.textureCache.addImage(g.atlasName),(this._textureLoaded=g=f.isLoaded())?(this.setTexture(f),this._string&&0=f||32===f||133===f||160===f||5760===f||8192<=f&&8202>=f||8232===f||8233===f||8239===f||8287===f||12288===f},_utf8_trim_ws:function(f){var g=f.length;if(!(0>=g)&&(g-=1,this._isspace_unicode(f[g]))){for(var h=g-1;0<=h;--h)if(this._isspace_unicode(f[h]))g=h;else break;this._utf8_trim_from(f,g)}},_utf8_trim_from:function(f,g){var h=f.length;g>=h||0>g||f.splice(g,h)}}); (function(){var f=cc.LabelBMFont.prototype;cc.EventHelper.prototype.apply(f);cc.defineGetterSetter(f,"string",f.getString,f._setStringForSetter);cc.defineGetterSetter(f,"boundingWidth",f._getBoundingWidth,f.setBoundingWidth);cc.defineGetterSetter(f,"textAlign",f._getAlignment,f.setAlignment);cc.defineGetterSetter(f,"texture",f.getTexture,f.setTexture)})();cc.LabelBMFont.create=function(f,g,h,k,m){return new cc.LabelBMFont(f,g,h,k,m)};cc.FntFrameCache={}; var _fntLoader={FNT_HEAD:/fntframes [^\n]*(\n|$)/gi,FNT_FRAME_NAME:/fntframe [^\n]*(\n|$)/gi,INFO_EXP:/info [^\n]*(\n|$)/gi,COMMON_EXP:/common [^\n]*(\n|$)/gi,PAGE_EXP:/page [^\n]*(\n|$)/gi,CHAR_EXP:/char [^\n]*(\n|$)/gi,KERNING_EXP:/kerning [^\n]*(\n|$)/gi,ITEM_EXP:/\w+=[^ \r\n]+/gi,INT_EXP:/^[\-]?\d+$/,_parseStrToObj:function(f){f=f.match(this.ITEM_EXP);var g={};if(f)for(var h=0,k=f.length;hn.width||m.scaleH>n.height)&&cc.log("cc.LabelBMFont._parseCommonArguments(): page can't be larger than supported")}1!==m.pages&&cc.log("cc.LabelBMFont._parseCommonArguments(): only supports 1 page");m=this._parseStrToObj(g.match(this.PAGE_EXP)[0]); 0!==m.id&&cc.log("cc.LabelBMFont._parseImageFileName() : file could not be found");f.atlasName=k?cc.path.join(cc.path.dirname(k.path)+m.file):cc.path.changeBasename(h,m.file);m=g.match(this.CHAR_EXP);n=f.fontDefDictionary={};h=0;for(k=m.length;hu||0>t||(u=cc.rect(u*n,t*p,n,p),t=m._contentSize,0>u.x||0>u.y||u.x+u.width>t.width||u.y+u.height>t.height))){s++;var t=h.charCodeAt(r),v=f.getChildByTag(r);v?32===t?(v.init(),v.setTextureRect(cc.rect(0,0,10,10),!1,cc.size(0,0))):(v.initWithTexture(m,u),v.visible=!0):(v=new cc.Sprite,32===t?(v.init(),v.setTextureRect(cc.rect(0,0,10,10),!1,cc.size(0,0))):v.initWithTexture(m,u),cc.Node.prototype.addChild.call(f, v,0,r));v.setPosition(s*n+n/2,p/2)}}this.updateContentSize(r,s+1)};f.updateContentSize=function(f,h){var k=this._node,m=k._contentSize;f!==h&&f*k._itemWidth===m.width&&k._itemHeight===m.height&&k.setContentSize(h*k._itemWidth,k._itemHeight)};f.setString=function(f){f=this._node;if(f._children){f=f._children;for(var h=f.length,k=0;km.getCapacity()&&cc.log("cc.LabelAtlas._updateAtlasValues(): Invalid String length");for(var t=m.quads,u=f._itemWidth,v=f._itemHeight,w=0,x=-1;wz||0>A||z*u+u>p||A*v+v>n)){x++;var C;cc.FIX_ARTIFACTS_BY_STRECHING_TEXEL?(z=(2*z*r+1)/(2*p),y=z+(2*r-2)/(2*p),A=(2*A*s+1)/(2*n),C=A+(2*s-2)/(2*n)):(z=z*r/p,y=z+r/p,A=A*s/n,C=A+s/n);var B=t[w],G=B.tl,E=B.tr,D=B.bl,B=B.br;G.texCoords.u=z;G.texCoords.v=A;E.texCoords.u=y;E.texCoords.v=A;D.texCoords.u=z;D.texCoords.v=C;B.texCoords.u=y;B.texCoords.v=C;D.vertices.x=x*u;D.vertices.y=0;D.vertices.z=0;B.vertices.x=x*u+u;B.vertices.y=0;B.vertices.z=0;G.vertices.x= x*u;G.vertices.y=f._itemHeight;G.vertices.z=0;E.vertices.x=x*u+u;E.vertices.y=f._itemHeight;E.vertices.z=0}}this._updateColor();this.updateContentSize(w,x+1);0f&&m.increaseTotalQuadsWith(k-f))};f.updateContentSize=function(f,h){var k=this._node,m=k._contentSize;f!==h&&f*k._itemWidth===m.width&&k._itemHeight===m.height&&k.setContentSize(h*k._itemWidth,k._itemHeight)};f.setString=function(f){f=f.length;f>this._textureAtlas.totalQuads&&this._textureAtlas.resizeCapacity(f)}; f._addChild=function(){}})();cc.MotionStreak=cc.Node.extend({texture:null,fastMode:!1,startingPositionInitialized:!1,_blendFunc:null,_stroke:0,_fadeDelta:0,_minSeg:0,_maxPoints:0,_nuPoints:0,_previousNuPoints:0,_pointVertexes:null,_pointState:null,_vertices:null,_colorPointer:null,_texCoords:null,_verticesBuffer:null,_colorPointerBuffer:null,_texCoordsBuffer:null,_className:"MotionStreak",ctor:function(f,g,h,k,m){cc.Node.prototype.ctor.call(this);this._positionR=cc.p(0,0);this._blendFunc=new cc.BlendFunc(cc.SRC_ALPHA,cc.ONE_MINUS_SRC_ALPHA); this.startingPositionInitialized=this.fastMode=!1;this.texture=null;this._previousNuPoints=this._nuPoints=this._maxPoints=this._minSeg=this._fadeDelta=this._stroke=0;this._texCoordsBuffer=this._colorPointerBuffer=this._verticesBuffer=this._texCoords=this._colorPointer=this._vertices=this._pointState=this._pointVertexes=null;void 0!==m&&this.initWithFade(f,g,h,k,m)},getTexture:function(){return this.texture},setTexture:function(f){this.texture!==f&&(this.texture=f)},getBlendFunc:function(){return this._blendFunc}, setBlendFunc:function(f,g){void 0===g?this._blendFunc=f:(this._blendFunc.src=f,this._blendFunc.dst=g)},getOpacity:function(){cc.log("cc.MotionStreak.getOpacity has not been supported.");return 0},setOpacity:function(f){cc.log("cc.MotionStreak.setOpacity has not been supported.")},setOpacityModifyRGB:function(f){},isOpacityModifyRGB:function(){return!1},isFastMode:function(){return this.fastMode},setFastMode:function(f){this.fastMode=f},isStartingPositionInitialized:function(){return this.startingPositionInitialized}, setStartingPositionInitialized:function(f){this.startingPositionInitialized=f},getStroke:function(){return this._stroke},setStroke:function(f){this._stroke=f},initWithFade:function(f,g,h,k,m){if(!m)throw Error("cc.MotionStreak.initWithFade(): Invalid filename or texture");cc.isString(m)&&(m=cc.textureCache.addImage(m));cc.Node.prototype.setPosition.call(this,cc.p(0,0));this.anchorY=this.anchorX=0;this.ignoreAnchor=!0;this.startingPositionInitialized=!1;this.fastMode=!0;this._minSeg=-1===g?h/5:g;this._minSeg*= this._minSeg;this._stroke=h;this._fadeDelta=1/f;this._maxPoints=f=(0|60*f)+2;this._nuPoints=0;this._pointState=new Float32Array(f);this._pointVertexes=new Float32Array(2*f);this._vertices=new Float32Array(4*f);this._texCoords=new Float32Array(4*f);this._colorPointer=new Uint8Array(8*f);this._verticesBuffer=gl.createBuffer();this._texCoordsBuffer=gl.createBuffer();this._colorPointerBuffer=gl.createBuffer();this._blendFunc.src=gl.SRC_ALPHA;this._blendFunc.dst=gl.ONE_MINUS_SRC_ALPHA;this.texture=m;this.color= k;this.scheduleUpdate();gl.bindBuffer(gl.ARRAY_BUFFER,this._verticesBuffer);gl.bufferData(gl.ARRAY_BUFFER,this._vertices,gl.DYNAMIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,this._texCoordsBuffer);gl.bufferData(gl.ARRAY_BUFFER,this._texCoords,gl.DYNAMIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,this._colorPointerBuffer);gl.bufferData(gl.ARRAY_BUFFER,this._colorPointer,gl.DYNAMIC_DRAW);return!0},tintWithColor:function(f){this.color=f;for(var g=this._colorPointer,h=0,k=2*this._nuPoints;h=r[g]?n++:(h=g-n,0=this._maxPoints?g=!1:0=g._nuPoints)&&g.texture&&g.texture.isLoaded()){f=f||cc._renderContext;var h=this._worldTransform;this._matrix.mat[0]=h.a;this._matrix.mat[4]=h.c;this._matrix.mat[12]=h.tx;this._matrix.mat[1]=h.b;this._matrix.mat[5]=h.d;this._matrix.mat[13]=h.ty;this._glProgramState.apply(this._matrix);cc.glBlendFunc(g._blendFunc.src,g._blendFunc.dst);cc.glBindTexture2D(g.texture);f.enableVertexAttribArray(cc.VERTEX_ATTRIB_POSITION); f.enableVertexAttribArray(cc.VERTEX_ATTRIB_COLOR);f.enableVertexAttribArray(cc.VERTEX_ATTRIB_TEX_COORDS);f.bindBuffer(f.ARRAY_BUFFER,g._verticesBuffer);f.bufferData(f.ARRAY_BUFFER,g._vertices,f.DYNAMIC_DRAW);f.vertexAttribPointer(cc.VERTEX_ATTRIB_POSITION,2,f.FLOAT,!1,0,0);f.bindBuffer(f.ARRAY_BUFFER,g._texCoordsBuffer);f.bufferData(f.ARRAY_BUFFER,g._texCoords,f.DYNAMIC_DRAW);f.vertexAttribPointer(cc.VERTEX_ATTRIB_TEX_COORDS,2,f.FLOAT,!1,0,0);f.bindBuffer(f.ARRAY_BUFFER,g._colorPointerBuffer);f.bufferData(f.ARRAY_BUFFER, g._colorPointer,f.DYNAMIC_DRAW);f.vertexAttribPointer(cc.VERTEX_ATTRIB_COLOR,4,f.UNSIGNED_BYTE,!0,0,0);f.drawArrays(f.TRIANGLE_STRIP,0,2*g._nuPoints);cc.g_NumberOfDraws++}};cc.NodeGrid=cc.Node.extend({grid:null,_target:null,_gridRect:null,ctor:function(f){cc.Node.prototype.ctor.call(this);void 0===f&&(f=cc.rect());this._gridRect=f},getGrid:function(){return this.grid},setGrid:function(f){this.grid=f},setGridRect:function(f){this._gridRect=f},getGridRect:function(){return this._gridRect},setTarget:function(f){this._target=f},_createRenderCmd:function(){return cc._renderType===cc.game.RENDER_TYPE_WEBGL?new cc.NodeGrid.WebGLRenderCmd(this):new cc.Node.CanvasRenderCmd(this)}}); _p=cc.NodeGrid.prototype;cc.defineGetterSetter(_p,"target",null,_p.setTarget);cc.NodeGrid.create=function(){return new cc.NodeGrid};(function(){cc.NodeGrid.WebGLRenderCmd=function(f){this._rootCtor(f);this._needDraw=!1;this._gridBeginCommand=new cc.CustomRenderCmd(this,this.onGridBeginDraw);this._gridEndCommand=new cc.CustomRenderCmd(this,this.onGridEndDraw)};var f=cc.NodeGrid.WebGLRenderCmd.prototype=Object.create(cc.Node.WebGLRenderCmd.prototype);f.constructor=cc.NodeGrid.WebGLRenderCmd;f.visit=function(f){var h=this._node;if(h._visible){if(f=f||this.getParentRenderCmd())this._curLevel=f._curLevel+1;var k=cc.current_stack;k.stack.push(k.top); this._syncStatus(f);k.top=this._stackMatrix;cc.renderer.pushRenderCommand(this._gridBeginCommand);h._target&&h._target.visit();if((f=h._children)&&0h||this._bufferCapacity>h){var m=Math.max(Math.min(h+h,200),g,this._bufferCapacity);0!==h&&(f.freeBuffer(k,20*h),this._occupiedSize=0);g=this._offset=f.requestBuffer(20*m);if(0<=g){this._occupiedSize=this._bufferCapacity=m;this._f32Buffer=new Float32Array(f.data,g,5*this._occupiedSize);this._ui32Buffer=new Uint32Array(f.data,g,5*this._occupiedSize);if(0!==h&&k!==g)for(h=k/4+5*h,g/=4,k/=4;kthis._offset||0>=this._vertexCount||(this._dirty? (f.updateSubData(this._offset,this._f32Buffer),this._dirty=!1):g.bindBuffer(g.ARRAY_BUFFER,f.vertexBuffer),g.enableVertexAttribArray(cc.VERTEX_ATTRIB_POSITION),g.enableVertexAttribArray(cc.VERTEX_ATTRIB_COLOR),g.enableVertexAttribArray(cc.VERTEX_ATTRIB_TEX_COORDS),g.vertexAttribPointer(cc.VERTEX_ATTRIB_POSITION,2,g.FLOAT,!1,20,0),g.vertexAttribPointer(cc.VERTEX_ATTRIB_COLOR,4,g.UNSIGNED_BYTE,!0,20,8),g.vertexAttribPointer(cc.VERTEX_ATTRIB_TEX_COORDS,2,g.FLOAT,!1,20,12),g.drawArrays(g.TRIANGLES,this._offset/ 20,this._vertexCount),cc.incrementGLDraws(1))},appendVertexData:function(f,g,h,k,n){var p=this._f32Buffer,r=5*this._vertexCount;p[r]=f;p[r+1]=g;m[0]=h.a<<24|h.b<<16|h.g<<8|h.r;this._ui32Buffer[r+2]=m[0];p[r+3]=k;p[r+4]=n;this._vertexCount++},drawDot:function(f,g,h){h=h||this._drawColor;null==h.a&&(h.a=255);var k=f.x-g,m=f.y-g,n=f.x+g;f=f.y+g;this._ensureCapacity(this._vertexCount+6)&&(this.appendVertexData(k,m,h,-1,-1),this.appendVertexData(k,f,h,-1,1),this.appendVertexData(n,f,h,1,1),this.appendVertexData(k, m,h,-1,-1),this.appendVertexData(n,f,h,1,1),this.appendVertexData(n,m,h,1,-1),this._dirty=!0)},drawSegment:function(f,g,h,k){k=k||this.getDrawColor();null==k.a&&(k.a=255);h=h||0.5*this._lineWidth;if(this._ensureCapacity(this._vertexCount+18)){n.x=f.y-g.y;n.y=g.x-f.x;cc.pNormalizeIn(n);p.x=-n.y;p.y=n.x;var m=h;r.x=n.x*m;r.y=n.y*m;s.x=p.x*h;s.y=p.y*h;h=g.x+r.x-s.x;var m=g.y+r.y-s.y,t=n.x-p.x,A=n.y-p.y,C=g.x-r.x,B=g.y-r.y,G=-n.x,E=-n.y,D=g.x+r.x,F=g.y+r.y,H=n.x,J=n.y,K=f.x-r.x,O=f.y-r.y,M=f.x+r.x,L= f.y+r.y,I=n.x,Q=n.y,N=f.x-r.x+s.x,P=f.y-r.y+s.y,T=p.x-n.x,W=p.y-n.y,R=f.x+r.x+s.x;f=f.y+r.y+s.y;var U=n.x+p.x,Z=n.y+p.y;this.appendVertexData(g.x-r.x-s.x,g.y-r.y-s.y,k,-(n.x+p.x),-(n.y+p.y));this.appendVertexData(h,m,k,t,A);this.appendVertexData(C,B,k,G,E);this.appendVertexData(D,F,k,H,J);this.appendVertexData(h,m,k,t,A);this.appendVertexData(C,B,k,G,E);this.appendVertexData(D,F,k,H,J);this.appendVertexData(K,O,k,G,E);this.appendVertexData(C,B,k,G,E);this.appendVertexData(D,F,k,H,J);this.appendVertexData(K, O,k,G,E);this.appendVertexData(M,L,k,I,Q);this.appendVertexData(N,P,k,T,W);this.appendVertexData(K,O,k,G,E);this.appendVertexData(M,L,k,I,Q);this.appendVertexData(N,P,k,T,W);this.appendVertexData(R,f,k,U,Z);this.appendVertexData(M,L,k,I,Q);this._dirty=!0}},drawPoly:function(f,h,k,m){if("object"===typeof f[0]){for(var p=g.length=0;p=g)){h=h||this._drawColor;null==h.a&&(h.a=255);g*=0.5;var m,p,s,C,B,G,E,D=f.length;for(E=t.length=0;E