2015-08-21 15:25:41 +00:00
/* Phaser v2.4.3 - http://phaser.io - @photonstorm - (c) 2015 Photon Storm Ltd. */
2015-02-25 02:59:00 +00:00
2015-08-21 15:25:41 +00:00
( function ( ) { var a = this , b = b || { } ; return b . WEBGL _RENDERER = 0 , b . CANVAS _RENDERER = 1 , b . VERSION = "v2.2.8" , b . _UID = 0 , "undefined" != typeof Float32Array ? ( b . Float32Array = Float32Array , b . Uint16Array = Uint16Array , b . Uint32Array = Uint32Array , b . ArrayBuffer = ArrayBuffer ) : ( b . Float32Array = Array , b . Uint16Array = Array ) , b . PI _2 = 2 * Math . PI , b . RAD _TO _DEG = 180 / Math . PI , b . DEG _TO _RAD = Math . PI / 180 , b . RETINA _PREFIX = "@2x" , b . defaultRenderOptions = { view : null , transparent : ! 1 , antialias : ! 1 , preserveDrawingBuffer : ! 1 , resolution : 1 , clearBeforeRender : ! 0 , autoResize : ! 1 } , b . DisplayObject = function ( ) { this . position = new b . Point ( 0 , 0 ) , this . scale = new b . Point ( 1 , 1 ) , this . transformCallback = null , this . transformCallbackContext = null , this . pivot = new b . Point ( 0 , 0 ) , this . rotation = 0 , this . alpha = 1 , this . visible = ! 0 , this . hitArea = null , this . renderable = ! 1 , this . parent = null , this . stage = null , this . worldAlpha = 1 , this . worldTransform = new b . Matrix , this . worldPosition = new b . Point ( 0 , 0 ) , this . worldScale = new b . Point ( 1 , 1 ) , this . worldRotation = 0 , this . _sr = 0 , this . _cr = 1 , this . filterArea = null , this . _bounds = new b . Rectangle ( 0 , 0 , 1 , 1 ) , this . _currentBounds = null , this . _mask = null , this . _cacheAsBitmap = ! 1 , this . _cacheIsDirty = ! 1 } , b . DisplayObject . prototype . constructor = b . DisplayObject , b . DisplayObject . prototype . destroy = function ( ) { if ( this . children ) { for ( var a = this . children . length ; a -- ; ) this . children [ a ] . destroy ( ) ; this . children = [ ] } this . transformCallback = null , this . transformCallbackContext = null , this . hitArea = null , this . parent = null , this . stage = null , this . worldTransform = null , this . filterArea = null , this . _bounds = null , this . _currentBounds = null , this . _mask = null , this . renderable = ! 1 , this . _destroyCachedSprite ( ) } , Object . defineProperty ( b . DisplayObject . prototype , "worldVisible" , { get : function ( ) { var a = this ; do { if ( ! a . visible ) return ! 1 ; a = a . parent } while ( a ) ; return ! 0 } } ) , Object . defineProperty ( b . DisplayObject . prototype , "mask" , { get : function ( ) { return this . _mask } , set : function ( a ) { this . _mask && ( this . _mask . isMask = ! 1 ) , this . _mask = a , this . _mask && ( this . _mask . isMask = ! 0 ) } } ) , Object . defineProperty ( b . DisplayObject . prototype , "filters" , { get : function ( ) { return this . _filters } , set : function ( a ) { if ( a ) { for ( var b = [ ] , c = 0 ; c < a . length ; c ++ ) for ( var d = a [ c ] . passes , e = 0 ; e < d . length ; e ++ ) b . push ( d [ e ] ) ; this . _filterBlock = { target : this , filterPasses : b } } this . _filters = a } } ) , Object . defineProperty ( b . DisplayObject . prototype , "cacheAsBitmap" , { get : function ( ) { return this . _cacheAsBitmap } , set : function ( a ) { this . _cacheAsBitmap !== a && ( a ? this . _generateCachedSprite ( ) : this . _destroyCachedSprite ( ) , this . _cacheAsBitmap = a ) } } ) , b . DisplayObject . prototype . updateTransform = function ( a ) { if ( a || this . parent || this . game ) { var c = this . parent ; a ? c = a : this . parent || ( c = this . game . world ) ; var d , e , f , g , h , i , j = c . worldTransform , k = this . worldTransform ; this . rotation % b . PI _2 ? ( this . rotation !== this . rotationCache && ( this . rotationCache = this . rotation , this . _sr = Math . sin ( this . rotation ) , this . _cr = Math . cos ( this . rotation ) ) , d = this . _cr * this . scale . x , e = this . _sr * this . scale . x , f = - this . _sr * this . scale . y , g = this . _cr * this . scale . y , h = this . position . x , i = this . position . y , ( this . pivot . x || this . pivot . y ) && ( h -= this . pivot . x * d + this . pivot . y * f , i -= this . pivot . x * e + this . pivot . y * g ) , k . a = d * j . a + e * j . c , k . b = d * j . b + e * j . d , k . c = f * j . a + g * j . c , k . d = f * j . b + g * j . d , k . tx = h * j . a + i * j . c + j . tx , k . ty = h * j . b + i * j . d + j . ty ) : ( d = this . scale . x , g = this . scale . y , h = this . position . x - this . pivot . x * d , i = this . position . y - this . pivot . y * g , k . a = d * j . a , k . b = d * j . b , k . c = g * j . c , k . d = g * j . d , k . tx = h * j . a + i * j . c + j . tx , k . ty = h * j . b + i * j . d + j . ty ) , this . worldAlpha = this . alpha * c . worldAlpha , this . worldPosition . set ( k . tx , k . ty ) , this . worldScale . set ( Math . sqrt ( k . a * k . a + k . b * k . b ) , Math . sqrt ( k . c * k . c + k . d * k . d ) ) , this . worldRotation = Math . atan2 ( - k . c , k . d ) , this . _currentBounds = null , this . transformCallback && this . transformCallback . call ( this . transformCallbackContext , k , j ) } } , b . DisplayObject . prototype . displayObjectUpdateTransform = b . DisplayObject . prototype . updateTransform , b . DisplayObject . prototype . getBounds = function ( a ) { return a = a , b . EmptyRectangle } , b . DisplayObject . prototype . getLocalBounds = function ( ) { return this . getBounds ( b . identityMatrix ) } , b . DisplayObject . prototype . setStageReference = function ( a ) { this . stage = a } , b . DisplayObject . prototype . preUpdate = function ( ) { } , b . DisplayObject . prototype . generateTexture = function ( a , c , d ) { var e = this . getLocalBounds ( ) , f = new b . RenderTex
} , b . ComplexPrimitiveShader . prototype . destroy = function ( ) { this . gl . deleteProgram ( this . program ) , this . uniforms = null , this . gl = null , this . attribute = null } , b . WebGLGraphics = function ( ) { } , b . WebGLGraphics . renderGraphics = function ( a , c ) { var d , e = c . gl , f = c . projection , g = c . offset , h = c . shaderManager . primitiveShader ; a . dirty && b . WebGLGraphics . updateGraphics ( a , e ) ; for ( var i = a . _webGL [ e . id ] , j = 0 ; j < i . data . length ; j ++ ) 1 === i . data [ j ] . mode ? ( d = i . data [ j ] , c . stencilManager . pushStencil ( a , d , c ) , e . drawElements ( e . TRIANGLE _FAN , 4 , e . UNSIGNED _SHORT , 2 * ( d . indices . length - 4 ) ) , c . stencilManager . popStencil ( a , d , c ) ) : ( d = i . data [ j ] , c . shaderManager . setShader ( h ) , h = c . shaderManager . primitiveShader , e . uniformMatrix3fv ( h . translationMatrix , ! 1 , a . worldTransform . toArray ( ! 0 ) ) , e . uniform1f ( h . flipY , 1 ) , e . uniform2f ( h . projectionVector , f . x , - f . y ) , e . uniform2f ( h . offsetVector , - g . x , - g . y ) , e . uniform3fv ( h . tintColor , b . hex2rgb ( a . tint ) ) , e . uniform1f ( h . alpha , a . worldAlpha ) , e . bindBuffer ( e . ARRAY _BUFFER , d . buffer ) , e . vertexAttribPointer ( h . aVertexPosition , 2 , e . FLOAT , ! 1 , 24 , 0 ) , e . vertexAttribPointer ( h . colorAttribute , 4 , e . FLOAT , ! 1 , 24 , 8 ) , e . bindBuffer ( e . ELEMENT _ARRAY _BUFFER , d . indexBuffer ) , e . drawElements ( e . TRIANGLE _STRIP , d . indices . length , e . UNSIGNED _SHORT , 0 ) ) } , b . WebGLGraphics . updateGraphics = function ( a , c ) { var d = a . _webGL [ c . id ] ; d || ( d = a . _webGL [ c . id ] = { lastIndex : 0 , data : [ ] , gl : c } ) , a . dirty = ! 1 ; var e ; if ( a . clearDirty ) { for ( a . clearDirty = ! 1 , e = 0 ; e < d . data . length ; e ++ ) { var f = d . data [ e ] ; f . reset ( ) , b . WebGLGraphics . graphicsDataPool . push ( f ) } d . data = [ ] , d . lastIndex = 0 } var g ; for ( e = d . lastIndex ; e < a . graphicsData . length ; e ++ ) { var h = a . graphicsData [ e ] ; if ( h . type === b . Graphics . POLY ) { if ( h . points = h . shape . points . slice ( ) , h . shape . closed && ( h . points [ 0 ] !== h . points [ h . points . length - 2 ] || h . points [ 1 ] !== h . points [ h . points . length - 1 ] ) && h . points . push ( h . points [ 0 ] , h . points [ 1 ] ) , h . fill && h . points . length >= 6 ) if ( h . points . length < 12 ) { g = b . WebGLGraphics . switchMode ( d , 0 ) ; var i = b . WebGLGraphics . buildPoly ( h , g ) ; i || ( g = b . WebGLGraphics . switchMode ( d , 1 ) , b . WebGLGraphics . buildComplexPoly ( h , g ) ) } else g = b . WebGLGraphics . switchMode ( d , 1 ) , b . WebGLGraphics . buildComplexPoly ( h , g ) ; h . lineWidth > 0 && ( g = b . WebGLGraphics . switchMode ( d , 0 ) , b . WebGLGraphics . buildLine ( h , g ) ) } else g = b . WebGLGraphics . switchMode ( d , 0 ) , h . type === b . Graphics . RECT ? b . WebGLGraphics . buildRectangle ( h , g ) : h . type === b . Graphics . CIRC || h . type === b . Graphics . ELIP ? b . WebGLGraphics . buildCircle ( h , g ) : h . type === b . Graphics . RREC && b . WebGLGraphics . buildRoundedRectangle ( h , g ) ; d . lastIndex ++ } for ( e = 0 ; e < d . data . length ; e ++ ) g = d . data [ e ] , g . dirty && g . upload ( ) } , b . WebGLGraphics . switchMode = function ( a , c ) { var d ; return a . data . length ? ( d = a . data [ a . data . length - 1 ] , ( d . mode !== c || 1 === c ) && ( d = b . WebGLGraphics . graphicsDataPool . pop ( ) || new b . WebGLGraphicsData ( a . gl ) , d . mode = c , a . data . push ( d ) ) ) : ( d = b . WebGLGraphics . graphicsDataPool . pop ( ) || new b . WebGLGraphicsData ( a . gl ) , d . mode = c , a . data . push ( d ) ) , d . dirty = ! 0 , d } , b . WebGLGraphics . buildRectangle = function ( a , c ) { var d = a . shape , e = d . x , f = d . y , g = d . width , h = d . height ; if ( a . fill ) { var i = b . hex2rgb ( a . fillColor ) , j = a . fillAlpha , k = i [ 0 ] * j , l = i [ 1 ] * j , m = i [ 2 ] * j , n = c . points , o = c . indices , p = n . length / 6 ; n . push ( e , f ) , n . push ( k , l , m , j ) , n . push ( e + g , f ) , n . push ( k , l , m , j ) , n . push ( e , f + h ) , n . push ( k , l , m , j ) , n . push ( e + g , f + h ) , n . push ( k , l , m , j ) , o . push ( p , p , p + 1 , p + 2 , p + 3 , p + 3 ) } if ( a . lineWidth ) { var q = a . points ; a . points = [ e , f , e + g , f , e + g , f + h , e , f + h , e , f ] , b . WebGLGraphics . buildLine ( a , c ) , a . points = q } } , b . WebGLGraphics . buildRoundedRectangle = function ( a , c ) { var d = a . shape , e = d . x , f = d . y , g = d . width , h = d . height , i = d . radius , j = [ ] ; if ( j . push ( e , f + i ) , j = j . concat ( b . WebGLGraphics . quadraticBezierCurve ( e , f + h - i , e , f + h , e + i , f + h ) ) , j = j . concat ( b . WebGLGraphics . quadraticBezierCurve ( e + g - i , f + h , e + g , f + h , e + g , f + h - i ) ) , j = j . concat ( b . WebGLGraphics . quadraticBezierCurve ( e + g , f + i , e + g , f , e + g - i , f ) ) , j = j . concat ( b . WebGLGraphics . quadraticBezierCurve ( e + i , f , e , f , e , f + i ) ) , a . fill ) { var k = b . hex2rgb ( a . fillColor ) , l = a . fillAlpha , m = k [ 0 ] * l , n = k [ 1 ] * l , o = k [ 2 ] * l , p = c . points , q = c . indices , r = p . length / 6 , s = b . PolyK . Triangulate ( j ) , t = 0 ; for ( t = 0 ; t < s . length ; t += 3 ) q . push ( s [ t ] + r ) , q . push ( s [ t ] + r ) , q . push ( s [ t + 1 ] + r ) , q . push ( s [ t + 2 ] + r ) , q . push ( s [ t + 2 ] + r ) ; for ( t = 0 ; t < j . length ; t ++ ) p . push ( j [ t ] , j [ ++ t ] , m , n , o , l ) } if ( a . lineWidth ) { var u = a . points ; a . points = j , b . WebGLGraphics . buildLine ( a , c ) , a . points = u } } , b . WebGLGraphics . quadraticBezierCurve = function ( a , b , c , d , e , f ) { function g (
} , b . WebGLFilterManager . prototype . popFilter = function ( ) { var a = this . gl , c = this . filterStack . pop ( ) , d = c . _filterArea , e = c . _glFilterTexture , f = this . renderSession . projection , g = this . renderSession . offset ; if ( c . filterPasses . length > 1 ) { a . viewport ( 0 , 0 , d . width , d . height ) , a . bindBuffer ( a . ARRAY _BUFFER , this . vertexBuffer ) , this . vertexArray [ 0 ] = 0 , this . vertexArray [ 1 ] = d . height , this . vertexArray [ 2 ] = d . width , this . vertexArray [ 3 ] = d . height , this . vertexArray [ 4 ] = 0 , this . vertexArray [ 5 ] = 0 , this . vertexArray [ 6 ] = d . width , this . vertexArray [ 7 ] = 0 , a . bufferSubData ( a . ARRAY _BUFFER , 0 , this . vertexArray ) , a . bindBuffer ( a . ARRAY _BUFFER , this . uvBuffer ) , this . uvArray [ 2 ] = d . width / this . width , this . uvArray [ 5 ] = d . height / this . height , this . uvArray [ 6 ] = d . width / this . width , this . uvArray [ 7 ] = d . height / this . height , a . bufferSubData ( a . ARRAY _BUFFER , 0 , this . uvArray ) ; var h = e , i = this . texturePool . pop ( ) ; i || ( i = new b . FilterTexture ( this . gl , this . width , this . height ) ) , i . resize ( this . width , this . height ) , a . bindFramebuffer ( a . FRAMEBUFFER , i . frameBuffer ) , a . clear ( a . COLOR _BUFFER _BIT ) , a . disable ( a . BLEND ) ; for ( var j = 0 ; j < c . filterPasses . length - 1 ; j ++ ) { var k = c . filterPasses [ j ] ; a . bindFramebuffer ( a . FRAMEBUFFER , i . frameBuffer ) , a . activeTexture ( a . TEXTURE0 ) , a . bindTexture ( a . TEXTURE _2D , h . texture ) , this . applyFilterPass ( k , d , d . width , d . height ) ; var l = h ; h = i , i = l } a . enable ( a . BLEND ) , e = h , this . texturePool . push ( i ) } var m = c . filterPasses [ c . filterPasses . length - 1 ] ; this . offsetX -= d . x , this . offsetY -= d . y ; var n = this . width , o = this . height , p = 0 , q = 0 , r = this . buffer ; if ( 0 === this . filterStack . length ) a . colorMask ( ! 0 , ! 0 , ! 0 , ! 0 ) ; else { var s = this . filterStack [ this . filterStack . length - 1 ] ; d = s . _filterArea , n = d . width , o = d . height , p = d . x , q = d . y , r = s . _glFilterTexture . frameBuffer } f . x = n / 2 , f . y = - o / 2 , g . x = p , g . y = q , d = c . _filterArea ; var t = d . x - p , u = d . y - q ; a . bindBuffer ( a . ARRAY _BUFFER , this . vertexBuffer ) , this . vertexArray [ 0 ] = t , this . vertexArray [ 1 ] = u + d . height , this . vertexArray [ 2 ] = t + d . width , this . vertexArray [ 3 ] = u + d . height , this . vertexArray [ 4 ] = t , this . vertexArray [ 5 ] = u , this . vertexArray [ 6 ] = t + d . width , this . vertexArray [ 7 ] = u , a . bufferSubData ( a . ARRAY _BUFFER , 0 , this . vertexArray ) , a . bindBuffer ( a . ARRAY _BUFFER , this . uvBuffer ) , this . uvArray [ 2 ] = d . width / this . width , this . uvArray [ 5 ] = d . height / this . height , this . uvArray [ 6 ] = d . width / this . width , this . uvArray [ 7 ] = d . height / this . height , a . bufferSubData ( a . ARRAY _BUFFER , 0 , this . uvArray ) , a . viewport ( 0 , 0 , n * this . renderSession . resolution , o * this . renderSession . resolution ) , a . bindFramebuffer ( a . FRAMEBUFFER , r ) , a . activeTexture ( a . TEXTURE0 ) , a . bindTexture ( a . TEXTURE _2D , e . texture ) , this . applyFilterPass ( m , d , n , o ) , this . texturePool . push ( e ) , c . _glFilterTexture = null } , b . WebGLFilterManager . prototype . applyFilterPass = function ( a , c , d , e ) { var f = this . gl , g = a . shaders [ f . id ] ; g || ( g = new b . PixiShader ( f ) , g . fragmentSrc = a . fragmentSrc , g . uniforms = a . uniforms , g . init ( ) , a . shaders [ f . id ] = g ) , this . renderSession . shaderManager . setShader ( g ) , f . uniform2f ( g . projectionVector , d / 2 , - e / 2 ) , f . uniform2f ( g . offsetVector , 0 , 0 ) , a . uniforms . dimensions && ( a . uniforms . dimensions . value [ 0 ] = this . width , a . uniforms . dimensions . value [ 1 ] = this . height , a . uniforms . dimensions . value [ 2 ] = this . vertexArray [ 0 ] , a . uniforms . dimensions . value [ 3 ] = this . vertexArray [ 5 ] ) , g . syncUniforms ( ) , f . bindBuffer ( f . ARRAY _BUFFER , this . vertexBuffer ) , f . vertexAttribPointer ( g . aVertexPosition , 2 , f . FLOAT , ! 1 , 0 , 0 ) , f . bindBuffer ( f . ARRAY _BUFFER , this . uvBuffer ) , f . vertexAttribPointer ( g . aTextureCoord , 2 , f . FLOAT , ! 1 , 0 , 0 ) , f . bindBuffer ( f . ARRAY _BUFFER , this . colorBuffer ) , f . vertexAttribPointer ( g . colorAttribute , 2 , f . FLOAT , ! 1 , 0 , 0 ) , f . bindBuffer ( f . ELEMENT _ARRAY _BUFFER , this . indexBuffer ) , f . drawElements ( f . TRIANGLES , 6 , f . UNSIGNED _SHORT , 0 ) , this . renderSession . drawCount ++ } , b . WebGLFilterManager . prototype . initShaderBuffers = function ( ) { var a = this . gl ; this . vertexBuffer = a . createBuffer ( ) , this . uvBuffer = a . createBuffer ( ) , this . colorBuffer = a . createBuffer ( ) , this . indexBuffer = a . createBuffer ( ) , this . vertexArray = new b . Float32Array ( [ 0 , 0 , 1 , 0 , 0 , 1 , 1 , 1 ] ) , a . bindBuffer ( a . ARRAY _BUFFER , this . vertexBuffer ) , a . bufferData ( a . ARRAY _BUFFER , this . vertexArray , a . STATIC _DRAW ) , this . uvArray = new b . Float32Array ( [ 0 , 0 , 1 , 0 , 0 , 1 , 1 , 1 ] ) , a . bindBuffer ( a . ARRAY _BUFFER , this . uvBuffer ) , a . bufferData ( a . ARRAY _BUFFER , this . uvArray , a . STATIC _DRAW ) , this . colorArray = new b . Float32Array ( [ 1 , 16777215 , 1 , 16777215 , 1 , 16777215 , 1 , 16777215 ] ) , a . bindBuffer ( a . A
} , b . Rope . prototype = Object . create ( b . Strip . prototype ) , b . Rope . prototype . constructor = b . Rope , b . Rope . prototype . refresh = function ( ) { var a = this . points ; if ( ! ( a . length < 1 ) ) { var b = this . uvs , c = a [ 0 ] , d = this . indices , e = this . colors ; this . count -= . 2 , b [ 0 ] = 0 , b [ 1 ] = 0 , b [ 2 ] = 0 , b [ 3 ] = 1 , e [ 0 ] = 1 , e [ 1 ] = 1 , d [ 0 ] = 0 , d [ 1 ] = 1 ; for ( var f , g , h , i = a . length , j = 1 ; i > j ; j ++ ) f = a [ j ] , g = 4 * j , h = j / ( i - 1 ) , j % 2 ? ( b [ g ] = h , b [ g + 1 ] = 0 , b [ g + 2 ] = h , b [ g + 3 ] = 1 ) : ( b [ g ] = h , b [ g + 1 ] = 0 , b [ g + 2 ] = h , b [ g + 3 ] = 1 ) , g = 2 * j , e [ g ] = 1 , e [ g + 1 ] = 1 , g = 2 * j , d [ g ] = g , d [ g + 1 ] = g + 1 , c = f } } , b . Rope . prototype . updateTransform = function ( ) { var a = this . points ; if ( ! ( a . length < 1 ) ) { var c , d = a [ 0 ] , e = { x : 0 , y : 0 } ; this . count -= . 2 ; for ( var f , g , h , i , j , k = this . vertices , l = a . length , m = 0 ; l > m ; m ++ ) f = a [ m ] , g = 4 * m , c = m < a . length - 1 ? a [ m + 1 ] : f , e . y = - ( c . x - d . x ) , e . x = c . y - d . y , h = 10 * ( 1 - m / ( l - 1 ) ) , h > 1 && ( h = 1 ) , i = Math . sqrt ( e . x * e . x + e . y * e . y ) , j = this . texture . height / 2 , e . x /= i , e . y /= i , e . x *= j , e . y *= j , k [ g ] = f . x + e . x , k [ g + 1 ] = f . y + e . y , k [ g + 2 ] = f . x - e . x , k [ g + 3 ] = f . y - e . y , d = f ; b . DisplayObjectContainer . prototype . updateTransform . call ( this ) } } , b . Rope . prototype . setTexture = function ( a ) { this . texture = a } , b . TilingSprite = function ( a , c , d ) { b . Sprite . call ( this , a ) , this . _width = c || 128 , this . _height = d || 128 , this . tileScale = new b . Point ( 1 , 1 ) , this . tileScaleOffset = new b . Point ( 1 , 1 ) , this . tilePosition = new b . Point , this . renderable = ! 0 , this . tint = 16777215 , this . textureDebug = ! 1 , this . blendMode = b . blendModes . NORMAL , this . canvasBuffer = null , this . tilingTexture = null , this . tilePattern = null , this . refreshTexture = ! 0 , this . frameWidth = 0 , this . frameHeight = 0 } , b . TilingSprite . prototype = Object . create ( b . Sprite . prototype ) , b . TilingSprite . prototype . constructor = b . TilingSprite , b . TilingSprite . prototype . setTexture = function ( a ) { this . texture !== a && ( this . texture = a , this . refreshTexture = ! 0 , this . cachedTint = 16777215 ) } , b . TilingSprite . prototype . _renderWebGL = function ( a ) { if ( this . visible !== ! 1 && 0 !== this . alpha ) { if ( this . _mask && ( a . spriteBatch . stop ( ) , a . maskManager . pushMask ( this . mask , a ) , a . spriteBatch . start ( ) ) , this . _filters && ( a . spriteBatch . flush ( ) , a . filterManager . pushFilter ( this . _filterBlock ) ) , this . refreshTexture ) { if ( this . generateTilingTexture ( ! 0 ) , ! this . tilingTexture ) return ; this . tilingTexture . needsUpdate && ( a . renderer . updateTexture ( this . tilingTexture . baseTexture ) , this . tilingTexture . needsUpdate = ! 1 ) } a . spriteBatch . renderTilingSprite ( this ) ; for ( var b = 0 ; b < this . children . length ; b ++ ) this . children [ b ] . _renderWebGL ( a ) ; a . spriteBatch . stop ( ) , this . _filters && a . filterManager . popFilter ( ) , this . _mask && a . maskManager . popMask ( this . _mask , a ) , a . spriteBatch . start ( ) } } , b . TilingSprite . prototype . _renderCanvas = function ( a ) { if ( this . visible !== ! 1 && 0 !== this . alpha ) { var c = a . context ; this . _mask && a . maskManager . pushMask ( this . _mask , a ) , c . globalAlpha = this . worldAlpha ; var d = this . worldTransform , e = a . resolution ; if ( c . setTransform ( d . a * e , d . b * e , d . c * e , d . d * e , d . tx * e , d . ty * e ) , this . refreshTexture ) { if ( this . generateTilingTexture ( ! 1 ) , ! this . tilingTexture ) return ; this . tilePattern = c . createPattern ( this . tilingTexture . baseTexture . source , "repeat" ) } var f = a . currentBlendMode ; this . blendMode !== a . currentBlendMode && ( a . currentBlendMode = this . blendMode , c . globalCompositeOperation = b . blendModesCanvas [ a . currentBlendMode ] ) ; var g = this . tilePosition , h = this . tileScale ; g . x %= this . tilingTexture . baseTexture . width , g . y %= this . tilingTexture . baseTexture . height , c . scale ( h . x , h . y ) , c . translate ( g . x + this . anchor . x * - this . _width , g . y + this . anchor . y * - this . _height ) , c . fillStyle = this . tilePattern ; var i = - g . x , j = - g . y , k = this . _width / h . x , l = this . _height / h . y ; a . roundPixels , c . fillRect ( i , j , k , l ) , c . scale ( 1 / h . x , 1 / h . y ) , c . translate ( - g . x + this . anchor . x * this . _width , - g . y + this . anchor . y * this . _height ) , this . _mask && a . maskManager . popMask ( a ) ; for ( var m = 0 ; m < this . children . length ; m ++ ) this . children [ m ] . _renderCanvas ( a ) ; f !== this . blendMode && ( a . currentBlendMode = f , c . globalCompositeOperation = b . blendModesCanvas [ f ] ) } } , b . TilingSprite . prototype . onTextureUpdate = function ( ) { } , b . TilingSprite . prototype . generateTilingTexture = function ( a ) { if ( this . texture . baseTexture . hasLoaded ) { var c = this . texture , d = c . frame , e = this . _frame . sourceSizeW , f = this . _frame . sourceSizeH , g = 0 , h = 0 ; this . _frame . trimmed && ( g = this . _frame . spriteSourceSizeX , h = this . _frame . spriteSourceSizeY ) , a && ( e = b . getNextPowerOfTwo ( e ) , f = b . getNextPowerOfTwo ( f ) ) , this . canvasBuffer ? ( this . canvasBuffer . resize ( e , f ) , this . tilingTexture . baseTexture . w
} } ) , Object . defineProperty ( c . Rectangle . prototype , "randomY" , { get : function ( ) { return this . y + Math . random ( ) * this . height } } ) , Object . defineProperty ( c . Rectangle . prototype , "top" , { get : function ( ) { return this . y } , set : function ( a ) { a >= this . bottom ? ( this . height = 0 , this . y = a ) : this . height = this . bottom - a } } ) , Object . defineProperty ( c . Rectangle . prototype , "topLeft" , { get : function ( ) { return new c . Point ( this . x , this . y ) } , set : function ( a ) { this . x = a . x , this . y = a . y } } ) , Object . defineProperty ( c . Rectangle . prototype , "topRight" , { get : function ( ) { return new c . Point ( this . x + this . width , this . y ) } , set : function ( a ) { this . right = a . x , this . y = a . y } } ) , Object . defineProperty ( c . Rectangle . prototype , "empty" , { get : function ( ) { return ! this . width || ! this . height } , set : function ( a ) { a === ! 0 && this . setTo ( 0 , 0 , 0 , 0 ) } } ) , c . Rectangle . prototype . constructor = c . Rectangle , c . Rectangle . inflate = function ( a , b , c ) { return a . x -= b , a . width += 2 * b , a . y -= c , a . height += 2 * c , a } , c . Rectangle . inflatePoint = function ( a , b ) { return c . Rectangle . inflate ( a , b . x , b . y ) } , c . Rectangle . size = function ( a , b ) { return void 0 === b || null === b ? b = new c . Point ( a . width , a . height ) : b . setTo ( a . width , a . height ) , b } , c . Rectangle . clone = function ( a , b ) { return void 0 === b || null === b ? b = new c . Rectangle ( a . x , a . y , a . width , a . height ) : b . setTo ( a . x , a . y , a . width , a . height ) , b } , c . Rectangle . contains = function ( a , b , c ) { return a . width <= 0 || a . height <= 0 ? ! 1 : b >= a . x && b < a . right && c >= a . y && c < a . bottom } , c . Rectangle . containsRaw = function ( a , b , c , d , e , f ) { return e >= a && a + c > e && f >= b && b + d > f } , c . Rectangle . containsPoint = function ( a , b ) { return c . Rectangle . contains ( a , b . x , b . y ) } , c . Rectangle . containsRect = function ( a , b ) { return a . volume > b . volume ? ! 1 : a . x >= b . x && a . y >= b . y && a . right < b . right && a . bottom < b . bottom } , c . Rectangle . equals = function ( a , b ) { return a . x == b . x && a . y == b . y && a . width == b . width && a . height == b . height } , c . Rectangle . sameDimensions = function ( a , b ) { return a . width === b . width && a . height === b . height } , c . Rectangle . intersection = function ( a , b , d ) { return void 0 === d && ( d = new c . Rectangle ) , c . Rectangle . intersects ( a , b ) && ( d . x = Math . max ( a . x , b . x ) , d . y = Math . max ( a . y , b . y ) , d . width = Math . min ( a . right , b . right ) - d . x , d . height = Math . min ( a . bottom , b . bottom ) - d . y ) , d } , c . Rectangle . intersects = function ( a , b ) { return a . width <= 0 || a . height <= 0 || b . width <= 0 || b . height <= 0 ? ! 1 : ! ( a . right < b . x || a . bottom < b . y || a . x > b . right || a . y > b . bottom ) } , c . Rectangle . intersectsRaw = function ( a , b , c , d , e , f ) { return void 0 === f && ( f = 0 ) , ! ( b > a . right + f || c < a . left - f || d > a . bottom + f || e < a . top - f ) } , c . Rectangle . union = function ( a , b , d ) { return void 0 === d && ( d = new c . Rectangle ) , d . setTo ( Math . min ( a . x , b . x ) , Math . min ( a . y , b . y ) , Math . max ( a . right , b . right ) - Math . min ( a . left , b . left ) , Math . max ( a . bottom , b . bottom ) - Math . min ( a . top , b . top ) ) } , c . Rectangle . aabb = function ( a , b ) { void 0 === b && ( b = new c . Rectangle ) ; var d = Number . MIN _VALUE , e = Number . MAX _VALUE , f = Number . MIN _VALUE , g = Number . MAX _VALUE ; return a . forEach ( function ( a ) { a . x > d && ( d = a . x ) , a . x < e && ( e = a . x ) , a . y > f && ( f = a . y ) , a . y < g && ( g = a . y ) } ) , b . setTo ( e , g , d - e , f - g ) , b } , PIXI . Rectangle = c . Rectangle , PIXI . EmptyRectangle = new c . Rectangle ( 0 , 0 , 0 , 0 ) , c . RoundedRectangle = function ( a , b , d , e , f ) { void 0 === a && ( a = 0 ) , void 0 === b && ( b = 0 ) , void 0 === d && ( d = 0 ) , void 0 === e && ( e = 0 ) , void 0 === f && ( f = 20 ) , this . x = a , this . y = b , this . width = d , this . height = e , this . radius = f || 20 , this . type = c . ROUNDEDRECTANGLE } , c . RoundedRectangle . prototype = { clone : function ( ) { return new c . RoundedRectangle ( this . x , this . y , this . width , this . height , this . radius ) } , contains : function ( a , b ) { if ( this . width <= 0 || this . height <= 0 ) return ! 1 ; var c = this . x ; if ( a >= c && a <= c + this . width ) { var d = this . y ; if ( b >= d && b <= d + this . height ) return ! 0 } return ! 1 } } , c . RoundedRectangle . prototype . constructor = c . RoundedRectangle , PIXI . RoundedRectangle = c . RoundedRectangle , c . Camera = function ( a , b , d , e , f , g ) { this . game = a , this . world = a . world , this . id = 0 , this . view = new c . Rectangle ( d , e , f , g ) , this . bounds = new c . Rectangle ( d , e , f , g ) , this . deadzone = null , this . visible = ! 0 , this . roundPx = ! 0 , this . atLimit = { x : ! 1 , y : ! 1 } , this . target = null , this . displayObject = null , this . scale = null , this . totalInView = 0 , this . _targetPosition = new c . Point , this . _edge = 0 , this . _position = new c . Point } , c . Camera . FOLLOW _LOCKON = 0 , c . Camera . FOLLOW _PLATFORMER = 1 , c . Camera . FOLLOW _TOPDOWN = 2 , c . Camera . FOLLOW _TOPDOWN _TIGHT = 3 , c . Camera . prototype = { preUpdate : function ( ) { this . totalInView = 0 } , follow : function ( a , b ) { void 0 === b && ( b = c . Camera . FOLLOW _LOCKON ) , this . target = a ; var d ; swi
} , c . Group . prototype . swap = function ( a , b ) { this . swapChildren ( a , b ) , this . updateZ ( ) } , c . Group . prototype . bringToTop = function ( a ) { return a . parent === this && this . getIndex ( a ) < this . children . length && ( this . remove ( a , ! 1 , ! 0 ) , this . add ( a , ! 0 ) ) , a } , c . Group . prototype . sendToBack = function ( a ) { return a . parent === this && this . getIndex ( a ) > 0 && ( this . remove ( a , ! 1 , ! 0 ) , this . addAt ( a , 0 , ! 0 ) ) , a } , c . Group . prototype . moveUp = function ( a ) { if ( a . parent === this && this . getIndex ( a ) < this . children . length - 1 ) { var b = this . getIndex ( a ) , c = this . getAt ( b + 1 ) ; c && this . swap ( a , c ) } return a } , c . Group . prototype . moveDown = function ( a ) { if ( a . parent === this && this . getIndex ( a ) > 0 ) { var b = this . getIndex ( a ) , c = this . getAt ( b - 1 ) ; c && this . swap ( a , c ) } return a } , c . Group . prototype . xy = function ( a , b , c ) { return 0 > a || a > this . children . length ? - 1 : ( this . getChildAt ( a ) . x = b , void ( this . getChildAt ( a ) . y = c ) ) } , c . Group . prototype . reverse = function ( ) { this . children . reverse ( ) , this . updateZ ( ) } , c . Group . prototype . getIndex = function ( a ) { return this . children . indexOf ( a ) } , c . Group . prototype . replace = function ( a , b ) { var d = this . getIndex ( a ) ; return - 1 !== d ? ( b . parent && ( b . parent instanceof c . Group ? b . parent . remove ( b ) : b . parent . removeChild ( b ) ) , this . remove ( a ) , this . addAt ( b , d ) , a ) : void 0 } , c . Group . prototype . hasProperty = function ( a , b ) { var c = b . length ; return 1 === c && b [ 0 ] in a ? ! 0 : 2 === c && b [ 0 ] in a && b [ 1 ] in a [ b [ 0 ] ] ? ! 0 : 3 === c && b [ 0 ] in a && b [ 1 ] in a [ b [ 0 ] ] && b [ 2 ] in a [ b [ 0 ] ] [ b [ 1 ] ] ? ! 0 : 4 === c && b [ 0 ] in a && b [ 1 ] in a [ b [ 0 ] ] && b [ 2 ] in a [ b [ 0 ] ] [ b [ 1 ] ] && b [ 3 ] in a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] ? ! 0 : ! 1 } , c . Group . prototype . setProperty = function ( a , b , c , d , e ) { if ( void 0 === e && ( e = ! 1 ) , d = d || 0 , ! this . hasProperty ( a , b ) && ( ! e || d > 0 ) ) return ! 1 ; var f = b . length ; return 1 === f ? 0 === d ? a [ b [ 0 ] ] = c : 1 == d ? a [ b [ 0 ] ] += c : 2 == d ? a [ b [ 0 ] ] -= c : 3 == d ? a [ b [ 0 ] ] *= c : 4 == d && ( a [ b [ 0 ] ] /= c ) : 2 === f ? 0 === d ? a [ b [ 0 ] ] [ b [ 1 ] ] = c : 1 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] += c : 2 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] -= c : 3 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] *= c : 4 == d && ( a [ b [ 0 ] ] [ b [ 1 ] ] /= c ) : 3 === f ? 0 === d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] = c : 1 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] += c : 2 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] -= c : 3 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] *= c : 4 == d && ( a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] /= c ) : 4 === f && ( 0 === d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] [ b [ 3 ] ] = c : 1 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] [ b [ 3 ] ] += c : 2 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] [ b [ 3 ] ] -= c : 3 == d ? a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] [ b [ 3 ] ] *= c : 4 == d && ( a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] [ b [ 3 ] ] /= c ) ) , ! 0 } , c . Group . prototype . checkProperty = function ( a , b , d , e ) { return void 0 === e && ( e = ! 1 ) , ! c . Utils . getProperty ( a , b ) && e ? ! 1 : c . Utils . getProperty ( a , b ) !== d ? ! 1 : ! 0 } , c . Group . prototype . set = function ( a , b , c , d , e , f , g ) { return void 0 === g && ( g = ! 1 ) , b = b . split ( "." ) , void 0 === d && ( d = ! 1 ) , void 0 === e && ( e = ! 1 ) , ( d === ! 1 || d && a . alive ) && ( e === ! 1 || e && a . visible ) ? this . setProperty ( a , b , c , f , g ) : void 0 } , c . Group . prototype . setAll = function ( a , b , c , d , e , f ) { void 0 === c && ( c = ! 1 ) , void 0 === d && ( d = ! 1 ) , void 0 === f && ( f = ! 1 ) , a = a . split ( "." ) , e = e || 0 ; for ( var g = 0 ; g < this . children . length ; g ++ ) ( ! c || c && this . children [ g ] . alive ) && ( ! d || d && this . children [ g ] . visible ) && this . setProperty ( this . children [ g ] , a , b , e , f ) } , c . Group . prototype . setAllChildren = function ( a , b , d , e , f , g ) { void 0 === d && ( d = ! 1 ) , void 0 === e && ( e = ! 1 ) , void 0 === g && ( g = ! 1 ) , f = f || 0 ; for ( var h = 0 ; h < this . children . length ; h ++ ) ( ! d || d && this . children [ h ] . alive ) && ( ! e || e && this . children [ h ] . visible ) && ( this . children [ h ] instanceof c . Group ? this . children [ h ] . setAllChildren ( a , b , d , e , f , g ) : this . setProperty ( this . children [ h ] , a . split ( "." ) , b , f , g ) ) } , c . Group . prototype . checkAll = function ( a , b , c , d , e ) { void 0 === c && ( c = ! 1 ) , void 0 === d && ( d = ! 1 ) , void 0 === e && ( e = ! 1 ) ; for ( var f = 0 ; f < this . children . length ; f ++ ) if ( ( ! c || c && this . children [ f ] . alive ) && ( ! d || d && this . children [ f ] . visible ) && ! this . checkProperty ( this . children [ f ] , a , b , e ) ) return ! 1 ; return ! 0 } , c . Group . prototype . addAll = function ( a , b , c , d ) { this . setAll ( a , b , c , d , 1 ) } , c . Group . prototype . subAll = function ( a , b , c , d ) { this . setAll ( a , b , c , d , 2 ) } , c . Group . prototype . multiplyAll = function ( a , b , c , d ) { this . setAll ( a , b , c , d , 3 ) } , c . Group . prototype . divideAll = function ( a , b , c , d ) { this . setAll ( a , b , c , d , 4 ) } , c . Group . prototype . callAllExists = function ( a , b ) { var c ; if ( arguments . length > 2 ) { c = [ ] ; for ( var d = 2 ; d < arguments . length ; d ++ ) c . push ( arguments [ d ] ) } for ( var d = 0 ; d < this . children . length ; d ++ ) this . children [ d ] . exists === b && this . children [ d ] [ a ] && this . children [ d ] [ a ] . apply ( this . children [ d ] , c ) } , c . Group . prototype . callbackFromArray = function ( a , b , c ) { if ( 1 == c ) { if ( a [ b [ 0 ] ] ) return a [ b [ 0 ] ] } else if ( 2 == c ) { if ( a [ b [ 0 ] ] [ b [ 1 ] ] ) return a [ b [ 0 ] ] [ b [ 1 ] ] } else if ( 3 == c ) { if ( a [ b [ 0 ] ] [ b [ 1 ] ] [ b [ 2 ] ] ) re
a ? ( b || this . fullScreenScaleMode === c . ScaleManager . EXACT _FIT ) && d !== this . game . canvas && ( this . _fullScreenRestore = { targetWidth : d . style . width , targetHeight : d . style . height } , d . style . width = "100%" , d . style . height = "100%" ) : ( this . _fullScreenRestore && ( d . style . width = this . _fullScreenRestore . targetWidth , d . style . height = this . _fullScreenRestore . targetHeight , this . _fullScreenRestore = null ) , this . updateDimensions ( this . _gameSize . width , this . _gameSize . height , ! 0 ) , this . resetCanvas ( ) ) } , fullScreenChange : function ( a ) { this . event = a , this . isFullScreen ? ( this . prepScreenMode ( ! 0 ) , this . updateLayout ( ) , this . queueUpdate ( ! 0 ) ) : ( this . prepScreenMode ( ! 1 ) , this . cleanupCreatedTarget ( ) , this . updateLayout ( ) , this . queueUpdate ( ! 0 ) ) , this . onFullScreenChange . dispatch ( this , this . width , this . height ) } , fullScreenError : function ( a ) { this . event = a , this . cleanupCreatedTarget ( ) , console . warn ( "Phaser.ScaleManager: requestFullscreen failed or device does not support the Fullscreen API" ) , this . onFullScreenError . dispatch ( this ) } , scaleSprite : function ( a , b , c , d ) { if ( void 0 === b && ( b = this . width ) , void 0 === c && ( c = this . height ) , void 0 === d && ( d = ! 1 ) , ! a || ! a . scale ) return a ; if ( a . scale . x = 1 , a . scale . y = 1 , a . width <= 0 || a . height <= 0 || 0 >= b || 0 >= c ) return a ; var e = b , f = a . height * b / a . width , g = a . width * c / a . height , h = c , i = g > b ; return i = i ? d : ! d , i ? ( a . width = Math . floor ( e ) , a . height = Math . floor ( f ) ) : ( a . width = Math . floor ( g ) , a . height = Math . floor ( h ) ) , a } , destroy : function ( ) { this . game . onResume . remove ( this . _gameResumed , this ) , window . removeEventListener ( "orientationchange" , this . _orientationChange , ! 1 ) , window . removeEventListener ( "resize" , this . _windowResize , ! 1 ) , this . compatibility . supportsFullScreen && ( document . removeEventListener ( "webkitfullscreenchange" , this . _fullScreenChange , ! 1 ) , document . removeEventListener ( "mozfullscreenchange" , this . _fullScreenChange , ! 1 ) , document . removeEventListener ( "MSFullscreenChange" , this . _fullScreenChange , ! 1 ) , document . removeEventListener ( "fullscreenchange" , this . _fullScreenChange , ! 1 ) , document . removeEventListener ( "webkitfullscreenerror" , this . _fullScreenError , ! 1 ) , document . removeEventListener ( "mozfullscreenerror" , this . _fullScreenError , ! 1 ) , document . removeEventListener ( "MSFullscreenError" , this . _fullScreenError , ! 1 ) , document . removeEventListener ( "fullscreenerror" , this . _fullScreenError , ! 1 ) ) } } , c . ScaleManager . prototype . constructor = c . ScaleManager , Object . defineProperty ( c . ScaleManager . prototype , "boundingParent" , { get : function ( ) { if ( this . parentIsWindow || this . isFullScreen && ! this . _createdFullScreenTarget ) return null ; var a = this . game . canvas && this . game . canvas . parentNode ; return a || null } } ) , Object . defineProperty ( c . ScaleManager . prototype , "scaleMode" , { get : function ( ) { return this . _scaleMode } , set : function ( a ) { return a !== this . _scaleMode && ( this . isFullScreen || ( this . updateDimensions ( this . _gameSize . width , this . _gameSize . height , ! 0 ) , this . queueUpdate ( ! 0 ) ) , this . _scaleMode = a ) , this . _scaleMode } } ) , Object . defineProperty ( c . ScaleManager . prototype , "fullScreenScaleMode" , { get : function ( ) { return this . _fullScreenScaleMode } , set : function ( a ) { return a !== this . _fullScreenScaleMode && ( this . isFullScreen ? ( this . prepScreenMode ( ! 1 ) , this . _fullScreenScaleMode = a , this . prepScreenMode ( ! 0 ) , this . queueUpdate ( ! 0 ) ) : this . _fullScreenScaleMode = a ) , this . _fullScreenScaleMode } } ) , Object . defineProperty ( c . ScaleManager . prototype , "currentScaleMode" , { get : function ( ) { return this . isFullScreen ? this . _fullScreenScaleMode : this . _scaleMode } } ) , Object . defineProperty ( c . ScaleManager . prototype , "pageAlignHorizontally" , { get : function ( ) { return this . _pageAlignHorizontally } , set : function ( a ) { a !== this . _pageAlignHorizontally && ( this . _pageAlignHorizontally = a , this . queueUpdate ( ! 0 ) ) } } ) , Object . defineProperty ( c . ScaleManager . prototype , "pageAlignVertically" , { get : function ( ) { return this . _pageAlignVertically } , set : function ( a ) { a !== this . _pageAlignVertically && ( this . _pageAlignVertically = a , this . queueUpdate ( ! 0 ) ) } } ) , Object . defineProperty ( c . ScaleManager . prototype , "isFullScreen" , { get : function ( ) { return ! ! ( document . fullscreenElement || document . webkitFullscreenElement || document . mozFullScreenElement || document . msFullscreenElement ) } } ) , Object . defineProperty ( c . ScaleManager . prototype , "isPortrait" , { get : function ( ) { return "portrait" === this . classifyOrientation ( this . screenOrientation ) } } ) , Object . defin
} } , c . MSPointer . prototype . constructor = c . MSPointer , c . DeviceButton = function ( a , b ) { this . parent = a , this . game = a . game , this . event = null , this . isDown = ! 1 , this . isUp = ! 0 , this . timeDown = 0 , this . duration = 0 , this . timeUp = 0 , this . repeats = 0 , this . altKey = ! 1 , this . shiftKey = ! 1 , this . ctrlKey = ! 1 , this . value = 0 , this . buttonCode = b , this . onDown = new c . Signal , this . onUp = new c . Signal , this . onFloat = new c . Signal } , c . DeviceButton . prototype = { start : function ( a , b ) { this . isDown || ( this . isDown = ! 0 , this . isUp = ! 1 , this . timeDown = this . game . time . time , this . duration = 0 , this . repeats = 0 , this . event = a , this . value = b , a && ( this . altKey = a . altKey , this . shiftKey = a . shiftKey , this . ctrlKey = a . ctrlKey ) , this . onDown . dispatch ( this , b ) ) } , stop : function ( a , b ) { this . isUp || ( this . isDown = ! 1 , this . isUp = ! 0 , this . timeUp = this . game . time . time , this . event = a , this . value = b , a && ( this . altKey = a . altKey , this . shiftKey = a . shiftKey , this . ctrlKey = a . ctrlKey ) , this . onUp . dispatch ( this , b ) ) } , padFloat : function ( a ) { this . value = a , this . onFloat . dispatch ( this , a ) } , justPressed : function ( a ) { return a = a || 250 , this . isDown && this . timeDown + a > this . game . time . time } , justReleased : function ( a ) { return a = a || 250 , this . isUp && this . timeUp + a > this . game . time . time } , reset : function ( ) { this . isDown = ! 1 , this . isUp = ! 0 , this . timeDown = this . game . time . time , this . duration = 0 , this . repeats = 0 , this . altKey = ! 1 , this . shiftKey = ! 1 , this . ctrlKey = ! 1 } , destroy : function ( ) { this . onDown . dispose ( ) , this . onUp . dispose ( ) , this . onFloat . dispose ( ) , this . parent = null , this . game = null } } , c . DeviceButton . prototype . constructor = c . DeviceButton , Object . defineProperty ( c . DeviceButton . prototype , "duration" , { get : function ( ) { return this . isUp ? - 1 : this . game . time . time - this . timeDown } } ) , c . Pointer = function ( a , b ) { this . game = a , this . id = b , this . type = c . POINTER , this . exists = ! 0 , this . identifier = 0 , this . pointerId = null , this . target = null , this . button = null , this . leftButton = new c . DeviceButton ( this , c . Pointer . LEFT _BUTTON ) , this . middleButton = new c . DeviceButton ( this , c . Pointer . MIDDLE _BUTTON ) , this . rightButton = new c . DeviceButton ( this , c . Pointer . RIGHT _BUTTON ) , this . backButton = new c . DeviceButton ( this , c . Pointer . BACK _BUTTON ) , this . forwardButton = new c . DeviceButton ( this , c . Pointer . FORWARD _BUTTON ) , this . eraserButton = new c . DeviceButton ( this , c . Pointer . ERASER _BUTTON ) , this . _holdSent = ! 1 , this . _history = [ ] , this . _nextDrop = 0 , this . _stateReset = ! 1 , this . withinGame = ! 1 , this . clientX = - 1 , this . clientY = - 1 , this . pageX = - 1 , this . pageY = - 1 , this . screenX = - 1 , this . screenY = - 1 , this . rawMovementX = 0 , this . rawMovementY = 0 , this . movementX = 0 , this . movementY = 0 , this . x = - 1 , this . y = - 1 , this . isMouse = 0 === b , this . isDown = ! 1 , this . isUp = ! 0 , this . timeDown = 0 , this . timeUp = 0 , this . previousTapTime = 0 , this . totalTouches = 0 , this . msSinceLastClick = Number . MAX _VALUE , this . targetObject = null , this . active = ! 1 , this . dirty = ! 1 , this . position = new c . Point , this . positionDown = new c . Point , this . positionUp = new c . Point , this . circle = new c . Circle ( 0 , 0 , 44 ) , this . _clickTrampolines = null , this . _trampolineTargetObject = null } , c . Pointer . NO _BUTTON = 0 , c . Pointer . LEFT _BUTTON = 1 , c . Pointer . RIGHT _BUTTON = 2 , c . Pointer . MIDDLE _BUTTON = 4 , c . Pointer . BACK _BUTTON = 8 , c . Pointer . FORWARD _BUTTON = 16 , c . Pointer . ERASER _BUTTON = 32 , c . Pointer . prototype = { resetButtons : function ( ) { this . isDown = ! 1 , this . isUp = ! 0 , this . isMouse && ( this . leftButton . reset ( ) , this . middleButton . reset ( ) , this . rightButton . reset ( ) , this . backButton . reset ( ) , this . forwardButton . reset ( ) , this . eraserButton . reset ( ) ) } , processButtonsDown : function ( a , b ) { c . Pointer . LEFT _BUTTON & a && this . leftButton . start ( b ) , c . Pointer . RIGHT _BUTTON & a && this . rightButton . start ( b ) , c . Pointer . MIDDLE _BUTTON & a && this . middleButton . start ( b ) , c . Pointer . BACK _BUTTON & a && this . backButton . start ( b ) , c . Pointer . FORWARD _BUTTON & a && this . forwardButton . start ( b ) , c . Pointer . ERASER _BUTTON & a && this . eraserButton . start ( b ) } , processButtonsUp : function ( a , b ) { a === c . Mouse . LEFT _BUTTON && this . leftButton . stop ( b ) , a === c . Mouse . RIGHT _BUTTON && this . rightButton . stop ( b ) , a === c . Mouse . MIDDLE _BUTTON && this . middleButton . stop ( b ) , a === c . Mouse . BACK _BUTTON && this . backButton . stop ( b ) , a === c . Mouse . FORWARD _BUTTON && this . forwardButton . stop ( b ) , 5 === a && this . eraserButton . stop ( b ) } , updateButtons : function ( a ) { this . button = a . button ; var b = "down" === a . type . toLowerCase ( ) . substr ( - 4 ) ; void 0 !== a . buttons ? b ? this . processButtonsDown ( a . buttons , a ) : this . processButtonsUp ( a . button , a ) : b ? this . leftButton . start ( a ) : ( th
for ( var h = 0 ; h < this . _gamepads . length ; h ++ ) if ( d = this . _gamepads [ h ] , ! e . padIndices [ h ] ) { this . _rawPads . length < 1 && d . disconnect ( ) ; for ( var i = 0 ; i < this . _rawPads . length && ! e . padIndices [ h ] ; i ++ ) { var j = this . _rawPads [ i ] ; if ( j ) { if ( e . rawIndices [ j . index ] ) { d . disconnect ( ) ; continue } d . connect ( j ) , e . rawIndices [ j . index ] = ! 0 , e . padIndices [ h ] = ! 0 } else d . disconnect ( ) } } } } } , setDeadZones : function ( a ) { for ( var b = 0 ; b < this . _gamepads . length ; b ++ ) this . _gamepads [ b ] . deadZone = a } , stop : function ( ) { this . _active = ! 1 , window . removeEventListener ( "gamepadconnected" , this . _onGamepadConnected ) , window . removeEventListener ( "gamepaddisconnected" , this . _onGamepadDisconnected ) } , reset : function ( ) { this . update ( ) ; for ( var a = 0 ; a < this . _gamepads . length ; a ++ ) this . _gamepads [ a ] . reset ( ) } , justPressed : function ( a , b ) { for ( var c = 0 ; c < this . _gamepads . length ; c ++ ) if ( this . _gamepads [ c ] . justPressed ( a , b ) === ! 0 ) return ! 0 ; return ! 1 } , justReleased : function ( a , b ) { for ( var c = 0 ; c < this . _gamepads . length ; c ++ ) if ( this . _gamepads [ c ] . justReleased ( a , b ) === ! 0 ) return ! 0 ; return ! 1 } , isDown : function ( a ) { for ( var b = 0 ; b < this . _gamepads . length ; b ++ ) if ( this . _gamepads [ b ] . isDown ( a ) === ! 0 ) return ! 0 ; return ! 1 } , destroy : function ( ) { this . stop ( ) ; for ( var a = 0 ; a < this . _gamepads . length ; a ++ ) this . _gamepads [ a ] . destroy ( ) } } , c . Gamepad . prototype . constructor = c . Gamepad , Object . defineProperty ( c . Gamepad . prototype , "active" , { get : function ( ) { return this . _active } } ) , Object . defineProperty ( c . Gamepad . prototype , "supported" , { get : function ( ) { return this . _gamepadSupportAvailable } } ) , Object . defineProperty ( c . Gamepad . prototype , "padsConnected" , { get : function ( ) { return this . _rawPads . length } } ) , Object . defineProperty ( c . Gamepad . prototype , "pad1" , { get : function ( ) { return this . _gamepads [ 0 ] } } ) , Object . defineProperty ( c . Gamepad . prototype , "pad2" , { get : function ( ) { return this . _gamepads [ 1 ] } } ) , Object . defineProperty ( c . Gamepad . prototype , "pad3" , { get : function ( ) { return this . _gamepads [ 2 ] } } ) , Object . defineProperty ( c . Gamepad . prototype , "pad4" , { get : function ( ) { return this . _gamepads [ 3 ] } } ) , c . Gamepad . BUTTON _0 = 0 , c . Gamepad . BUTTON _1 = 1 , c . Gamepad . BUTTON _2 = 2 , c . Gamepad . BUTTON _3 = 3 , c . Gamepad . BUTTON _4 = 4 , c . Gamepad . BUTTON _5 = 5 , c . Gamepad . BUTTON _6 = 6 , c . Gamepad . BUTTON _7 = 7 , c . Gamepad . BUTTON _8 = 8 , c . Gamepad . BUTTON _9 = 9 , c . Gamepad . BUTTON _10 = 10 , c . Gamepad . BUTTON _11 = 11 , c . Gamepad . BUTTON _12 = 12 , c . Gamepad . BUTTON _13 = 13 , c . Gamepad . BUTTON _14 = 14 , c . Gamepad . BUTTON _15 = 15 , c . Gamepad . AXIS _0 = 0 , c . Gamepad . AXIS _1 = 1 , c . Gamepad . AXIS _2 = 2 , c . Gamepad . AXIS _3 = 3 , c . Gamepad . AXIS _4 = 4 , c . Gamepad . AXIS _5 = 5 , c . Gamepad . AXIS _6 = 6 , c . Gamepad . AXIS _7 = 7 , c . Gamepad . AXIS _8 = 8 , c . Gamepad . AXIS _9 = 9 , c . Gamepad . XBOX360 _A = 0 , c . Gamepad . XBOX360 _B = 1 , c . Gamepad . XBOX360 _X = 2 , c . Gamepad . XBOX360 _Y = 3 , c . Gamepad . XBOX360 _LEFT _BUMPER = 4 , c . Gamepad . XBOX360 _RIGHT _BUMPER = 5 , c . Gamepad . XBOX360 _LEFT _TRIGGER = 6 , c . Gamepad . XBOX360 _RIGHT _TRIGGER = 7 , c . Gamepad . XBOX360 _BACK = 8 , c . Gamepad . XBOX360 _START = 9 , c . Gamepad . XBOX360 _STICK _LEFT _BUTTON = 10 , c . Gamepad . XBOX360 _STICK _RIGHT _BUTTON = 11 , c . Gamepad . XBOX360 _DPAD _LEFT = 14 , c . Gamepad . XBOX360 _DPAD _RIGHT = 15 , c . Gamepad . XBOX360 _DPAD _UP = 12 , c . Gamepad . XBOX360 _DPAD _DOWN = 13 , c . Gamepad . XBOX360 _STICK _LEFT _X = 0 , c . Gamepad . XBOX360 _STICK _LEFT _Y = 1 , c . Gamepad . XBOX360 _STICK _RIGHT _X = 2 , c . Gamepad . XBOX360 _STICK _RIGHT _Y = 3 , c . Gamepad . PS3XC _X = 0 , c . Gamepad . PS3XC _CIRCLE = 1 , c . Gamepad . PS3XC _SQUARE = 2 , c . Gamepad . PS3XC _TRIANGLE = 3 , c . Gamepad . PS3XC _L1 = 4 , c . Gamepad . PS3XC _R1 = 5 , c . Gamepad . PS3XC _L2 = 6 , c . Gamepad . PS3XC _R2 = 7 , c . Gamepad . PS3XC _SELECT = 8 , c . Gamepad . PS3XC _START = 9 , c . Gamepad . PS3XC _STICK _LEFT _BUTTON = 10 , c . Gamepad . PS3XC _STICK _RIGHT _BUTTON = 11 , c . Gamepad . PS3XC _DPAD _UP = 12 , c . Gamepad . PS3XC _DPAD _DOWN = 13 , c . Gamepad . PS3XC _DPAD _LEFT = 14 , c . Gamepad . PS3XC _DPAD _RIGHT = 15 , c . Gamepad . PS3XC _STICK _LEFT _X = 0 , c . Gamepad . PS3XC _STICK _LEFT _Y = 1 , c . Gamepad . PS3XC _STICK _RIGHT _X = 2 , c . Gamepad . PS3XC _STICK _RIGHT _Y = 3 , c . SinglePad = function ( a , b ) { this . game = a , this . index = null , this . connected = ! 1 , this . callbackContext = this , this . onConnectCallback = null , this . onDisconnectCallback = null , this . onDownCallback = null , this . onUpCallback = null , this . onAxisCallback = null , this . onFloatCallback = null , this . deadZone = . 26 , this . _padParent = b , this . _rawPad = null , this . _prevTimestamp = null , this . _buttons = [ ] , this . _buttonsLen = 0 , this . _axes = [ ] , this . _axesLen = 0 } , c . SinglePad . prototype = { addCallbacks : function ( a , b ) { "undefined" != typeof b && ( this . onConnectCallbac
} , sprite : function ( a , b , c , d , e ) { return void 0 === e && ( e = this . world ) , e . create ( a , b , c , d ) } , creature : function ( a , b , d , e , f ) { void 0 === f && ( f = this . world ) ; var g = new c . Creature ( this . game , a , b , d , e ) ; return f . add ( g ) , g } , tween : function ( a ) { return this . game . tweens . create ( a ) } , group : function ( a , b , d , e , f ) { return new c . Group ( this . game , a , b , d , e , f ) } , physicsGroup : function ( a , b , d , e ) { return new c . Group ( this . game , b , d , e , ! 0 , a ) } , spriteBatch : function ( a , b , d ) { return void 0 === a && ( a = null ) , void 0 === b && ( b = "group" ) , void 0 === d && ( d = ! 1 ) , new c . SpriteBatch ( this . game , a , b , d ) } , audio : function ( a , b , c , d ) { return this . game . sound . add ( a , b , c , d ) } , sound : function ( a , b , c , d ) { return this . game . sound . add ( a , b , c , d ) } , audioSprite : function ( a ) { return this . game . sound . addSprite ( a ) } , tileSprite : function ( a , b , d , e , f , g , h ) { return void 0 === h && ( h = this . world ) , h . add ( new c . TileSprite ( this . game , a , b , d , e , f , g ) ) } , rope : function ( a , b , d , e , f , g ) { return void 0 === g && ( g = this . world ) , g . add ( new c . Rope ( this . game , a , b , d , e , f ) ) } , text : function ( a , b , d , e , f ) { return void 0 === f && ( f = this . world ) , f . add ( new c . Text ( this . game , a , b , d , e ) ) } , button : function ( a , b , d , e , f , g , h , i , j , k ) { return void 0 === k && ( k = this . world ) , k . add ( new c . Button ( this . game , a , b , d , e , f , g , h , i , j ) ) } , graphics : function ( a , b , d ) { return void 0 === d && ( d = this . world ) , d . add ( new c . Graphics ( this . game , a , b ) ) } , emitter : function ( a , b , d ) { return this . game . particles . add ( new c . Particles . Arcade . Emitter ( this . game , a , b , d ) ) } , retroFont : function ( a , b , d , e , f , g , h , i , j ) { return new c . RetroFont ( this . game , a , b , d , e , f , g , h , i , j ) } , bitmapText : function ( a , b , d , e , f , g ) { return void 0 === g && ( g = this . world ) , g . add ( new c . BitmapText ( this . game , a , b , d , e , f ) ) } , tilemap : function ( a , b , d , e , f ) { return new c . Tilemap ( this . game , a , b , d , e , f ) } , renderTexture : function ( a , b , d , e ) { ( void 0 === d || "" === d ) && ( d = this . game . rnd . uuid ( ) ) , void 0 === e && ( e = ! 1 ) ; var f = new c . RenderTexture ( this . game , a , b , d ) ; return e && this . game . cache . addRenderTexture ( d , f ) , f } , video : function ( a , b ) { return new c . Video ( this . game , a , b ) } , bitmapData : function ( a , b , d , e ) { void 0 === e && ( e = ! 1 ) , ( void 0 === d || "" === d ) && ( d = this . game . rnd . uuid ( ) ) ; var f = new c . BitmapData ( this . game , d , a , b ) ; return e && this . game . cache . addBitmapData ( d , f ) , f } , filter : function ( a ) { var b = Array . prototype . splice . call ( arguments , 1 ) , a = new c . Filter [ a ] ( this . game ) ; return a . init . apply ( a , b ) , a } , plugin : function ( a ) { return this . game . plugins . add ( a ) } } , c . GameObjectFactory . prototype . constructor = c . GameObjectFactory , c . GameObjectCreator = function ( a ) { this . game = a , this . world = this . game . world } , c . GameObjectCreator . prototype = { image : function ( a , b , d , e ) { return new c . Image ( this . game , a , b , d , e ) } , sprite : function ( a , b , d , e ) { return new c . Sprite ( this . game , a , b , d , e ) } , tween : function ( a ) { return new c . Tween ( a , this . game , this . game . tweens ) } , group : function ( a , b , d , e , f ) { return new c . Group ( this . game , a , b , d , e , f ) } , spriteBatch : function ( a , b , d ) { return void 0 === b && ( b = "group" ) , void 0 === d && ( d = ! 1 ) , new c . SpriteBatch ( this . game , a , b , d ) } , audio : function ( a , b , c , d ) { return this . game . sound . add ( a , b , c , d ) } , audioSprite : function ( a ) { return this . game . sound . addSprite ( a ) } , sound : function ( a , b , c , d ) { return this . game . sound . add ( a , b , c , d ) } , tileSprite : function ( a , b , d , e , f , g ) { return new c . TileSprite ( this . game , a , b , d , e , f , g ) } , rope : function ( a , b , d , e , f ) { return new c . Rope ( this . game , a , b , d , e , f ) } , text : function ( a , b , d , e ) { return new c . Text ( this . game , a , b , d , e ) } , button : function ( a , b , d , e , f , g , h , i , j ) { return new c . Button ( this . game , a , b , d , e , f , g , h , i , j ) } , graphics : function ( a , b ) { return new c . Graphics ( this . game , a , b ) } , emitter : function ( a , b , d ) { return new c . Particles . Arcade . Emitter ( this . game , a , b , d ) } , retroFont : function ( a , b , d , e , f , g , h , i , j ) { return new c . RetroFont ( this . game , a , b , d , e , f , g , h , i , j ) } , bitmapText : function ( a , b , d , e , f , g ) { return new c . BitmapText ( this . game , a , b , d , e , f , g ) } , tilemap : function ( a , b , d , e , f ) { return new c . Tilemap ( this . game , a , b , d , e , f ) } , renderTexture : function ( a , b , d , e ) { ( void 0 === d || "" === d ) && ( d = this . game . rnd . uuid ( ) ) , void 0 === e && ( e = ! 1 ) ; var f = new c . RenderTexture ( this . game , a , b , d ) ; return e && this . game . cache . addRenderTexture ( d , f ) , f } , bitmapData : function ( a , b , d , e ) { void 0 === e && ( e = ! 1 ) , ( void 0 === d || "" === d ) && ( d = this . game . rnd . uuid ( ) ) ; var f = new c . BitmapData ( this . game , d , a , b ) ; return e && this . game . cache . addBitmapData ( d , f ) , f } , filter : function ( a ) { var b = Array . prototype . splice . call ( arguments , 1 ) , a = new c . Filter [ a ] ( this . gam
} return this . dirty = ! 0 , this } , PIXI . Graphics . prototype . arc = function ( a , b , c , d , e , f ) { if ( d === e ) return this ; void 0 === f && ( f = ! 1 ) , ! f && d >= e ? e += 2 * Math . PI : f && e >= d && ( d += 2 * Math . PI ) ; var g = f ? - 1 * ( d - e ) : e - d , h = 40 * Math . ceil ( Math . abs ( g ) / ( 2 * Math . PI ) ) ; if ( 0 === g ) return this ; var i = a + Math . cos ( d ) * c , j = b + Math . sin ( d ) * c ; f && this . filling ? this . moveTo ( a , b ) : this . moveTo ( i , j ) ; for ( var k = this . currentPath . shape . points , l = g / ( 2 * h ) , m = 2 * l , n = Math . cos ( l ) , o = Math . sin ( l ) , p = h - 1 , q = p % 1 / p , r = 0 ; p >= r ; r ++ ) { var s = r + q * r , t = l + d + m * s , u = Math . cos ( t ) , v = - Math . sin ( t ) ; k . push ( ( n * u + o * v ) * c + a , ( n * - v + o * u ) * c + b ) } return this . dirty = ! 0 , this } , PIXI . Graphics . prototype . beginFill = function ( a , b ) { return this . filling = ! 0 , this . fillColor = a || 0 , this . fillAlpha = void 0 === b ? 1 : b , this . currentPath && this . currentPath . shape . points . length <= 2 && ( this . currentPath . fill = this . filling , this . currentPath . fillColor = this . fillColor , this . currentPath . fillAlpha = this . fillAlpha ) , this } , PIXI . Graphics . prototype . endFill = function ( ) { return this . filling = ! 1 , this . fillColor = null , this . fillAlpha = 1 , this } , PIXI . Graphics . prototype . drawRect = function ( a , b , c , d ) { return this . drawShape ( new PIXI . Rectangle ( a , b , c , d ) ) , this } , PIXI . Graphics . prototype . drawRoundedRect = function ( a , b , c , d , e ) { return this . drawShape ( new PIXI . RoundedRectangle ( a , b , c , d , e ) ) , this } , PIXI . Graphics . prototype . drawCircle = function ( a , b , c ) { return this . drawShape ( new PIXI . Circle ( a , b , c ) ) , this } , PIXI . Graphics . prototype . drawEllipse = function ( a , b , c , d ) { return this . drawShape ( new PIXI . Ellipse ( a , b , c , d ) ) , this } , PIXI . Graphics . prototype . drawPolygon = function ( a ) { ( a instanceof c . Polygon || a instanceof PIXI . Polygon ) && ( a = a . points ) ; var b = a ; if ( ! Array . isArray ( b ) ) { b = new Array ( arguments . length ) ; for ( var d = 0 ; d < b . length ; ++ d ) b [ d ] = arguments [ d ] } return this . drawShape ( new c . Polygon ( b ) ) , this } , PIXI . Graphics . prototype . clear = function ( ) { return this . lineWidth = 0 , this . filling = ! 1 , this . dirty = ! 0 , this . clearDirty = ! 0 , this . graphicsData = [ ] , this } , PIXI . Graphics . prototype . generateTexture = function ( a , b ) { a = a || 1 ; var c = this . getBounds ( ) , d = new PIXI . CanvasBuffer ( c . width * a , c . height * a ) , e = PIXI . Texture . fromCanvas ( d . canvas , b ) ; return e . baseTexture . resolution = a , d . context . scale ( a , a ) , d . context . translate ( - c . x , - c . y ) , PIXI . CanvasGraphics . renderGraphics ( this , d . context ) , e } , PIXI . Graphics . prototype . _renderWebGL = function ( a ) { if ( this . visible !== ! 1 && 0 !== this . alpha && this . isMask !== ! 0 ) { if ( this . _cacheAsBitmap ) return ( this . dirty || this . cachedSpriteDirty ) && ( this . _generateCachedSprite ( ) , this . updateCachedSpriteTexture ( ) , this . cachedSpriteDirty = ! 1 , this . dirty = ! 1 ) , this . _cachedSprite . worldAlpha = this . worldAlpha , void PIXI . Sprite . prototype . _renderWebGL . call ( this . _cachedSprite , a ) ; if ( a . spriteBatch . stop ( ) , a . blendModeManager . setBlendMode ( this . blendMode ) , this . _mask && a . maskManager . pushMask ( this . _mask , a ) , this . _filters && a . filterManager . pushFilter ( this . _filterBlock ) , this . blendMode !== a . spriteBatch . currentBlendMode ) { a . spriteBatch . currentBlendMode = this . blendMode ; var b = PIXI . blendModesWebGL [ a . spriteBatch . currentBlendMode ] ; a . spriteBatch . gl . blendFunc ( b [ 0 ] , b [ 1 ] ) } if ( this . webGLDirty && ( this . dirty = ! 0 , this . webGLDirty = ! 1 ) , PIXI . WebGLGraphics . renderGraphics ( this , a ) , this . children . length ) { a . spriteBatch . start ( ) ; for ( var c = 0 ; c < this . children . length ; c ++ ) this . children [ c ] . _renderWebGL ( a ) ; a . spriteBatch . stop ( ) } this . _filters && a . filterManager . popFilter ( ) , this . _mask && a . maskManager . popMask ( this . mask , a ) , a . drawCount ++ , a . spriteBatch . start ( ) } } , PIXI . Graphics . prototype . _renderCanvas = function ( a ) { if ( this . visible !== ! 1 && 0 !== this . alpha && this . isMask !== ! 0 ) { if ( this . _prevTint !== this . tint && ( this . dirty = ! 0 , this . _prevTint = this . tint ) , this . _cacheAsBitmap ) return ( this . dirty || this . cachedSpriteDirty ) && ( this . _generateCachedSprite ( ) , this . updateCachedSpriteTexture ( ) , this . cachedSpriteDirty = ! 1 , this . dirty = ! 1 ) , this . _cachedSprite . alpha = this . alpha , void PIXI . Sprite . prototype . _renderCanvas . call ( this . _cachedSprite , a ) ; var b = a . context , c = this . worldTransform ; this . blendMode !== a . currentBlendMode && ( a . currentBlendMode = this . blendMode , b . globalCompositeOperation = PIXI . blendModesCanvas [ a . currentBlendMode ] ) , this . _mask && a . maskManager . pushMask ( this . _mask , a ) ; var d = a . resolution ; b . setTransform ( c . a * d , c . b * d , c . c * d , c . d * d , c . tx * d , c . ty * d ) , PIXI . CanvasGraphics . renderGraphics ( this , b ) ; for ( var e = 0 ; e < this . children . length ; e
} } ) , Object . defineProperty ( c . BitmapText . prototype , "text" , { get : function ( ) { return this . _text } , set : function ( a ) { a !== this . _text && ( this . _text = a . toString ( ) || "" , this . updateText ( ) ) } } ) , Object . defineProperty ( c . BitmapText . prototype , "maxWidth" , { get : function ( ) { return this . _maxWidth } , set : function ( a ) { a !== this . _maxWidth && ( this . _maxWidth = a , this . updateText ( ) ) } } ) , Object . defineProperty ( c . BitmapText . prototype , "smoothed" , { get : function ( ) { return ! this . _data . base . scaleMode } , set : function ( a ) { this . _data . base . scaleMode = a ? 0 : 1 } } ) , c . RetroFont = function ( a , b , d , e , f , g , h , i , j , k ) { if ( ! a . cache . checkImageKey ( b ) ) return ! 1 ; ( void 0 === g || null === g ) && ( g = a . cache . getImage ( b ) . width / d ) , this . characterWidth = d , this . characterHeight = e , this . characterSpacingX = h || 0 , this . characterSpacingY = i || 0 , this . characterPerRow = g , this . offsetX = j || 0 , this . offsetY = k || 0 , this . align = "left" , this . multiLine = ! 1 , this . autoUpperCase = ! 0 , this . customSpacingX = 0 , this . customSpacingY = 0 , this . fixedWidth = 0 , this . fontSet = a . cache . getImage ( b ) , this . _text = "" , this . grabData = [ ] , this . frameData = new c . FrameData ; for ( var l = this . offsetX , m = this . offsetY , n = 0 , o = 0 ; o < f . length ; o ++ ) { var p = this . frameData . addFrame ( new c . Frame ( o , l , m , this . characterWidth , this . characterHeight ) ) ; this . grabData [ f . charCodeAt ( o ) ] = p . index , n ++ , n === this . characterPerRow ? ( n = 0 , l = this . offsetX , m += this . characterHeight + this . characterSpacingY ) : l += this . characterWidth + this . characterSpacingX } a . cache . updateFrameData ( b , this . frameData ) , this . stamp = new c . Image ( a , 0 , 0 , b , 0 ) , c . RenderTexture . call ( this , a , 100 , 100 , "" , c . scaleModes . NEAREST ) , this . type = c . RETROFONT } , c . RetroFont . prototype = Object . create ( c . RenderTexture . prototype ) , c . RetroFont . prototype . constructor = c . RetroFont , c . RetroFont . ALIGN _LEFT = "left" , c . RetroFont . ALIGN _RIGHT = "right" , c . RetroFont . ALIGN _CENTER = "center" , c . RetroFont . TEXT _SET1 = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" , c . RetroFont . TEXT _SET2 = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ" , c . RetroFont . TEXT _SET3 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 " , c . RetroFont . TEXT _SET4 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789" , c . RetroFont . TEXT _SET5 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789" , c . RetroFont . TEXT _SET6 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789\"(),-.' " , c . RetroFont . TEXT _SET7 = "AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW\")28FLRX-'39" , c . RetroFont . TEXT _SET8 = "0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ" , c . RetroFont . TEXT _SET9 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'\"?!" , c . RetroFont . TEXT _SET10 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" , c . RetroFont . TEXT _SET11 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"-+!?()':;0123456789" , c . RetroFont . prototype . setFixedWidth = function ( a , b ) { void 0 === b && ( b = "left" ) , this . fixedWidth = a , this . align = b } , c . RetroFont . prototype . setText = function ( a , b , c , d , e , f ) { this . multiLine = b || ! 1 , this . customSpacingX = c || 0 , this . customSpacingY = d || 0 , this . align = e || "left" , this . autoUpperCase = f ? ! 1 : ! 0 , a . length > 0 && ( this . text = a ) } , c . RetroFont . prototype . buildRetroFontText = function ( ) { var a = 0 , b = 0 ; if ( this . clear ( ) , this . multiLine ) { var d = this . _text . split ( "\n" ) ; this . fixedWidth > 0 ? this . resize ( this . fixedWidth , d . length * ( this . characterHeight + this . customSpacingY ) - this . customSpacingY , ! 0 ) : this . resize ( this . getLongestLine ( ) * ( this . characterWidth + this . customSpacingX ) , d . length * ( this . characterHeight + this . customSpacingY ) - this . customSpacingY , ! 0 ) ; for ( var e = 0 ; e < d . length ; e ++ ) a = 0 , this . align === c . RetroFont . ALIGN _RIGHT ? a = this . width - d [ e ] . length * ( this . characterWidth + this . customSpacingX ) : this . align === c . RetroFont . ALIGN _CENTER && ( a = this . width / 2 - d [ e ] . length * ( this . characterWidth + this . customSpacingX ) / 2 , a += this . customSpacingX / 2 ) , 0 > a && ( a = 0 ) , this . pasteLine ( d [ e ] , a , b , this . customSpacingX ) , b += this . characterHeight + this . customSpacingY } else this . fixedWidth > 0 ? this . resize ( this . fixedWidth , this . characterHeight , ! 0 ) : this . resize ( this . _text . length * ( this . characterWidth + this . customSpacingX ) , this . characterHeight , ! 0 ) , a = 0 , this . align === c . RetroFont . ALIGN _RIGHT ? a = this . width - this . _text . length * ( this . characterWidth + this . customSpacingX ) : this . align === c . RetroFont . ALIGN _CENTER && ( a = this . width / 2 - this . _text . length * ( this . characterWidth + this . customSpacingX ) / 2 , a += this . customSpacingX / 2 ) , 0 > a && ( a = 0 ) , this . pasteLine ( this . _text , a , 0 , this . customSpacingX ) ; th
} , frac : function ( ) { return this . rnd . apply ( this ) + 1.1102230246251565 e - 16 * ( 2097152 * this . rnd . apply ( this ) | 0 ) } , real : function ( ) { return this . integer ( ) + this . frac ( ) } , integerInRange : function ( a , b ) { return Math . floor ( this . realInRange ( 0 , b - a + 1 ) + a ) } , between : function ( a , b ) { return this . integerInRange ( a , b ) } , realInRange : function ( a , b ) { return this . frac ( ) * ( b - a ) + a } , normal : function ( ) { return 1 - 2 * this . frac ( ) } , uuid : function ( ) { var a = "" , b = "" ; for ( b = a = "" ; a ++ < 36 ; b += ~ a % 5 | 3 * a & 4 ? ( 15 ^ a ? 8 ^ this . frac ( ) * ( 20 ^ a ? 16 : 4 ) : 4 ) . toString ( 16 ) : "-" ) ; return b } , pick : function ( a ) { return a [ this . integerInRange ( 0 , a . length - 1 ) ] } , weightedPick : function ( a ) { return a [ ~ ~ ( Math . pow ( this . frac ( ) , 2 ) * ( a . length - 1 ) + . 5 ) ] } , timestamp : function ( a , b ) { return this . realInRange ( a || 9466848e5 , b || 1577862e6 ) } , angle : function ( ) { return this . integerInRange ( - 180 , 180 ) } } , c . RandomDataGenerator . prototype . constructor = c . RandomDataGenerator , c . QuadTree = function ( a , b , c , d , e , f , g ) { this . maxObjects = 10 , this . maxLevels = 4 , this . level = 0 , this . bounds = { } , this . objects = [ ] , this . nodes = [ ] , this . _empty = [ ] , this . reset ( a , b , c , d , e , f , g ) } , c . QuadTree . prototype = { reset : function ( a , b , c , d , e , f , g ) { this . maxObjects = e || 10 , this . maxLevels = f || 4 , this . level = g || 0 , this . bounds = { x : Math . round ( a ) , y : Math . round ( b ) , width : c , height : d , subWidth : Math . floor ( c / 2 ) , subHeight : Math . floor ( d / 2 ) , right : Math . round ( a ) + Math . floor ( c / 2 ) , bottom : Math . round ( b ) + Math . floor ( d / 2 ) } , this . objects . length = 0 , this . nodes . length = 0 } , populate : function ( a ) { a . forEach ( this . populateHandler , this , ! 0 ) } , populateHandler : function ( a ) { a . body && a . exists && this . insert ( a . body ) } , split : function ( ) { this . nodes [ 0 ] = new c . QuadTree ( this . bounds . right , this . bounds . y , this . bounds . subWidth , this . bounds . subHeight , this . maxObjects , this . maxLevels , this . level + 1 ) , this . nodes [ 1 ] = new c . QuadTree ( this . bounds . x , this . bounds . y , this . bounds . subWidth , this . bounds . subHeight , this . maxObjects , this . maxLevels , this . level + 1 ) , this . nodes [ 2 ] = new c . QuadTree ( this . bounds . x , this . bounds . bottom , this . bounds . subWidth , this . bounds . subHeight , this . maxObjects , this . maxLevels , this . level + 1 ) , this . nodes [ 3 ] = new c . QuadTree ( this . bounds . right , this . bounds . bottom , this . bounds . subWidth , this . bounds . subHeight , this . maxObjects , this . maxLevels , this . level + 1 ) } , insert : function ( a ) { var b , c = 0 ; if ( null != this . nodes [ 0 ] && ( b = this . getIndex ( a ) , - 1 !== b ) ) return void this . nodes [ b ] . insert ( a ) ; if ( this . objects . push ( a ) , this . objects . length > this . maxObjects && this . level < this . maxLevels ) for ( null == this . nodes [ 0 ] && this . split ( ) ; c < this . objects . length ; ) b = this . getIndex ( this . objects [ c ] ) , - 1 !== b ? this . nodes [ b ] . insert ( this . objects . splice ( c , 1 ) [ 0 ] ) : c ++ } , getIndex : function ( a ) { var b = - 1 ; return a . x < this . bounds . right && a . right < this . bounds . right ? a . y < this . bounds . bottom && a . bottom < this . bounds . bottom ? b = 1 : a . y > this . bounds . bottom && ( b = 2 ) : a . x > this . bounds . right && ( a . y < this . bounds . bottom && a . bottom < this . bounds . bottom ? b = 0 : a . y > this . bounds . bottom && ( b = 3 ) ) , b } , retrieve : function ( a ) { if ( a instanceof c . Rectangle ) var b = this . objects , d = this . getIndex ( a ) ; else { if ( ! a . body ) return this . _empty ; var b = this . objects , d = this . getIndex ( a . body ) } return this . nodes [ 0 ] && ( - 1 !== d ? b = b . concat ( this . nodes [ d ] . retrieve ( a ) ) : ( b = b . concat ( this . nodes [ 0 ] . retrieve ( a ) ) , b = b . concat ( this . nodes [ 1 ] . retrieve ( a ) ) , b = b . concat ( this . nodes [ 2 ] . retrieve ( a ) ) , b = b . concat ( this . nodes [ 3 ] . retrieve ( a ) ) ) ) , b } , clear : function ( ) { this . objects . length = 0 ; for ( var a = this . nodes . length ; a -- ; ) this . nodes [ a ] . clear ( ) , this . nodes . splice ( a , 1 ) ; this . nodes . length = 0 } } , c . QuadTree . prototype . constructor = c . QuadTree , c . Net = function ( a ) { this . game = a } , c . Net . prototype = { getHostName : function ( ) { return window . location && window . location . hostname ? window . location . hostname : null } , checkDomainName : function ( a ) { return - 1 !== window . location . hostname . indexOf ( a ) } , updateQueryString : function ( a , b , c , d ) { void 0 === c && ( c = ! 1 ) , ( void 0 === d || "" === d ) && ( d = window . location . href ) ; var e = "" , f = new RegExp ( "([?|&])" + a + "=.*?(&|#|$)(.*)" , "gi" ) ; if ( f . test ( d ) ) e = "undefined" != typeof b && null !== b ? d . replace ( f , "$1" + a + "=" + b + "$2$3" ) : d . replace ( f , "$1$3" ) . replace ( /(&|\?)$/ , "" ) ; else if ( "undefined" != typeof b && null !== b ) { var g = - 1 !== d . indexOf ( "?" ) ? "&" : "?" , h = d . split ( "#" ) ; d = h [ 0 ] + g + a + "=" + b , h [ 1 ] && ( d += "#" + h [ 1 ] ) , e = d } else e = d ; return c ? void ( window . location . href = e ) : e } , getQueryString : function ( a ) { void 0 === a && ( a = "" ) ; var b = { } , c = location . search . substring
} , c . Animation . prototype = { play : function ( a , b , c ) { return "number" == typeof a && ( this . delay = 1e3 / a ) , "boolean" == typeof b && ( this . loop = b ) , "undefined" != typeof c && ( this . killOnComplete = c ) , this . isPlaying = ! 0 , this . isFinished = ! 1 , this . paused = ! 1 , this . loopCount = 0 , this . _timeLastFrame = this . game . time . time , this . _timeNextFrame = this . game . time . time + this . delay , this . _frameIndex = 0 , this . updateCurrentFrame ( ! 1 , ! 0 ) , this . _parent . events . onAnimationStart$dispatch ( this . _parent , this ) , this . onStart . dispatch ( this . _parent , this ) , this . _parent . animations . currentAnim = this , this . _parent . animations . currentFrame = this . currentFrame , this } , restart : function ( ) { this . isPlaying = ! 0 , this . isFinished = ! 1 , this . paused = ! 1 , this . loopCount = 0 , this . _timeLastFrame = this . game . time . time , this . _timeNextFrame = this . game . time . time + this . delay , this . _frameIndex = 0 , this . currentFrame = this . _frameData . getFrame ( this . _frames [ this . _frameIndex ] ) , this . _parent . setFrame ( this . currentFrame ) , this . _parent . animations . currentAnim = this , this . _parent . animations . currentFrame = this . currentFrame , this . onStart . dispatch ( this . _parent , this ) } , setFrame : function ( a , b ) { var c ; if ( void 0 === b && ( b = ! 1 ) , "string" == typeof a ) for ( var d = 0 ; d < this . _frames . length ; d ++ ) this . _frameData . getFrame ( this . _frames [ d ] ) . name === a && ( c = d ) ; else if ( "number" == typeof a ) if ( b ) c = a ; else for ( var d = 0 ; d < this . _frames . length ; d ++ ) this . _frames [ d ] === c && ( c = d ) ; c && ( this . _frameIndex = c - 1 , this . _timeNextFrame = this . game . time . time , this . update ( ) ) } , stop : function ( a , b ) { void 0 === a && ( a = ! 1 ) , void 0 === b && ( b = ! 1 ) , this . isPlaying = ! 1 , this . isFinished = ! 0 , this . paused = ! 1 , a && ( this . currentFrame = this . _frameData . getFrame ( this . _frames [ 0 ] ) , this . _parent . setFrame ( this . currentFrame ) ) , b && ( this . _parent . events . onAnimationComplete$dispatch ( this . _parent , this ) , this . onComplete . dispatch ( this . _parent , this ) ) } , onPause : function ( ) { this . isPlaying && ( this . _frameDiff = this . _timeNextFrame - this . game . time . time ) } , onResume : function ( ) { this . isPlaying && ( this . _timeNextFrame = this . game . time . time + this . _frameDiff ) } , update : function ( ) { return this . isPaused ? ! 1 : this . isPlaying && this . game . time . time >= this . _timeNextFrame ? ( this . _frameSkip = 1 , this . _frameDiff = this . game . time . time - this . _timeNextFrame , this . _timeLastFrame = this . game . time . time , this . _frameDiff > this . delay && ( this . _frameSkip = Math . floor ( this . _frameDiff / this . delay ) , this . _frameDiff -= this . _frameSkip * this . delay ) , this . _timeNextFrame = this . game . time . time + ( this . delay - this . _frameDiff ) , this . _frameIndex += this . _frameSkip , this . _frameIndex >= this . _frames . length ? this . loop ? ( this . _frameIndex %= this . _frames . length , this . currentFrame = this . _frameData . getFrame ( this . _frames [ this . _frameIndex ] ) , this . currentFrame && this . _parent . setFrame ( this . currentFrame ) , this . loopCount ++ , this . _parent . events . onAnimationLoop$dispatch ( this . _parent , this ) , this . onLoop . dispatch ( this . _parent , this ) , this . onUpdate ? ( this . onUpdate . dispatch ( this , this . currentFrame ) , ! ! this . _frameData ) : ! 0 ) : ( this . complete ( ) , ! 1 ) : this . updateCurrentFrame ( ! 0 ) ) : ! 1 } , updateCurrentFrame : function ( a , b ) { if ( void 0 === b && ( b = ! 1 ) , ! this . _frameData ) return ! 1 ; var c = this . currentFrame . index ; return this . currentFrame = this . _frameData . getFrame ( this . _frames [ this . _frameIndex ] ) , this . currentFrame && ( b || ! b && c !== this . currentFrame . index ) && this . _parent . setFrame ( this . currentFrame ) , this . onUpdate && a ? ( this . onUpdate . dispatch ( this , this . currentFrame ) , ! ! this . _frameData ) : ! 0 } , next : function ( a ) { void 0 === a && ( a = 1 ) ; var b = this . _frameIndex + a ; b >= this . _frames . length && ( this . loop ? b %= this . _frames . length : b = this . _frames . length - 1 ) , b !== this . _frameIndex && ( this . _frameIndex = b , this . updateCurrentFrame ( ! 0 ) ) } , previous : function ( a ) { void 0 === a && ( a = 1 ) ; var b = this . _frameIndex - a ; 0 > b && ( this . loop ? b = this . _frames . length + b : b ++ ) , b !== this . _frameIndex && ( this . _frameIndex = b , this . updateCurrentFrame ( ! 0 ) ) } , updateFrameData : function ( a ) { this . _frameData = a , this . currentFrame = this . _frameData ? this . _frameData . getFrame ( this . _frames [ this . _frameIndex % this . _frames . length ] ) : null } , destroy : function ( ) { this . _frameData && ( this . game . onPause . remove ( this . onPause , this ) , this . game . onResume . remove ( this . onResume , this ) , this . game = null , this . _parent = null , this . _frames = null , this . _frameData = null , this . currentFrame = null , this . isPlaying = ! 1 , this . onStart . dispose ( ) , this . onLoop . dispose ( ) , this . onComplete . dispose ( ) ,
} if ( this . updateProgress ( ) , this . _processingHead >= this . _fileList . length ) this . finishedLoading ( ) ; else if ( ! this . _flightQueue . length ) { console . warn ( "Phaser.Loader - aborting: processing queue empty, loading may have stalled" ) ; var f = this ; setTimeout ( function ( ) { f . finishedLoading ( ! 0 ) } , 2e3 ) } } , finishedLoading : function ( a ) { this . hasLoaded || ( this . hasLoaded = ! 0 , this . isLoading = ! 1 , a || this . _fileLoadStarted || ( this . _fileLoadStarted = ! 0 , this . onLoadStart . dispatch ( ) ) , this . onLoadComplete . dispatch ( ) , this . reset ( ) , this . game . state . loadComplete ( ) ) } , asyncComplete : function ( a , b ) { void 0 === b && ( b = "" ) , a . loaded = ! 0 , a . error = ! ! b , b && ( a . errorMessage = b , console . warn ( "Phaser.Loader - " + a . type + "[" + a . key + "]: " + b ) ) , this . processLoadQueue ( ) } , processPack : function ( a ) { var b = a . data [ a . key ] ; if ( ! b ) return void console . warn ( "Phaser.Loader - " + a . key + ": pack has data, but not for pack key" ) ; for ( var d = 0 ; d < b . length ; d ++ ) { var e = b [ d ] ; switch ( e . type ) { case "image" : this . image ( e . key , e . url , e . overwrite ) ; break ; case "text" : this . text ( e . key , e . url , e . overwrite ) ; break ; case "json" : this . json ( e . key , e . url , e . overwrite ) ; break ; case "xml" : this . xml ( e . key , e . url , e . overwrite ) ; break ; case "script" : this . script ( e . key , e . url , e . callback , a . callbackContext || this ) ; break ; case "binary" : this . binary ( e . key , e . url , e . callback , a . callbackContext || this ) ; break ; case "spritesheet" : this . spritesheet ( e . key , e . url , e . frameWidth , e . frameHeight , e . frameMax , e . margin , e . spacing ) ; break ; case "video" : this . video ( e . key , e . urls ) ; break ; case "audio" : this . audio ( e . key , e . urls , e . autoDecode ) ; break ; case "audiosprite" : this . audiosprite ( e . key , e . urls , e . jsonURL , e . jsonData , e . autoDecode ) ; break ; case "tilemap" : this . tilemap ( e . key , e . url , e . data , c . Tilemap [ e . format ] ) ; break ; case "physics" : this . physics ( e . key , e . url , e . data , c . Loader [ e . format ] ) ; break ; case "bitmapFont" : this . bitmapFont ( e . key , e . textureURL , e . atlasURL , e . atlasData , e . xSpacing , e . ySpacing ) ; break ; case "atlasJSONArray" : this . atlasJSONArray ( e . key , e . textureURL , e . atlasURL , e . atlasData ) ; break ; case "atlasJSONHash" : this . atlasJSONHash ( e . key , e . textureURL , e . atlasURL , e . atlasData ) ; break ; case "atlasXML" : this . atlasXML ( e . key , e . textureURL , e . atlasURL , e . atlasData ) ; break ; case "atlas" : this . atlas ( e . key , e . textureURL , e . atlasURL , e . atlasData , c . Loader [ e . format ] ) ; break ; case "shader" : this . shader ( e . key , e . url , e . overwrite ) } } } , transformUrl : function ( a , b ) { return a ? "http" === a . substr ( 0 , 4 ) || "//" === a . substr ( 0 , 2 ) ? a : this . baseURL + b . path + a : ! 1 } , loadFile : function ( a ) { switch ( a . type ) { case "packfile" : this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "text" , this . fileComplete ) ; break ; case "image" : case "spritesheet" : case "textureatlas" : case "bitmapfont" : this . loadImageTag ( a ) ; break ; case "audio" : a . url = this . getAudioURL ( a . url ) , a . url ? this . game . sound . usingWebAudio ? this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "arraybuffer" , this . fileComplete ) : this . game . sound . usingAudioTag && this . loadAudioTag ( a ) : this . fileError ( a , null , "No supported audio URL specified or device does not have audio playback support" ) ; break ; case "video" : a . url = this . getVideoURL ( a . url ) , a . url ? a . asBlob ? this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "arraybuffer" , this . fileComplete ) : this . loadVideoTag ( a ) : this . fileError ( a , null , "No supported video URL specified or device does not have video playback support" ) ; break ; case "json" : this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "text" , this . jsonLoadComplete ) ; break ; case "xml" : this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "text" , this . xmlLoadComplete ) ; break ; case "tilemap" : a . format === c . Tilemap . TILED _JSON ? this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "text" , this . jsonLoadComplete ) : a . format === c . Tilemap . CSV ? this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "text" , this . csvLoadComplete ) : this . asyncComplete ( a , "invalid Tilemap format: " + a . format ) ; break ; case "text" : case "script" : case "shader" : case "physics" : this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "text" , this . fileComplete ) ; break ; case "binary" : this . xhrLoad ( a , this . transformUrl ( a . url , a ) , "arraybuffer" , this . fileComplete ) } } , loadImageTag : function ( a ) { var b = this ; a . data = new Image , a . data . name = a . key , this . crossOrigin && ( a . data . crossOrigin = this . crossOrigin ) , a . data . onload = function ( ) { a . data . onload && ( a . data . onload = null , a . data . onerror = null , b . fileComplete ( a ) ) } , a . data . onerror = function ( ) { a . data . onload && ( a . data . onload = null , a . data . onerror = null , b . fil
} , cameraInfo : function ( a , b , c , d ) { this . start ( b , c , d ) , this . line ( "Camera (" + a . width + " x " + a . height + ")" ) , this . line ( "X: " + a . x + " Y: " + a . y ) , a . bounds && this . line ( "Bounds x: " + a . bounds . x + " Y: " + a . bounds . y + " w: " + a . bounds . width + " h: " + a . bounds . height ) , this . line ( "View x: " + a . view . x + " Y: " + a . view . y + " w: " + a . view . width + " h: " + a . view . height ) , this . line ( "Total in view: " + a . totalInView ) , this . stop ( ) } , timer : function ( a , b , c , d ) { this . start ( b , c , d ) , this . line ( "Timer (running: " + a . running + " expired: " + a . expired + ")" ) , this . line ( "Next Tick: " + a . next + " Duration: " + a . duration ) , this . line ( "Paused: " + a . paused + " Length: " + a . length ) , this . stop ( ) } , pointer : function ( a , b , c , d , e ) { null != a && ( void 0 === b && ( b = ! 1 ) , c = c || "rgba(0,255,0,0.5)" , d = d || "rgba(255,0,0,0.5)" , ( b !== ! 0 || a . isUp !== ! 0 ) && ( this . start ( a . x , a . y - 100 , e ) , this . context . beginPath ( ) , this . context . arc ( a . x , a . y , a . circle . radius , 0 , 2 * Math . PI ) , this . context . fillStyle = a . active ? c : d , this . context . fill ( ) , this . context . closePath ( ) , this . context . beginPath ( ) , this . context . moveTo ( a . positionDown . x , a . positionDown . y ) , this . context . lineTo ( a . position . x , a . position . y ) , this . context . lineWidth = 2 , this . context . stroke ( ) , this . context . closePath ( ) , this . line ( "ID: " + a . id + " Active: " + a . active ) , this . line ( "World X: " + a . worldX + " World Y: " + a . worldY ) , this . line ( "Screen X: " + a . x + " Screen Y: " + a . y + " In: " + a . withinGame ) , this . line ( "Duration: " + a . duration + " ms" ) , this . line ( "is Down: " + a . isDown + " is Up: " + a . isUp ) , this . stop ( ) ) ) } , spriteInputInfo : function ( a , b , c , d ) { this . start ( b , c , d ) , this . line ( "Sprite Input: (" + a . width + " x " + a . height + ")" ) , this . line ( "x: " + a . input . pointerX ( ) . toFixed ( 1 ) + " y: " + a . input . pointerY ( ) . toFixed ( 1 ) ) , this . line ( "over: " + a . input . pointerOver ( ) + " duration: " + a . input . overDuration ( ) . toFixed ( 0 ) ) , this . line ( "down: " + a . input . pointerDown ( ) + " duration: " + a . input . downDuration ( ) . toFixed ( 0 ) ) , this . line ( "just over: " + a . input . justOver ( ) + " just out: " + a . input . justOut ( ) ) , this . stop ( ) } , key : function ( a , b , c , d ) { this . start ( b , c , d , 150 ) , this . line ( "Key:" , a . keyCode , "isDown:" , a . isDown ) , this . line ( "justDown:" , a . justDown , "justUp:" , a . justUp ) , this . line ( "Time Down:" , a . timeDown . toFixed ( 0 ) , "duration:" , a . duration . toFixed ( 0 ) ) , this . stop ( ) } , inputInfo : function ( a , b , c ) { this . start ( a , b , c ) , this . line ( "Input" ) , this . line ( "X: " + this . game . input . x + " Y: " + this . game . input . y ) , this . line ( "World X: " + this . game . input . worldX + " World Y: " + this . game . input . worldY ) , this . line ( "Scale X: " + this . game . input . scale . x . toFixed ( 1 ) + " Scale Y: " + this . game . input . scale . x . toFixed ( 1 ) ) , this . line ( "Screen X: " + this . game . input . activePointer . screenX + " Screen Y: " + this . game . input . activePointer . screenY ) , this . stop ( ) } , spriteBounds : function ( a , b , c ) { var d = a . getBounds ( ) ; d . x += this . game . camera . x , d . y += this . game . camera . y , this . rectangle ( d , b , c ) } , ropeSegments : function ( a , b , c ) { var d = a . segments , e = this ; d . forEach ( function ( a ) { e . rectangle ( a , b , c ) } , this ) } , spriteInfo : function ( a , b , c , d ) { this . start ( b , c , d ) , this . line ( "Sprite: (" + a . width + " x " + a . height + ") anchor: " + a . anchor . x + " x " + a . anchor . y ) , this . line ( "x: " + a . x . toFixed ( 1 ) + " y: " + a . y . toFixed ( 1 ) ) , this . line ( "angle: " + a . angle . toFixed ( 1 ) + " rotation: " + a . rotation . toFixed ( 1 ) ) , this . line ( "visible: " + a . visible + " in camera: " + a . inCamera ) , this . line ( "bounds x: " + a . _bounds . x . toFixed ( 1 ) + " y: " + a . _bounds . y . toFixed ( 1 ) + " w: " + a . _bounds . width . toFixed ( 1 ) + " h: " + a . _bounds . height . toFixed ( 1 ) ) , this . stop ( ) } , spriteCoords : function ( a , b , c , d ) { this . start ( b , c , d , 100 ) , a . name && this . line ( a . name ) , this . line ( "x:" , a . x . toFixed ( 2 ) , "y:" , a . y . toFixed ( 2 ) ) , this . line ( "pos x:" , a . position . x . toFixed ( 2 ) , "pos y:" , a . position . y . toFixed ( 2 ) ) , this . line ( "world x:" , a . world . x . toFixed ( 2 ) , "world y:" , a . world . y . toFixed ( 2 ) ) , this . stop ( ) } , lineInfo : function ( a , b , c , d ) { this . start ( b , c , d , 80 ) , this . line ( "start.x:" , a . start . x . toFixed ( 2 ) , "start.y:" , a . start . y . toFixed ( 2 ) ) , this . line ( "end.x:" , a . end . x . toFixed ( 2 ) , "end.y:" , a . end . y . toFixed ( 2 ) ) , this . line ( "length:" , a . length . toFixed ( 2 ) , "angle:" , a . angle ) , this . stop ( ) } , pixel : function ( a , b , c , d ) { d = d || 2 , this . start ( ) , this . context . fillStyle = c , this . context . fillRect ( a , b , d , d ) , this . stop ( ) } , geom : function ( a , b , d , e ) { void 0 === d && ( d = ! 0 ) , void 0 === e && ( e = 0 ) , b = b || "rgba(0,255,0,0.4)" , this . start ( ) , this . context . fillStyle = b , this . context . strokeStyle = b , a instanceof c . Rectangle || 1 === e ? d ? t
} ( ) ) : b . Phaser = c , c } . call ( this ) ;
2015-02-25 02:59:00 +00:00
//# sourceMappingURL=phaser-no-physics.map