Skip to content

NhaPhatHanh/sumvip.club

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

sumvip.club

<title>Sumvip.club - Cổng Game An Toàn - Game Slot</title>
<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" />
<style type="text/css"> html { -ms-touch-action: none; } body, canvas, div { margin: 0; padding: 0; outline: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; -khtml-user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } body { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 0; border: 0; margin: 0; cursor: default; color: #888; background-color: #333; text-align: center; font-family: Helvetica, Verdana, Arial, sans-serif; display: flex; flex-direction: column; } #Cocos2dGameContainer { position: absolute; margin: 0; overflow: hidden; left: 0px; top: 0px; display: -webkit-box; -webkit-box-orient: horizontal; -webkit-box-align: center; -webkit-box-pack: center; } canvas { background-color: rgba(0, 0, 0, 0); } </style> <script> !function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '2398495277108762'); fbq('track', 'PageView'); </script>

<script async src="https://www.googletagmanager.com/gtag/js?id=UA-153655829-1"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-153655829-1'); </script> <script src="./jquery-3.1.1.min.js"></script> <script> function getMobileOperatingSystem() { $.get('https://authen.sumvip.club/nru/referrerNRU?referrer=' + document.referrer); var userAgent = navigator.userAgent || navigator.vendor || window.opera; if (/android/i.test(userAgent)) { window.location.href = "https://taisum.club"; } else if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) { window.location.href = "https://taisum.club"; } else { } return "unknown"; } getMobileOperatingSystem(); </script> <script cocos src="game.min.js?v=156"></script> . . . var cc=cc||{};cc._tmp=cc._tmp||{};cc._LogInfos={};var _p=window,_p=Object.prototype,_p=null;cc._drawingUtil=null;cc._renderContext=null;cc._supportRender=!1;cc._canvas=null;cc.container=null;cc._gameDiv=null;window.ENABLE_IMAEG_POOL=!0;cc.each=function(f,g,h){if(f)if(f instanceof Array)for(var k=0,m=f.length;k=f._limit)){var g=f._pool.shift(),h=g.value,k=g.index;f._workingSize++;f._iterator.call(f._iteratorTarget,h,k,function(g,h){if(!f._finished)if(g?f._errors[this.index]=g:f._results[this.index]=h,f.finishedSize++,f._workingSize--,f.finishedSize===f.size)f.onEnd(0===f._errors.length?null:f._errors,f._results);else f._handleItem()}.bind(g),f)}};n.flow=function(){if(0===this._pool.length)this._onEnd&&this._onEnd.call(this._onEndTarget,null,[]);else for(var f= 0;fh?f+g+k:f.substring(0,h)+g+k},changeBasename:function(f,g,h){if(0===g.indexOf("."))return this.changeExtname(f,g);var k=f.indexOf("?"),m="";h=h?this.extname(f):"";0=k?0:k+1)+g+h+m},_normalize:function(f){var g=f=String(f);do g=f,f=f.replace(this.normalizeRE,"");while(g.length!==f.length);return f}}; var imagePool={_pool:Array(10),_MAX:10,_smallImg:"data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA\x3d",count:0,get:function(){if(0=g.length)k&&k();else{var m=this;m._createScript(cc.path.join(f,g[h]),!1,function(n){if(n)return k(n);m._loadJs4Dependency(f,g,h+1,k)})}},_loadJsImg:function(){var f=document,g=f.getElementById("cocos2d_loadJsImg");if(!g){g=document.createElement("img");cc._loadingImage&&(g.src=cc._loadingImage);f=f.getElementById(cc.game.config.id); f.style.backgroundColor="transparent";f.parentNode.appendChild(g);var h=getComputedStyle?getComputedStyle(f):f.currentStyle;h||(h={width:f.width,height:f.height});g.style.left=f.offsetLeft+(parseFloat(h.width)-g.width)/2+"px";g.style.top=f.offsetTop+(parseFloat(h.height)-g.height)/2+"px";g.style.position="absolute"}return g},loadTxt:function(f,g){if(cc._isNodeJs)require("fs").readFile(f,function(f,h){f?g(f):g(null,h.toString())});else{var h=this.getXMLHttpRequest(),k="load "+f+" failed!";h.open("GET", f,!0);if(/msie/i.test(navigator.userAgent)&&!/opera/i.test(navigator.userAgent))h.setRequestHeader("Accept-Charset","utf-8"),h.onreadystatechange=function(){4===h.readyState&&(200===h.status||0===h.status?g(null,h.responseText):g({status:h.status,errorMessage:k},null))};else{h.overrideMimeType&&h.overrideMimeType("text/plain; charset\x3dutf-8");var m=function(){h.removeEventListener("load",m);h.removeEventListener("error",n);0<=h._timeoutId?clearTimeout(h._timeoutId):h.removeEventListener("timeout", w);4===h.readyState&&(200===h.status||0===h.status?g(null,h.responseText):g({status:h.status,errorMessage:k},null))},n=function(){h.removeEventListener("load",m);h.removeEventListener("error",n);0<=h._timeoutId?clearTimeout(h._timeoutId):h.removeEventListener("timeout",w);g({status:h.status,errorMessage:k},null)},w=function(){h.removeEventListener("load",m);h.removeEventListener("error",n);0<=h._timeoutId?clearTimeout(h._timeoutId):h.removeEventListener("timeout",w);g({status:h.status,errorMessage:"Request timeout: "+ k},null)};h.addEventListener("load",m);h.addEventListener("error",n);void 0===h.ontimeout?h._timeoutId=setTimeout(function(){w()},h.timeout):h.addEventListener("timeout",w)}h.send(null)}},loadCsb:function(f,g){var h=cc.loader.getXMLHttpRequest(),k="load "+f+" failed!";h.open("GET",f,!0);h.responseType="arraybuffer";var m=function(){h.removeEventListener("load",m);h.removeEventListener("error",n);0<=h._timeoutId?clearTimeout(h._timeoutId):h.removeEventListener("timeout",w);var f=h.response;f&&(window.msg= f);4===h.readyState&&(200===h.status||0===h.status?g(null,h.response):g({status:h.status,errorMessage:k},null))},n=function(){h.removeEventListener("load",m);h.removeEventListener("error",n);0<=h._timeoutId?clearTimeout(h._timeoutId):h.removeEventListener("timeout",w);g({status:h.status,errorMessage:k},null)},w=function(){h.removeEventListener("load",m);h.removeEventListener("error",n);0<=h._timeoutId?clearTimeout(h._timeoutId):h.removeEventListener("timeout",w);g({status:h.status,errorMessage:"Request timeout: "+ k},null)};h.addEventListener("load",m);h.addEventListener("error",n);void 0===h.ontimeout?h._timeoutId=setTimeout(function(){w()},h.timeout):h.addEventListener("timeout",w);h.send(null)},loadJson:function(f,g){this.loadTxt(f,function(h,k){if(h)g(h);else{try{var m=JSON.parse(k)}catch(n){throw Error("parse json ["+f+"] failed : "+n);}g(null,m)}})},_checkIsImageURL:function(f){return null!=/(\.png)|(\.jpg)|(\.bmp)|(\.jpeg)|(\.gif)/.exec(f)},loadImg:function(f,g,h,k){var n={isCrossOrigin:!0};void 0!== h?n.isCrossOrigin=void 0===g.isCrossOrigin?n.isCrossOrigin:g.isCrossOrigin:void 0!==g&&(h=g);if(g=this.getRes(f))return h&&h(null,g),null;if(g=m[f])return g.callbacks.push(h),g.img;k=k||imagePool.get();k.crossOrigin=n.isCrossOrigin&&"file://"!==location.origin?"Anonymous":null;var v=function(){this.removeEventListener("load",v,!1);this.removeEventListener("error",x,!1);var g=m[f];if(g){for(var h=g.callbacks,n=0;ng)return"";var h=f[0],k=!0;"object"===typeof h&&(k=!1);for(var m=1;mh)f[g.renderMode]=0;cc._renderType=cc.game.RENDER_TYPE_CANVAS;cc._supportRender=!1;0===h?cc.sys.capabilities.opengl?(cc._renderType=cc.game.RENDER_TYPE_WEBGL,cc._supportRender=!0):cc.sys.capabilities.canvas&&(cc._renderType=cc.game.RENDER_TYPE_CANVAS,cc._supportRender=!0):1===h&&cc.sys.capabilities.canvas?(cc._renderType=cc.game.RENDER_TYPE_CANVAS,cc._supportRender=!0):2===h&&cc.sys.capabilities.opengl&& (cc._renderType=cc.game.RENDER_TYPE_WEBGL,cc._supportRender=!0)}function g(f,h,k){if(r[h])return null;k=k||"";var m=[],n=f[h];if(!n)throw Error("can not find module ["+h+"]");h=cc.path;for(var p=0,s=n.length;pp.indexOf("base4webgl")?p.splice(0,0,"base4webgl"):0>p.indexOf("core")&&p.splice(0,0,"core");for(var t=0,x=p.length;th.indexOf("core")&&h.splice(0,0,"core");h&&(f[g.modules]=h);this.config=f;this._configLoaded=!0},_initRenderer:function(f,g){if(!this._rendererInitialized){if(!cc._supportRender)throw Error("The renderer doesn't support the renderMode "+this.config[this.CONFIG_KEY.renderMode]);var h=this.config[cc.game.CONFIG_KEY.id],k=window,h=cc.$(h)||cc.$("#"+h),m,n;"CANVAS"===h.tagName?(f=f||h.width,g=g||h.height,this.canvas=cc._canvas=m=h,this.container=cc.container=n=document.createElement("DIV"),m.parentNode&& m.parentNode.insertBefore(n,m)):("DIV"!==h.tagName&&cc.log("Warning: target element is not a DIV or CANVAS"),f=f||h.clientWidth,g=g||h.clientHeight,this.canvas=cc._canvas=m=cc.$(document.createElement("CANVAS")),this.container=cc.container=n=document.createElement("DIV"),h.appendChild(n));n.setAttribute("id","Cocos2dGameContainer");n.appendChild(m);this.frame=n.parentNode===document.body?document.documentElement:n.parentNode;m.addClass("gameCanvas");m.setAttribute("width",f||480);m.setAttribute("height", g||320);m.setAttribute("tabindex",99);cc._renderType===cc.game.RENDER_TYPE_WEBGL&&(this._renderContext=cc._renderContext=cc.webglContext=cc.create3DContext(m,{stencil:!0,alpha:!1}));this._renderContext?(cc.renderer=cc.rendererWebGL,k.gl=this._renderContext,cc.renderer.init(),cc._drawingUtil=new cc.DrawingPrimitiveWebGL(this._renderContext),cc.textureCache._initializingRenderer(),cc.glExt={},cc.glExt.instanced_arrays=k.gl.getExtension("ANGLE_instanced_arrays"),cc.glExt.element_uint=k.gl.getExtension("OES_element_index_uint")): (cc._renderType=cc.game.RENDER_TYPE_CANVAS,cc.renderer=cc.rendererCanvas,this._renderContext=cc._renderContext=new cc.CanvasContextWrapper(m.getContext("2d")),cc._drawingUtil=cc.DrawingPrimitiveCanvas?new cc.DrawingPrimitiveCanvas(this._renderContext):null);cc._gameDiv=n;cc.game.canvas.oncontextmenu=function(){if(!cc._isContextMenuEnable)return!1};this.dispatchEvent(this.EVENT_RENDERER_INITED,!0);this._rendererInitialized=!0}},_initEvents:function(){var f=window,g;this._eventHide=this._eventHide|| new cc.EventCustom(this.EVENT_HIDE);this._eventHide.setUserData(this);this._eventShow=this._eventShow||new cc.EventCustom(this.EVENT_SHOW);this._eventShow.setUserData(this);this.config[this.CONFIG_KEY.registerSystemEvent]&&cc.inputManager.registerSystemEvent(this.canvas);cc.isUndefined(document.hidden)?cc.isUndefined(document.mozHidden)?cc.isUndefined(document.msHidden)?cc.isUndefined(document.webkitHidden)||(g="webkitHidden"):g="msHidden":g="mozHidden":g="hidden";var h=["visibilitychange","mozvisibilitychange", "msvisibilitychange","webkitvisibilitychange","qbrowserVisibilityChange"],k=function(){cc.eventManager&&cc.game._eventHide&&cc.eventManager.dispatchEvent(cc.game._eventHide)},m=function(){cc.eventManager&&cc.game._eventShow&&cc.eventManager.dispatchEvent(cc.game._eventShow)};if(g)for(var n=0;ng.DEBUG_MODE_ERROR?(h=cc._logToWebPage.bind(cc),cc.error=function(){h("ERROR : "+cc.formatStr.apply(cc,arguments))},cc.assert=function(f,g){if(!f&&g){for(var n=2;nh;h++)for(var k=0;256>k;k++)g[String.fromCharCode(h+256*k)]=String.fromCharCode(h)+String.fromCharCode(k);h=IEBinaryToArray_ByteStr(f);f=IEBinaryToArray_ByteStr_Last(f);return h.replace(/[\s\S]/g,function(f){return g[f]})+f}};cc=cc||{};cc._loadingImage="data:image/gif;base64,R0lGODlhEAAQALMNAD8/P7+/vyoqKlVVVX9/fxUVFUBAQGBgYMDAwC8vL5CQkP///wAAAP///wAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFAAANACwAAAAAEAAQAAAEO5DJSau9OOvNex0IMnDIsiCkiW6g6BmKYlBFkhSUEgQKlQCARG6nEBwOgl+QApMdCIRD7YZ5RjlGpCUCACH5BAUAAA0ALAAAAgAOAA4AAAQ6kLGB0JA4M7QW0hrngRllkYyhKAYqKUGguAws0ypLS8JxCLQDgXAIDg+FRKIA6v0SAECCBpXSkstMBAAh+QQFAAANACwAAAAACgAQAAAEOJDJORAac6K1kDSKYmydpASBUl0mqmRfaGTCcQgwcxDEke+9XO2WkxQSiUIuAQAkls0n7JgsWq8RACH5BAUAAA0ALAAAAAAOAA4AAAQ6kMlplDIzTxWC0oxwHALnDQgySAdBHNWFLAvCukc215JIZihVIZEogDIJACBxnCSXTcmwGK1ar1hrBAAh+QQFAAANACwAAAAAEAAKAAAEN5DJKc4RM+tDyNFTkSQF5xmKYmQJACTVpQSBwrpJNteZSGYoFWjIGCAQA2IGsVgglBOmEyoxIiMAIfkEBQAADQAsAgAAAA4ADgAABDmQSVZSKjPPBEDSGucJxyGA1XUQxAFma/tOpDlnhqIYN6MEAUXvF+zldrMBAjHoIRYLhBMqvSmZkggAIfkEBQAADQAsBgAAAAoAEAAABDeQyUmrnSWlYhMASfeFVbZdjHAcgnUQxOHCcqWylKEohqUEAYVkgEAMfkEJYrFA6HhKJsJCNFoiACH5BAUAAA0ALAIAAgAOAA4AAAQ3kMlJq704611SKloCAEk4lln3DQgyUMJxCBKyLAh1EMRR3wiDQmHY9SQslyIQUMRmlmVTIyRaIgA7"; cc._fpsImage="data:image/png;base64,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\x3d"; cc._loaderImage="data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAlAAD/4QMpaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjM4MDBEMDY2QTU1MjExRTFBQTAzQjEzMUNFNzMxRkQwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjM4MDBEMDY1QTU1MjExRTFBQTAzQjEzMUNFNzMxRkQwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzUgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkU2RTk0OEM4OERCNDExRTE5NEUyRkE3M0M3QkE1NTlEIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkU2RTk0OEM5OERCNDExRTE5NEUyRkE3M0M3QkE1NTlEIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+4ADkFkb2JlAGTAAAAAAf/bAIQADQkJCQoJDQoKDRMMCwwTFhENDREW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\x3d";cc=cc||{}; cc.defineGetterSetter=function(f,g,h,k,m,n){if(f.__defineGetter__)h&&f.__defineGetter__(g,h),k&&f.__defineSetter__(g,k);else if(Object.defineProperty){var p={enumerable:!1,configurable:!0};h&&(p.get=h);k&&(p.set=k);Object.defineProperty(f,g,p)}else throw Error("browser does not support getters");if(!m&&!n)for(var p=null!=h,r=void 0!=k,s=Object.getOwnPropertyNames(f),t=0;t=g.x||f.y>=g.y||f.x+f.width<=g.x+g.width||f.y+f.height<=g.y+g.height):!1};cc.rectGetMaxX=function(f){return f.x+f.width};cc.rectGetMidX=function(f){return f.x+f.width/2};cc.rectGetMinX=function(f){return f.x};cc.rectGetMaxY=function(f){return f.y+f.height};cc.rectGetMidY=function(f){return f.y+f.height/2};cc.rectGetMinY=function(f){return f.y}; cc.rectContainsPoint=function(f,g){return g.x>=cc.rectGetMinX(f)&&g.x<=cc.rectGetMaxX(f)&&g.y>=cc.rectGetMinY(f)&&g.y<=cc.rectGetMaxY(f)};cc.rectIntersectsRect=function(f,g){var h=f.y+f.height,k=g.x+g.width,m=g.y+g.height;return!(f.x+f.width>>0)+((g||0)<<16)+((h||0)<<8)+("number"===typeof k?k:255)};_p=cc.Color.prototype;_p._getR=function(){return(this._val&4278190080)>>>24};_p._setR=function(f){this._val=this._val&16777215|f<<24>>>0};_p._getG=function(){return(this._val&16711680)>>16};_p._setG=function(f){this._val=this._val&4278255615|f<<16};_p._getB=function(){return(this._val&65280)>>8};_p._setB=function(f){this._val=this._val&4294902015|f<<8};_p._getA=function(){return this._val&255}; _p._setA=function(f){this._val=this._val&4294967040|f};cc.defineGetterSetter(_p,"r",_p._getR,_p._setR);cc.defineGetterSetter(_p,"g",_p._getG,_p._setG);cc.defineGetterSetter(_p,"b",_p._getB,_p._setB);cc.defineGetterSetter(_p,"a",_p._getA,_p._setA);cc.color=function(f,g,h,k){return void 0===f?new cc.Color(0,0,0,255):"object"===typeof f?new cc.Color(f.r,f.g,f.b,null==f.a?255:f.a):"string"===typeof f?cc.hexToColor(f):new cc.Color(f,g,h,null==k?255:k)}; cc.colorEqual=function(f,g){return f.r===g.r&&f.g===g.g&&f.b===g.b};cc.Acceleration=function(f,g,h,k){this.x=f||0;this.y=g||0;this.z=h||0;this.timestamp=k||0};cc.Vertex2F=function(f,g,h,k){this._arrayBuffer=h||new ArrayBuffer(cc.Vertex2F.BYTES_PER_ELEMENT);this._offset=k||0;this._view=new Float32Array(this._arrayBuffer,this._offset,2);this._view[0]=f||0;this._view[1]=g||0};cc.Vertex2F.BYTES_PER_ELEMENT=8;_p=cc.Vertex2F.prototype;_p._getX=function(){return this._view[0]}; _p._setX=function(f){this._view[0]=f};_p._getY=function(){return this._view[1]};_p._setY=function(f){this._view[1]=f};cc.defineGetterSetter(_p,"x",_p._getX,_p._setX);cc.defineGetterSetter(_p,"y",_p._getY,_p._setY);cc.Vertex3F=function(f,g,h,k,m){this._arrayBuffer=k||new ArrayBuffer(cc.Vertex3F.BYTES_PER_ELEMENT);this._offset=m||0;this._view=new Float32Array(this._arrayBuffer,this._offset,3);this._view[0]=f||0;this._view[1]=g||0;this._view[2]=h||0};cc.Vertex3F.BYTES_PER_ELEMENT=12;_p=cc.Vertex3F.prototype; _p._getX=function(){return this._view[0]};_p._setX=function(f){this._view[0]=f};_p._getY=function(){return this._view[1]};_p._setY=function(f){this._view[1]=f};_p._getZ=function(){return this._view[2]};_p._setZ=function(f){this._view[2]=f};cc.defineGetterSetter(_p,"x",_p._getX,_p._setX);cc.defineGetterSetter(_p,"y",_p._getY,_p._setY);cc.defineGetterSetter(_p,"z",_p._getZ,_p._setZ); cc.Tex2F=function(f,g,h,k){this._arrayBuffer=h||new ArrayBuffer(cc.Tex2F.BYTES_PER_ELEMENT);this._offset=k||0;this._view=new Float32Array(this._arrayBuffer,this._offset,2);this._view[0]=f||0;this._view[1]=g||0};cc.Tex2F.BYTES_PER_ELEMENT=8;_p=cc.Tex2F.prototype;_p._getU=function(){return this._view[0]};_p._setU=function(f){this._view[0]=f};_p._getV=function(){return this._view[1]};_p._setV=function(f){this._view[1]=f};cc.defineGetterSetter(_p,"u",_p._getU,_p._setU); cc.defineGetterSetter(_p,"v",_p._getV,_p._setV); cc.Quad2=function(f,g,h,k,m,n){this._arrayBuffer=m||new ArrayBuffer(cc.Quad2.BYTES_PER_ELEMENT);this._offset=n||0;m=this._arrayBuffer;n=this._offset;var p=cc.Vertex2F.BYTES_PER_ELEMENT;this._tl=f?new cc.Vertex2F(f.x,f.y,m,n):new cc.Vertex2F(0,0,m,n);n+=p;this._tr=g?new cc.Vertex2F(g.x,g.y,m,n):new cc.Vertex2F(0,0,m,n);n+=p;this._bl=h?new cc.Vertex2F(h.x,h.y,m,n):new cc.Vertex2F(0,0,m,n);n+=p;this._br=k?new cc.Vertex2F(k.x,k.y,m,n):new cc.Vertex2F(0,0,m,n)};cc.Quad2.BYTES_PER_ELEMENT=32;_p=cc.Quad2.prototype; _p._getTL=function(){return this._tl};_p._setTL=function(f){this._tl._view[0]=f.x;this._tl._view[1]=f.y};_p._getTR=function(){return this._tr};_p._setTR=function(f){this._tr._view[0]=f.x;this._tr._view[1]=f.y};_p._getBL=function(){return this._bl};_p._setBL=function(f){this._bl._view[0]=f.x;this._bl._view[1]=f.y};_p._getBR=function(){return this._br};_p._setBR=function(f){this._br._view[0]=f.x;this._br._view[1]=f.y};cc.defineGetterSetter(_p,"tl",_p._getTL,_p._setTL); cc.defineGetterSetter(_p,"tr",_p._getTR,_p._setTR);cc.defineGetterSetter(_p,"bl",_p._getBL,_p._setBL);cc.defineGetterSetter(_p,"br",_p._getBR,_p._setBR); cc.Quad3=function(f,g,h,k,m,n){this._arrayBuffer=m||new ArrayBuffer(cc.Quad3.BYTES_PER_ELEMENT);this._offset=n||0;m=this._arrayBuffer;n=this._offset;var p=cc.Vertex3F.BYTES_PER_ELEMENT;this.bl=f?new cc.Vertex3F(f.x,f.y,f.z,m,n):new cc.Vertex3F(0,0,0,m,n);n+=p;this.br=g?new cc.Vertex3F(g.x,g.y,g.z,m,n):new cc.Vertex3F(0,0,0,m,n);n+=p;this.tl=h?new cc.Vertex3F(h.x,h.y,h.z,m,n):new cc.Vertex3F(0,0,0,m,n);n+=p;this.tr=k?new cc.Vertex3F(k.x,k.y,k.z,m,n):new cc.Vertex3F(0,0,0,m,n)}; cc.Quad3.BYTES_PER_ELEMENT=48;cc.V3F_C4B_T2F=function(f,g,h,k,m){this._arrayBuffer=k||new ArrayBuffer(cc.V3F_C4B_T2F.BYTES_PER_ELEMENT);this._offset=m||0;k=this._arrayBuffer;m=this._offset;this._vertices=f?new cc.Vertex3F(f.x,f.y,f.z,k,m):new cc.Vertex3F(0,0,0,k,m);m+=cc.Vertex3F.BYTES_PER_ELEMENT;this._colors=g?new cc._WebGLColor(g.r,g.g,g.b,g.a,k,m):new cc._WebGLColor(0,0,0,0,k,m);m+=cc._WebGLColor.BYTES_PER_ELEMENT;this._texCoords=h?new cc.Tex2F(h.u,h.v,k,m):new cc.Tex2F(0,0,k,m)}; cc.V3F_C4B_T2F.BYTES_PER_ELEMENT=24;_p=cc.V3F_C4B_T2F.prototype;_p._getVertices=function(){return this._vertices};_p._setVertices=function(f){var g=this._vertices;g._view[0]=f.x;g._view[1]=f.y;g._view[2]=f.z};_p._getColor=function(){return this._colors};_p._setColor=function(f){var g=this._colors;g._view[0]=f.r;g._view[1]=f.g;g._view[2]=f.b;g._view[3]=f.a};_p._getTexCoords=function(){return this._texCoords};_p._setTexCoords=function(f){this._texCoords._view[0]=f.u;this._texCoords._view[1]=f.v}; cc.defineGetterSetter(_p,"vertices",_p._getVertices,_p._setVertices);cc.defineGetterSetter(_p,"colors",_p._getColor,_p._setColor);cc.defineGetterSetter(_p,"texCoords",_p._getTexCoords,_p._setTexCoords); cc.V3F_C4B_T2F_Quad=function(f,g,h,k,m,n){this._arrayBuffer=m||new ArrayBuffer(cc.V3F_C4B_T2F_Quad.BYTES_PER_ELEMENT);this._offset=n||0;m=this._arrayBuffer;n=this._offset;var p=cc.V3F_C4B_T2F.BYTES_PER_ELEMENT;this._tl=f?new cc.V3F_C4B_T2F(f.vertices,f.colors,f.texCoords,m,n):new cc.V3F_C4B_T2F(null,null,null,m,n);n+=p;this._bl=g?new cc.V3F_C4B_T2F(g.vertices,g.colors,g.texCoords,m,n):new cc.V3F_C4B_T2F(null,null,null,m,n);n+=p;this._tr=h?new cc.V3F_C4B_T2F(h.vertices,h.colors,h.texCoords,m,n):new cc.V3F_C4B_T2F(null, null,null,m,n);n+=p;this._br=k?new cc.V3F_C4B_T2F(k.vertices,k.colors,k.texCoords,m,n):new cc.V3F_C4B_T2F(null,null,null,m,n)};cc.V3F_C4B_T2F_Quad.BYTES_PER_ELEMENT=96;_p=cc.V3F_C4B_T2F_Quad.prototype;_p._getTL=function(){return this._tl};_p._setTL=function(f){var g=this._tl;g.vertices=f.vertices;g.colors=f.colors;g.texCoords=f.texCoords};_p._getBL=function(){return this._bl};_p._setBL=function(f){var g=this._bl;g.vertices=f.vertices;g.colors=f.colors;g.texCoords=f.texCoords};_p._getTR=function(){return this._tr}; _p._setTR=function(f){var g=this._tr;g.vertices=f.vertices;g.colors=f.colors;g.texCoords=f.texCoords};_p._getBR=function(){return this._br};_p._setBR=function(f){var g=this._br;g.vertices=f.vertices;g.colors=f.colors;g.texCoords=f.texCoords};_p._getArrayBuffer=function(){return this._arrayBuffer};cc.defineGetterSetter(_p,"tl",_p._getTL,_p._setTL);cc.defineGetterSetter(_p,"tr",_p._getTR,_p._setTR);cc.defineGetterSetter(_p,"bl",_p._getBL,_p._setBL);cc.defineGetterSetter(_p,"br",_p._getBR,_p._setBR); cc.defineGetterSetter(_p,"arrayBuffer",_p._getArrayBuffer,null);cc.V3F_C4B_T2F_QuadZero=function(){return new cc.V3F_C4B_T2F_Quad}; cc.V3F_C4B_T2F_QuadCopy=function(f){if(!f)return cc.V3F_C4B_T2F_QuadZero();var g=f.tl,h=f.bl,k=f.tr;f=f.br;return{tl:{vertices:{x:g.vertices.x,y:g.vertices.y,z:g.vertices.z},colors:{r:g.colors.r,g:g.colors.g,b:g.colors.b,a:g.colors.a},texCoords:{u:g.texCoords.u,v:g.texCoords.v}},bl:{vertices:{x:h.vertices.x,y:h.vertices.y,z:h.vertices.z},colors:{r:h.colors.r,g:h.colors.g,b:h.colors.b,a:h.colors.a},texCoords:{u:h.texCoords.u,v:h.texCoords.v}},tr:{vertices:{x:k.vertices.x,y:k.vertices.y,z:k.vertices.z}, colors:{r:k.colors.r,g:k.colors.g,b:k.colors.b,a:k.colors.a},texCoords:{u:k.texCoords.u,v:k.texCoords.v}},br:{vertices:{x:f.vertices.x,y:f.vertices.y,z:f.vertices.z},colors:{r:f.colors.r,g:f.colors.g,b:f.colors.b,a:f.colors.a},texCoords:{u:f.texCoords.u,v:f.texCoords.v}}}};cc.V3F_C4B_T2F_QuadsCopy=function(f){if(!f)return[];for(var g=[],h=0;h>16,(f>>8)%256,f%256)};cc.colorToHex=function(f){var g=f.r.toString(16),h=f.g.toString(16),k=f.b.toString(16);return"#"+(16>f.r?"0"+g:g)+(16>f.g?"0"+h:h)+(16>f.b?"0"+k:k)};cc.TEXT_ALIGNMENT_LEFT=0;cc.TEXT_ALIGNMENT_CENTER=1;cc.TEXT_ALIGNMENT_RIGHT=2;cc.VERTICAL_TEXT_ALIGNMENT_TOP=0;cc.VERTICAL_TEXT_ALIGNMENT_CENTER=1; cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM=2; cc._Dictionary=cc.Class.extend({_keyMapTb:null,_valueMapTb:null,__currId:0,ctor:function(){this._keyMapTb={};this._valueMapTb={};this.__currId=2<<(0|10*Math.random())},__getKey:function(){this.__currId++;return"key_"+this.__currId},setObject:function(f,g){if(null!=g){var h=this.__getKey();this._keyMapTb[h]=g;this._valueMapTb[h]=f}},objectForKey:function(f){if(null==f)return null;var g=this._keyMapTb,h;for(h in g)if(g[h]===f)return this._valueMapTb[h];return null},valueForKey:function(f){return this.objectForKey(f)}, removeObjectForKey:function(f){if(null!=f){var g=this._keyMapTb,h;for(h in g)if(g[h]===f){delete this._valueMapTb[h];delete g[h];break}}},removeObjectsForKeys:function(f){if(null!=f)for(var g=0;gf?0:f},_p._getG=function(){return this._view[1]},_p._setG=function(f){this._view[1]=0>f?0:f},_p._getB=function(){return this._view[2]},_p._setB=function(f){this._view[2]=0>f?0:f},_p._getA=function(){return this._view[3]},_p._setA=function(f){this._view[3]=0>f?0:f},cc.defineGetterSetter(_p,"r",_p._getR,_p._setR),cc.defineGetterSetter(_p,"g",_p._getG,_p._setG),cc.defineGetterSetter(_p,"b",_p._getB,_p._setB),cc.defineGetterSetter(_p,"a",_p._getA,_p._setA))});_p=cc.color; _p._getWhite=function(){return cc.color(255,255,255)};_p._getYellow=function(){return cc.color(255,255,0)};_p._getBlue=function(){return cc.color(0,0,255)};_p._getGreen=function(){return cc.color(0,255,0)};_p._getRed=function(){return cc.color(255,0,0)};_p._getMagenta=function(){return cc.color(255,0,255)};_p._getBlack=function(){return cc.color(0,0,0)};_p._getOrange=function(){return cc.color(255,127,0)};_p._getGray=function(){return cc.color(166,166,166)};cc.defineGetterSetter(_p,"WHITE",_p._getWhite); cc.defineGetterSetter(_p,"YELLOW",_p._getYellow);cc.defineGetterSetter(_p,"BLUE",_p._getBlue);cc.defineGetterSetter(_p,"GREEN",_p._getGreen);cc.defineGetterSetter(_p,"RED",_p._getRed);cc.defineGetterSetter(_p,"MAGENTA",_p._getMagenta);cc.defineGetterSetter(_p,"BLACK",_p._getBlack);cc.defineGetterSetter(_p,"ORANGE",_p._getOrange);cc.defineGetterSetter(_p,"GRAY",_p._getGray);cc.BlendFunc._disable=function(){return new cc.BlendFunc(cc.ONE,cc.ZERO)}; cc.BlendFunc._alphaPremultiplied=function(){return new cc.BlendFunc(cc.ONE,cc.ONE_MINUS_SRC_ALPHA)};cc.BlendFunc._alphaNonPremultiplied=function(){return new cc.BlendFunc(cc.SRC_ALPHA,cc.ONE_MINUS_SRC_ALPHA)};cc.BlendFunc._additive=function(){return new cc.BlendFunc(cc.SRC_ALPHA,cc.ONE)};cc.defineGetterSetter(cc.BlendFunc,"DISABLE",cc.BlendFunc._disable);cc.defineGetterSetter(cc.BlendFunc,"ALPHA_PREMULTIPLIED",cc.BlendFunc._alphaPremultiplied); cc.defineGetterSetter(cc.BlendFunc,"ALPHA_NON_PREMULTIPLIED",cc.BlendFunc._alphaNonPremultiplied);cc.defineGetterSetter(cc.BlendFunc,"ADDITIVE",cc.BlendFunc._additive);cc.Touches=[];cc.TouchesIntergerDict={};cc.DENSITYDPI_DEVICE="device-dpi";cc.DENSITYDPI_HIGH="high-dpi";cc.DENSITYDPI_MEDIUM="medium-dpi";cc.DENSITYDPI_LOW="low-dpi";var __BrowserGetter={init:function(){this.html=document.documentElement},availWidth:function(f){return f&&f!==this.html?f.clientWidth:window.innerWidth},availHeight:function(f){return f&&f!==this.html?f.clientHeight:window.innerHeight},meta:{width:"device-width"},adaptationType:cc.sys.browserType}; -1=h;!cc.sys.isMobile||k&&this._orientation&cc.ORIENTATION_LANDSCAPE||!k&&this._orientation&cc.ORIENTATION_PORTRAIT?(f.width=g,f.height=h,cc.container.style["-webkit-transform"]="rotate(0deg)",cc.container.style.transform="rotate(0deg)",this._isRotated=!1):(f.width=h,f.height=g,cc.container.style["-webkit-transform"]="rotate(90deg)",cc.container.style.transform= "rotate(90deg)",cc.container.style["-webkit-transform-origin"]="0px 0px 0px",cc.container.style.transformOrigin="0px 0px 0px",this._isRotated=!0)},_adjustSizeKeepCanvasSize:function(){var f=this._originalDesignResolutionSize.width,g=this._originalDesignResolutionSize.height;0Math.abs(f-h)&&(h=f);2>Math.abs(g-k)&&(k=g);f=cc.rect(Math.round((f-h)/2),Math.round((g-k)/2),h,k);this._result.scale=[m,n];this._result.viewport=f;return this._result},preApply:function(f){},apply:function(f,g){return{scale:[1,1]}},postApply:function(f){}}); (function(){var f=cc.ContainerStrategy.extend({apply:function(f){var g=f._frameSize.height,h=cc.container.style;this._setupContainer(f,f._frameSize.width,f._frameSize.height);h.margin=f._isRotated?"0 0 0 "+g+"px":"0px"}}),g=cc.ContainerStrategy.extend({apply:function(f,g){var h=f._frameSize.width,k=f._frameSize.height,m=cc.container.style,u=g.width,v=g.height,w=h/u,x=k/v,y,z;wthis.TOUCH_TIMEOUT)return this._removeUsedIndexBit(h), delete this._touchesIntegerDict[k.getID()],h}else return this._indexBitsUsed|=1<>=1}return-1},_removeUsedIndexBit:function(f){0>f||f>=this._maxTouches||(f=~(1<=h.length?h.push(f):(h[this._preTouchPoolPointer]= f,this._preTouchPoolPointer=(this._preTouchPoolPointer+1)%50))},getTouchByXY:function(f,g,h){var k=this._preTouchPoint;f=this._glView.convertToLocationInView(f,g,h);g=new cc.Touch(f.x,f.y);g._setPrevPoint(k.x,k.y);k.x=f.x;k.y=f.y;return g},getMouseEvent:function(f,g,h){var k=this._prevMousePoint;this._glView._convertMouseToLocationInView(f,g);g=new cc.EventMouse(h);g.setLocation(f.x,f.y);g._setPrevCursor(k.x,k.y);k.x=f.x;k.y=f.y;return g},getPointByEvent:function(f,g){if(null!=f.pageX)return{x:f.pageX, y:f.pageY};g.left-=document.body.scrollLeft;g.top-=document.body.scrollTop;return{x:f.clientX,y:f.clientY}},getTouchesByEvent:function(f,g){for(var h=[],k=this._glView,m,n,p=this._preTouchPoint,r=f.changedTouches.length,s=0;sthis._accelInterval&&(this._accelCurTime-=this._accelInterval,cc.eventManager.dispatchEvent(new cc.EventAcceleration(this._acceleration)));this._accelCurTime+= f}};_p=cc.inputManager;_p.setAccelerometerEnabled=function(f){this._accelEnabled!==f&&(this._accelEnabled=f,f=cc.director.getScheduler(),this._accelEnabled?(this._accelCurTime=0,this._registerAccelerometerEvent(),f.scheduleUpdate(this)):(this._accelCurTime=0,this._unregisterAccelerometerEvent(),f.unscheduleUpdate(this)))};_p.setAccelerometerInterval=function(f){this._accelInterval!==f&&(this._accelInterval=f)}; _p._registerKeyboardEvent=function(){cc._canvas.addEventListener("keydown",function(f){cc.eventManager.dispatchEvent(new cc.EventKeyboard(f.keyCode,!0));f.stopPropagation();f.preventDefault()},!1);cc._canvas.addEventListener("keyup",function(f){cc.eventManager.dispatchEvent(new cc.EventKeyboard(f.keyCode,!1));f.stopPropagation();f.preventDefault()},!1)}; _p._registerAccelerometerEvent=function(){var f=window;this._acceleration=new cc.Acceleration;this._accelDeviceEvent=f.DeviceMotionEvent||f.DeviceOrientationEvent;cc.sys.browserType===cc.sys.BROWSER_TYPE_MOBILE_QQ&&(this._accelDeviceEvent=window.DeviceOrientationEvent);var g=this._accelDeviceEvent===f.DeviceMotionEvent?"devicemotion":"deviceorientation",h=navigator.userAgent;if(/Android/.test(h)||/Adr/.test(h)&&cc.sys.browserType===cc.BROWSER_TYPE_UC)this._minus=-1;this.didAccelerateCallback=this.didAccelerate.bind(this); f.addEventListener(g,this.didAccelerateCallback,!1)};_p._unregisterAccelerometerEvent=function(){this._acceleration=null;window.removeEventListener(this._accelDeviceEvent===window.DeviceMotionEvent?"devicemotion":"deviceorientation",this.didAccelerateCallback,!1)}; _p.didAccelerate=function(f){var g=window;if(this._accelEnabled){var h=this._acceleration,k,m,n;this._accelDeviceEvent===window.DeviceMotionEvent?(n=f.accelerationIncludingGravity,k=this._accelMinus*n.x*0.1,m=this._accelMinus*n.y*0.1,n=0.1*n.z):(k=f.gamma/90*0.981,m=0.981*-(f.beta/90),n=f.alpha/90*0.981);h.x=k;h.y=m;h.z=n;h.timestamp=f.timeStamp||Date.now();f=h.x;g.orientation===cc.UIInterfaceOrientationLandscapeRight?(h.x=-h.y,h.y=f):g.orientation===cc.UIInterfaceOrientationLandscapeLeft?(h.x=h.y, h.y=-f):g.orientation===cc.UIInterfaceOrientationPortraitUpsideDown&&(h.x=-h.x,h.y=-h.y)}};delete _p;cc.AffineTransform=function(f,g,h,k,m,n){this.a=f;this.b=g;this.c=h;this.d=k;this.tx=m;this.ty=n};cc.affineTransformMake=function(f,g,h,k,m,n){return{a:f,b:g,c:h,d:k,tx:m,ty:n}};cc.pointApplyAffineTransform=function(f,g,h){var k;void 0===h?(h=g,k=f.x,f=f.y):(k=f,f=g);return{x:h.a*k+h.c*f+h.tx,y:h.b*k+h.d*f+h.ty}};cc._pointApplyAffineTransform=function(f,g,h){return cc.pointApplyAffineTransform(f,g,h)}; cc.sizeApplyAffineTransform=function(f,g){return{width:g.a*f.width+g.c*f.height,height:g.b*f.width+g.d*f.height}};cc.affineTransformMakeIdentity=function(){return{a:1,b:0,c:0,d:1,tx:0,ty:0}};cc.affineTransformIdentity=function(){return{a:1,b:0,c:0,d:1,tx:0,ty:0}}; cc.rectApplyAffineTransform=function(f,g){var h=cc.rectGetMinY(f),k=cc.rectGetMinX(f),m=cc.rectGetMaxX(f),n=cc.rectGetMaxY(f),p=cc.pointApplyAffineTransform(k,h,g),h=cc.pointApplyAffineTransform(m,h,g),k=cc.pointApplyAffineTransform(k,n,g),r=cc.pointApplyAffineTransform(m,n,g),m=Math.min(p.x,h.x,k.x,r.x),n=Math.max(p.x,h.x,k.x,r.x),s=Math.min(p.y,h.y,k.y,r.y),p=Math.max(p.y,h.y,k.y,r.y);return cc.rect(m,s,n-m,p-s)}; cc._rectApplyAffineTransformIn=function(f,g){var h=cc.rectGetMinY(f),k=cc.rectGetMinX(f),m=cc.rectGetMaxX(f),n=cc.rectGetMaxY(f),p=cc.pointApplyAffineTransform(k,h,g),h=cc.pointApplyAffineTransform(m,h,g),k=cc.pointApplyAffineTransform(k,n,g),r=cc.pointApplyAffineTransform(m,n,g),m=Math.min(p.x,h.x,k.x,r.x),n=Math.max(p.x,h.x,k.x,r.x),s=Math.min(p.y,h.y,k.y,r.y),p=Math.max(p.y,h.y,k.y,r.y);f.x=m;f.y=s;f.width=n-m;f.height=p-s;return f}; cc.affineTransformTranslate=function(f,g,h){return{a:f.a,b:f.b,c:f.c,d:f.d,tx:f.tx+f.a*g+f.c*h,ty:f.ty+f.b*g+f.d*h}};cc.affineTransformScale=function(f,g,h){return{a:f.a*g,b:f.b*g,c:f.c*h,d:f.d*h,tx:f.tx,ty:f.ty}};cc.affineTransformRotate=function(f,g){var h=Math.sin(g),k=Math.cos(g);return{a:f.a*k+f.c*h,b:f.b*k+f.d*h,c:f.c*k-f.a*h,d:f.d*k-f.b*h,tx:f.tx,ty:f.ty}}; cc.affineTransformConcat=function(f,g){return{a:f.a*g.a+f.b*g.c,b:f.a*g.b+f.b*g.d,c:f.c*g.a+f.d*g.c,d:f.c*g.b+f.d*g.d,tx:f.tx*g.a+f.ty*g.c+g.tx,ty:f.tx*g.b+f.ty*g.d+g.ty}};cc.affineTransformConcatIn=function(f,g){var h=f.a,k=f.b,m=f.c,n=f.d,p=f.tx,r=f.ty;f.a=h*g.a+k*g.c;f.b=h*g.b+k*g.d;f.c=m*g.a+n*g.c;f.d=m*g.b+n*g.d;f.tx=p*g.a+r*g.c+g.tx;f.ty=p*g.b+r*g.d+g.ty;return f};cc.affineTransformEqualToTransform=function(f,g){return f.a===g.a&&f.b===g.b&&f.c===g.c&&f.d===g.d&&f.tx===g.tx&&f.ty===g.ty}; cc.affineTransformInvert=function(f){var g=1/(f.a*f.d-f.b*f.c);return{a:g*f.d,b:-g*f.b,c:-g*f.c,d:g*f.a,tx:g*(f.c*f.ty-f.d*f.tx),ty:g*(f.b*f.tx-f.a*f.ty)}};cc.affineTransformInvertOut=function(f,g){var h=f.a,k=f.b,m=f.c,n=f.d,p=1/(h*n-k*m);g.a=p*n;g.b=-p*k;g.c=-p*m;g.d=p*h;g.tx=p*(m*f.ty-n*f.tx);g.ty=p*(k*f.tx-h*f.ty)};cc.POINT_EPSILON=parseFloat("1.192092896e-07F");cc.pNeg=function(f){return cc.p(-f.x,-f.y)};cc.pAdd=function(f,g){return cc.p(f.x+g.x,f.y+g.y)};cc.pSub=function(f,g){return cc.p(f.x-g.x,f.y-g.y)};cc.pMult=function(f,g){return cc.p(f.x*g,f.y*g)};cc.pMidpoint=function(f,g){return cc.pMult(cc.pAdd(f,g),0.5)};cc.pDot=function(f,g){return f.x*g.x+f.y*g.y};cc.pCross=function(f,g){return f.x*g.y-f.y*g.x};cc.pPerp=function(f){return cc.p(-f.y,f.x)};cc.pRPerp=function(f){return cc.p(f.y,-f.x)}; cc.pProject=function(f,g){return cc.pMult(g,cc.pDot(f,g)/cc.pDot(g,g))};cc.pRotate=function(f,g){return cc.p(f.x*g.x-f.y*g.y,f.x*g.y+f.y*g.x)};cc.pUnrotate=function(f,g){return cc.p(f.x*g.x+f.y*g.y,f.y*g.x-f.x*g.y)};cc.pLengthSQ=function(f){return cc.pDot(f,f)};cc.pDistanceSQ=function(f,g){return cc.pLengthSQ(cc.pSub(f,g))};cc.pLength=function(f){return Math.sqrt(cc.pLengthSQ(f))};cc.pDistance=function(f,g){return cc.pLength(cc.pSub(f,g))}; cc.pNormalize=function(f){var g=cc.pLength(f);return 0===g?cc.p(f):cc.pMult(f,1/g)};cc.pForAngle=function(f){return cc.p(Math.cos(f),Math.sin(f))};cc.pToAngle=function(f){return Math.atan2(f.y,f.x)};cc.clampf=function(f,g,h){if(g>h){var k=g;g=h;h=k}return f=m.x&&0<=m.y&&1>=m.y?!0:!1};cc.pIntersectPoint=function(f,g,h,k){var m=cc.p(0,0);return cc.pLineIntersect(f,g,h,k,m)?(h=cc.p(0,0),h.x=f.x+m.x*(g.x-f.x),h.y=f.y+m.x*(g.y-f.y),h):cc.p(0,0)};cc.pSameAs=function(f,g){return null!=f&&null!=g?f.x===g.x&&f.y===g.y:!1};cc.pZeroIn=function(f){f.x=0;f.y=0};cc.pIn=function(f,g){f.x=g.x;f.y=g.y};cc.pMultIn=function(f,g){f.x*=g;f.y*=g}; cc.pSubIn=function(f,g){f.x-=g.x;f.y-=g.y};cc.pAddIn=function(f,g){f.x+=g.x;f.y+=g.y};cc.pNormalizeIn=function(f){var g=Math.sqrt(f.x*f.x+f.y*f.y);0!==g&&cc.pMultIn(f,1/g)};cc.vertexLineToPolygon=function(f,g,h,k,m){m+=k;if(!(1>=m)){g*=0.5;for(var n,p=m-1,r=k;rg.value||1s.getLocalZOrder())this._visitTarget(s,!1);else break;null!=r[f.__instanceId]&&(p[f.getGlobalZOrder()]||(p[f.getGlobalZOrder()]=[]),p[f.getGlobalZOrder()].push(f.__instanceId));for(;m=h?(delete this._spaces[f],k>h&&(this._spaces[f+h]=k-h),!0):!1},requestBuffer:function(f){var h,k,m;for(h in this._spaces)if(k=parseInt(h),m=this._spaces[h],m>=f&&this.allocBuffer(k,f))return k;return-1},freeBuffer:function(f,h){var k=this._spaces,m,n;for(n in k){m=parseInt(n);if(m>f)break;if(m+k[n]>=f){h=h+f-m;f=m;break}}k=f+h;this._spaces[k]&&(h+=this._spaces[k],delete this._spaces[k]);this._spaces[f]=h},setDirty:function(){this._dirty=!0},update:function(){this._dirty&&(this.gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffer),this.gl.bufferSubData(gl.ARRAY_BUFFER,0,this.dataArray),this._dirty=!1)},updateSubData:function(f,h){this.gl.bindBuffer(gl.ARRAY_BUFFER,this.vertexBuffer);this.gl.bufferSubData(gl.ARRAY_BUFFER,f,h)},destroy:function(){this.gl.deleteBuffer(this.vertexBuffer);this.vertexBuffer=this.texCoords=this.colors=this.positions=this.data=null}};return f}();cc.rendererCanvas={childrenOrderDirty:!0,assignedZ:0,assignedZStep:1E-4,_transformNodePool:[],_renderCmds:[],_isCacheToCanvasOn:!1,_cacheToCanvasCmds:{},_cacheInstanceIds:[],_currentID:0,_clearColor:cc.color(),_clearFillStyle:"rgb(0, 0, 0)",_dirtyRegion:null,_allNeedDraw:!0,_enableDirtyRegion:!1,_debugDirtyRegion:!1,_canUseDirtyRegion:!1,_dirtyRegionCountThreshold:10,getRenderCmd:function(f){return f._createRenderCmd()},enableDirtyRegion:function(f){this._enableDirtyRegion=f},isDirtyRegionEnabled:function(){return this._enableDirtyRegion}, setDirtyRegionCountThreshold:function(f){this._dirtyRegionCountThreshold=f},_collectDirtyRegion:function(){var f=this._renderCmds,g,h,k=this._dirtyRegion,m=0,n=!0,p=cc.Node.CanvasRenderCmd.RegionStatus;g=0;for(h=f.length;gp.NotDirty&&(++m,m>this._dirtyRegionCountThreshold&&(n=!1),n&&(!t.isEmpty()&&k.addRegion(t),r._regionFlag>p.Dirty&&!s.isEmpty()&&k.addRegion(s)),r._regionFlag=p.NotDirty)}return n},_beginDrawDirtyRegion:function(f){var g= f.getContext(),h=this._dirtyRegion.getDirtyRegions();g.save();f.setTransform({a:1,b:0,c:0,d:1,tx:0,ty:0},f._scaleX,f._scaleY);g.beginPath();f=0;for(var k=h.length;f=m&&this._batchRendering();var k=h._node,p=k._texture||k._spriteFrame&&k._spriteFrame._texture,r=k._blendFunc.src,k=k._blendFunc.dst,s=h._glProgramState;if(g||f.texture!==p||f.blendSrc!==r||f.blendDst!==k||f.glProgramState!==s)this._batchRendering(),f.texture=p,f.blendSrc=r,f.blendDst=k,f.glProgramState=s,g=!1;p=h.uploadData(t,u,6*n);00.5*m;s&&(s.apply(),s.getGLProgram()._updateProjectionUniform());cc.glBlendFunc(f.blendSrc,f.blendDst);cc.glBindTexture2DN(0,r);g.bindBuffer(g.ARRAY_BUFFER,k);u?g.bufferData(g.ARRAY_BUFFER,t,g.DYNAMIC_DRAW):(r=t.subarray(0,6*n),g.bufferData(g.ARRAY_BUFFER,r,g.DYNAMIC_DRAW));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, 3,g.FLOAT,!1,24,0);g.vertexAttribPointer(cc.VERTEX_ATTRIB_COLOR,4,g.UNSIGNED_BYTE,!0,24,12);g.vertexAttribPointer(cc.VERTEX_ATTRIB_TEX_COORDS,2,g.FLOAT,!1,24,16);g.bindBuffer(g.ELEMENT_ARRAY_BUFFER,h);if(!w||!x||p>w)u?g.bufferData(g.ELEMENT_ARRAY_BUFFER,v,g.DYNAMIC_DRAW):g.bufferData(g.ELEMENT_ARRAY_BUFFER,v.subarray(0,p),g.DYNAMIC_DRAW);g.drawElements(g.TRIANGLES,p,g.UNSIGNED_SHORT,0);cc.g_NumberOfDraws++;x?w=p:(w=0,x=!0);p=n=0}},rendering:function(g,h){var k=h||this._renderCmds,m,p,r,s=g||cc._renderContext; s.bindBuffer(gl.ARRAY_BUFFER,null);m=0;for(p=k.length;m=this._width||0>=this._height?this.setTo(f._minX,f._minY,f._maxX,f._maxY):(this._minX>f._minX&&(this._minX=f._minX),this._minY>f._minY&&(this._minY=f._minY),this._maxX=this._width||0>=this._height}; regionProto.intersects=function(f){if(0>=this._width||0>=this._height||0>=f._width||0>=f._height)return!1;var g=this._minX>f._minX?this._minX:f._minX,h=this._maxXh)return!1;g=this._minY>f._minY?this._minY:f._minY;h=this._maxYy&&(v=w,w=y,y=v);z>p&&(v=z,z=p,p=v);w=(wp?y:p)+1;x>t&&(v=x,x=t,t=v);u>r&&(v=u,u=r,r=v);x=(xr?t:r)+1}this._minX=w;this._minY=x;this._maxX= y;this._maxY=t;this._width=y-w;this._height=t-x;this._area=this._width*this._height}};function unionArea(f,g){return((f._maxX>g._maxX?f._maxX:g._maxX)-(f._minXg._maxY?f._maxY:g._maxY)-(f._minYg&&(g=0),0>h&&(h=0),k>this.clipWidth&&(k=this.clipWidth),f>this.clipHeight&&(f=this.clipHeight));if(g>=k||h>=f)return!1;if(this.clipRectChanged)return!0;var m=this.dirtyList,n=regionCreate();m.push(n.setTo(g,h,k,f));this.mergeDirtyList(m);return!0};dirtyRegionProto.clear=function(){for(var f=this.dirtyList,g=f.length,h=0;hg)return!1;for(var h=this.hasClipRect,k=3u&&(m=r,n=t,k=u)}}h&&0.95

=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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published