2016-02-05 11:57:44 +00:00
/* Phaser v2.4.5 - http://phaser.io - @photonstorm - (c) 2015 Photon Storm Ltd. */
2015-02-25 02:59:00 +00:00
2016-02-05 11:57:44 +00:00
( function ( ) { var a = this , b = b || { } ; return b . game = null , b . WEBGL _RENDERER = 0 , b . CANVAS _RENDERER = 1 , b . VERSION = "v2.2.9" , 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 . DisplayObject = function ( ) { this . position = new b . Point ( 0 , 0 ) , this . scale = new b . Point ( 1 , 1 ) , 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 . 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 c = [ ] , d = 0 ; d < a . length ; d ++ ) for ( var e = a [ d ] . passes , f = 0 ; f < e . length ; f ++ ) c . push ( e [ f ] ) ; this . _filterBlock = { target : this , filterPasses : c } } this . _filters = a , this . blendMode && this . blendMode === b . blendModes . MULTIPLY && ( this . blendMode = b . blendModes . NORMAL ) } } ) , 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 . RenderTexture ( 0 | e . width , 0 | e . height , d , c , a ) ; return b . DisplayObject . _tempMatrix . tx = - e . x , b . DisplayObject . _tempMatrix . ty = - e . y , f . render ( this , b . DisplayObject . _tempMatrix ) , f }
2016-02-12 16:00:36 +00:00
this . renderSession . blendModeManager = this . blendModeManager , this . renderSession . spriteBatch = this . spriteBatch , this . renderSession . stencilManager = this . stencilManager , this . renderSession . renderer = this , this . renderSession . resolution = this . resolution , this . initContext ( ) , this . mapBlendModes ( ) } , b . WebGLRenderer . prototype . constructor = b . WebGLRenderer , b . WebGLRenderer . prototype . initContext = function ( ) { var a = this . view . getContext ( "webgl" , this . _contextOptions ) || this . view . getContext ( "experimental-webgl" , this . _contextOptions ) ; if ( this . gl = a , ! a ) throw new Error ( "This browser does not support webGL. Try using the canvas renderer" ) ; this . glContextId = a . id = b . WebGLRenderer . glContextId ++ , b . glContexts [ this . glContextId ] = a , b . instances [ this . glContextId ] = this , a . disable ( a . DEPTH _TEST ) , a . disable ( a . CULL _FACE ) , a . enable ( a . BLEND ) , this . shaderManager . setContext ( a ) , this . spriteBatch . setContext ( a ) , this . maskManager . setContext ( a ) , this . filterManager . setContext ( a ) , this . blendModeManager . setContext ( a ) , this . stencilManager . setContext ( a ) , this . renderSession . gl = this . gl , this . resize ( this . width , this . height ) } , b . WebGLRenderer . prototype . render = function ( a ) { if ( ! this . contextLost ) { a . updateTransform ( ) ; var b = this . gl ; b . viewport ( 0 , 0 , this . width , this . height ) , b . bindFramebuffer ( b . FRAMEBUFFER , null ) , this . game . clearBeforeRender && ( b . clearColor ( a . _bgColor . r , a . _bgColor . g , a . _bgColor . b , a . _bgColor . a ) , b . clear ( b . COLOR _BUFFER _BIT ) ) , this . renderDisplayObject ( a , this . projection ) } } , b . WebGLRenderer . prototype . renderDisplayObject = function ( a , c , d , e ) { this . renderSession . blendModeManager . setBlendMode ( b . blendModes . NORMAL ) , this . renderSession . drawCount = 0 , this . renderSession . flipY = d ? - 1 : 1 , this . renderSession . projection = c , this . renderSession . offset = this . offset , this . spriteBatch . begin ( this . renderSession ) , this . filterManager . begin ( this . renderSession , d ) , a . _renderWebGL ( this . renderSession , e ) , this . spriteBatch . end ( ) } , b . WebGLRenderer . prototype . resize = function ( a , b ) { this . width = a * this . resolution , this . height = b * this . resolution , this . view . width = this . width , this . view . height = this . height , this . autoResize && ( this . view . style . width = this . width / this . resolution + "px" , this . view . style . height = this . height / this . resolution + "px" ) , this . gl . viewport ( 0 , 0 , this . width , this . height ) , this . projection . x = this . width / 2 / this . resolution , this . projection . y = - this . height / 2 / this . resolution } , b . WebGLRenderer . prototype . updateTexture = function ( a ) { if ( ! a . hasLoaded ) return ! 1 ; var c = this . gl ; return a . _glTextures [ c . id ] || ( a . _glTextures [ c . id ] = c . createTexture ( ) ) , c . bindTexture ( c . TEXTURE _2D , a . _glTextures [ c . id ] ) , c . pixelStorei ( c . UNPACK _PREMULTIPLY _ALPHA _WEBGL , a . premultipliedAlpha ) , c . texImage2D ( c . TEXTURE _2D , 0 , c . RGBA , c . RGBA , c . UNSIGNED _BYTE , a . source ) , c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _MAG _FILTER , a . scaleMode === b . scaleModes . LINEAR ? c . LINEAR : c . NEAREST ) , a . mipmap && b . isPowerOfTwo ( a . width , a . height ) ? ( c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _MIN _FILTER , a . scaleMode === b . scaleModes . LINEAR ? c . LINEAR _MIPMAP _LINEAR : c . NEAREST _MIPMAP _NEAREST ) , c . generateMipmap ( c . TEXTURE _2D ) ) : c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _MIN _FILTER , a . scaleMode === b . scaleModes . LINEAR ? c . LINEAR : c . NEAREST ) , a . _powerOf2 ? ( c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _WRAP _S , c . REPEAT ) , c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _WRAP _T , c . REPEAT ) ) : ( c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _WRAP _S , c . CLAMP _TO _EDGE ) , c . texParameteri ( c . TEXTURE _2D , c . TEXTURE _WRAP _T , c . CLAMP _TO _EDGE ) ) , a . _dirty [ c . id ] = ! 1 , ! 0 } , b . WebGLRenderer . prototype . destroy = function ( ) { b . glContexts [ this . glContextId ] = null , this . projection = null , this . offset = null , this . shaderManager . destroy ( ) , this . spriteBatch . destroy ( ) , this . maskManager . destroy ( ) , this . filterManager . destroy ( ) , this . shaderManager = null , this . spriteBatch = null , this . maskManager = null , this . filterManager = null , this . gl = null , this . renderSession = null , b . CanvasPool . remove ( this ) , b . instances [ this . glContextId ] = null , b . WebGLRenderer . glContextId -- } , b . WebGLRenderer . prototype . mapBlendModes = function ( ) { var a = this . gl ; if ( ! b . blendModesWebGL ) { var c = [ ] , d = b . blendModes ; c [ d . NORMAL ] = [ a . ONE , a . ONE _MINUS _SRC _ALPHA ] , c [ d . ADD ] = [ a . SRC _ALPHA , a . DST _ALPHA ] , c [ d . MULTIPLY ] = [ a . DST _COLOR , a . ONE _MINUS _SRC _ALPHA ] , c [ d . SCREEN ] = [ a . SRC _ALPHA , a . ONE ] , c [ d . OVERLAY ] = [ a . ONE , a . ONE _MINUS _SRC _ALPHA ] , c [ d . DARKEN ] = [ a . ONE , a . ONE _MINUS _SRC _
a . context . fillRect ( 0 , 0 , 1 , 1 ) ; var c = a . context . getImageData ( 0 , 0 , 1 , 1 ) ; if ( null === c ) return ! 1 ; a . context . putImageData ( c , 1 , 0 ) ; var d = a . context . getImageData ( 1 , 0 , 1 , 1 ) ; return d . data [ 0 ] === c . data [ 0 ] && d . data [ 1 ] === c . data [ 1 ] && d . data [ 2 ] === c . data [ 2 ] && d . data [ 3 ] === c . data [ 3 ] } , b . CanvasTinter . canHandleAlpha = b . CanvasTinter . checkInverseAlpha ( ) , b . CanvasTinter . canUseMultiply = b . canUseNewCanvasBlendModes ( ) , b . CanvasTinter . tintMethod = b . CanvasTinter . canUseMultiply ? b . CanvasTinter . tintWithMultiply : b . CanvasTinter . tintWithPerPixel , b . CanvasRenderer = function ( a ) { this . game = a , b . defaultRenderer || ( b . defaultRenderer = this ) , this . type = b . CANVAS _RENDERER , this . resolution = a . resolution , this . clearBeforeRender = a . clearBeforeRender , this . transparent = a . transparent , this . autoResize = ! 1 , this . width = a . width * this . resolution , this . height = a . height * this . resolution , this . view = a . canvas , this . context = this . view . getContext ( "2d" , { alpha : this . transparent } ) , this . refresh = ! 0 , this . count = 0 , this . maskManager = new b . CanvasMaskManager , this . renderSession = { context : this . context , maskManager : this . maskManager , scaleMode : null , smoothProperty : Phaser . Canvas . getSmoothingPrefix ( this . context ) , roundPixels : ! 1 } , this . mapBlendModes ( ) , this . resize ( this . width , this . height ) } , b . CanvasRenderer . prototype . constructor = b . CanvasRenderer , b . CanvasRenderer . prototype . render = function ( a ) { a . updateTransform ( ) , this . context . setTransform ( 1 , 0 , 0 , 1 , 0 , 0 ) , this . context . globalAlpha = 1 , this . renderSession . currentBlendMode = 0 , this . context . globalCompositeOperation = "source-over" , navigator . isCocoonJS && this . view . screencanvas && ( this . context . fillStyle = "black" , this . context . clear ( ) ) , this . clearBeforeRender && ( this . transparent ? this . context . clearRect ( 0 , 0 , this . width , this . height ) : ( this . context . fillStyle = a . _bgColor . rgba , this . context . fillRect ( 0 , 0 , this . width , this . height ) ) ) , this . renderDisplayObject ( a ) } , b . CanvasRenderer . prototype . destroy = function ( a ) { void 0 === a && ( a = ! 0 ) , a && this . view . parent && this . view . parent . removeChild ( this . view ) , this . view = null , this . context = null , this . maskManager = null , this . renderSession = null } , b . CanvasRenderer . prototype . resize = function ( a , b ) { this . width = a * this . resolution , this . height = b * this . resolution , this . view . width = this . width , this . view . height = this . height , this . autoResize && ( this . view . style . width = this . width / this . resolution + "px" , this . view . style . height = this . height / this . resolution + "px" ) } , b . CanvasRenderer . prototype . renderDisplayObject = function ( a , b , c ) { this . renderSession . context = b || this . context , this . renderSession . resolution = this . resolution , a . _renderCanvas ( this . renderSession , c ) } , b . CanvasRenderer . prototype . mapBlendModes = function ( ) { if ( ! b . blendModesCanvas ) { var a = [ ] , c = b . blendModes , d = b . canUseNewCanvasBlendModes ( ) ; a [ c . NORMAL ] = "source-over" , a [ c . ADD ] = "lighter" , a [ c . MULTIPLY ] = d ? "multiply" : "source-over" , a [ c . SCREEN ] = d ? "screen" : "source-over" , a [ c . OVERLAY ] = d ? "overlay" : "source-over" , a [ c . DARKEN ] = d ? "darken" : "source-over" , a [ c . LIGHTEN ] = d ? "lighten" : "source-over" , a [ c . COLOR _DODGE ] = d ? "color-dodge" : "source-over" , a [ c . COLOR _BURN ] = d ? "color-burn" : "source-over" , a [ c . HARD _LIGHT ] = d ? "hard-light" : "source-over" , a [ c . SOFT _LIGHT ] = d ? "soft-light" : "source-over" , a [ c . DIFFERENCE ] = d ? "difference" : "source-over" , a [ c . EXCLUSION ] = d ? "exclusion" : "source-over" , a [ c . HUE ] = d ? "hue" : "source-over" , a [ c . SATURATION ] = d ? "saturation" : "source-over" , a [ c . COLOR ] = d ? "color" : "source-over" , a [ c . LUMINOSITY ] = d ? "luminosity" : "source-over" , b . blendModesCanvas = a } } , b . BaseTextureCache = { } , b . BaseTextureCacheIdGenerator = 0 , b . BaseTexture = function ( a , c ) { this . resolution = 1 , this . width = 100 , this . height = 100 , this . scaleMode = c || b . scaleModes . DEFAULT , this . hasLoaded = ! 1 , this . source = a , this . _UID = b . _UID ++ , this . premultipliedAlpha = ! 0 , this . _glTextures = [ ] , this . mipmap = ! 1 , this . _dirty = [ ! 0 , ! 0 , ! 0 , ! 0 ] , a && ( ( this . source . complete || this . source . getContext ) && this . source . width && this . source . height && ( this . hasLoaded = ! 0 , this . width = this . source . naturalWidth || this . source . width , this . height = this . source . naturalHeight || this . source . height , this . dirty ( ) ) , this . skipRender = ! 1 , this . imageUrl = null , this . _powerOf2 = ! 1 ) } , b . BaseTexture . prototype . constructor = b . BaseTexture , b . BaseTexture . prototype . forceLoaded = function ( a , b ) { this . hasLoaded = ! 0 , this . width = a , this . height = b , this . dirty ( ) } , b . BaseTexture . prototype . destroy = function ( ) { this . i
return void 0 === b && ( b = new c . Point ) , b . setTo ( - 1 * a . y , a . x ) } , c . Point . normalize = function ( a , b ) { void 0 === b && ( b = new c . Point ) ; var d = a . getMagnitude ( ) ; return 0 !== d && b . setTo ( a . x / d , a . y / d ) , b } , c . Point . rotate = function ( a , b , d , e , f , g ) { if ( f && ( e = c . Math . degToRad ( e ) ) , void 0 === g ) { a . subtract ( b , d ) ; var h = Math . sin ( e ) , i = Math . cos ( e ) , j = i * a . x - h * a . y , k = h * a . x + i * a . y ; a . x = j + b , a . y = k + d } else { var l = e + Math . atan2 ( a . y - d , a . x - b ) ; a . x = b + g * Math . cos ( l ) , a . y = d + g * Math . sin ( l ) } return a } , c . Point . centroid = function ( a , b ) { if ( void 0 === b && ( b = new c . Point ) , "[object Array]" !== Object . prototype . toString . call ( a ) ) throw new Error ( "Phaser.Point. Parameter 'points' must be an array" ) ; var d = a . length ; if ( 1 > d ) throw new Error ( "Phaser.Point. Parameter 'points' array must not be empty" ) ; if ( 1 === d ) return b . copyFrom ( a [ 0 ] ) , b ; for ( var e = 0 ; d > e ; e ++ ) c . Point . add ( b , a [ e ] , b ) ; return b . divide ( d , d ) , b } , c . Point . parse = function ( a , b , d ) { b = b || "x" , d = d || "y" ; var e = new c . Point ; return a [ b ] && ( e . x = parseInt ( a [ b ] , 10 ) ) , a [ d ] && ( e . y = parseInt ( a [ d ] , 10 ) ) , e } , PIXI . Point = c . Point , c . Polygon = function ( ) { this . area = 0 , this . _points = [ ] , arguments . length > 0 && this . setTo . apply ( this , arguments ) , this . closed = ! 0 , this . type = c . POLYGON } , c . Polygon . prototype = { toNumberArray : function ( a ) { void 0 === a && ( a = [ ] ) ; for ( var b = 0 ; b < this . _points . length ; b ++ ) "number" == typeof this . _points [ b ] ? ( a . push ( this . _points [ b ] ) , a . push ( this . _points [ b + 1 ] ) , b ++ ) : ( a . push ( this . _points [ b ] . x ) , a . push ( this . _points [ b ] . y ) ) ; return a } , flatten : function ( ) { return this . _points = this . toNumberArray ( ) , this } , clone : function ( a ) { var b = this . _points . slice ( ) ; return void 0 === a || null === a ? a = new c . Polygon ( b ) : a . setTo ( b ) , a } , contains : function ( a , b ) { for ( var c = this . _points . length , d = ! 1 , e = - 1 , f = c - 1 ; ++ e < c ; f = e ) { var g = this . _points [ e ] . x , h = this . _points [ e ] . y , i = this . _points [ f ] . x , j = this . _points [ f ] . y ; ( b >= h && j > b || b >= j && h > b ) && ( i - g ) * ( b - h ) / ( j - h ) + g > a && ( d = ! d ) } return d } , setTo : function ( a ) { if ( this . area = 0 , this . _points = [ ] , arguments . length > 0 ) { Array . isArray ( a ) || ( a = Array . prototype . slice . call ( arguments ) ) ; for ( var b = Number . MAX _VALUE , c = 0 , d = a . length ; d > c ; c ++ ) { if ( "number" == typeof a [ c ] ) { var e = new PIXI . Point ( a [ c ] , a [ c + 1 ] ) ; c ++ } else var e = new PIXI . Point ( a [ c ] . x , a [ c ] . y ) ; this . _points . push ( e ) , e . y < b && ( b = e . y ) } this . calculateArea ( b ) } return this } , calculateArea : function ( a ) { for ( var b , c , d , e , f = 0 , g = this . _points . length ; g > f ; f ++ ) b = this . _points [ f ] , c = f === g - 1 ? this . _points [ 0 ] : this . _points [ f + 1 ] , d = ( b . y - a + ( c . y - a ) ) / 2 , e = b . x - c . x , this . area += d * e ; return this . area } } , c . Polygon . prototype . constructor = c . Polygon , Object . defineProperty ( c . Polygon . prototype , "points" , { get : function ( ) { return this . _points } , set : function ( a ) { null != a ? this . setTo ( a ) : this . setTo ( ) } } ) , PIXI . Polygon = c . Polygon , c . Rectangle = function ( a , b , d , e ) { a = a || 0 , b = b || 0 , d = d || 0 , e = e || 0 , this . x = a , this . y = b , this . width = d , this . height = e , this . type = c . RECTANGLE } , c . Rectangle . prototype = { offset : function ( a , b ) { return this . x += a , this . y += b , this } , offsetPoint : function ( a ) { return this . offset ( a . x , a . y ) } , setTo : function ( a , b , c , d ) { return this . x = a , this . y = b , this . width = c , this . height = d , this } , scale : function ( a , b ) { return void 0 === b && ( b = a ) , this . width *= a , this . height *= b , this } , centerOn : function ( a , b ) { return this . centerX = a , this . centerY = b , this } , floor : function ( ) { this . x = Math . floor ( this . x ) , this . y = Math . floor ( this . y ) } , floorAll : function ( ) { this . x = Math . floor ( this . x ) , this . y = Math . floor ( this . y ) , this . width = Math . floor ( this . width ) , this . height = Math . floor ( this . height ) } , ceil : function ( ) { this . x = Math . ceil ( this . x ) , this . y = Math . ceil ( this . y ) } , ceilAll : function ( ) { this . x = Math . ceil ( this . x ) , this . y = Math . ceil ( this . y ) , this . width = Math . ceil ( this . width ) , this . height = Math . ceil ( this . height ) } , copyFrom : function ( a ) { return this . setTo ( a . x , a . y , a . width , a . height ) } , copyTo : function ( a ) { return a . x = this . x , a . y = this . y , a . width = this . width , a . height = this . height , a } , inflate : function ( a , b ) { return c . Rectangle . inflate ( this , a , b ) } , size : function ( a ) { return c . Rectangle . size ( this , a ) } , resize : function ( a , b ) { return this . width = a , this . height = b , this } , clone : function ( a ) { return c . Rectangle . clone ( this , a ) } , contains : function ( a , b ) { return c . Rectangle . contains ( this , a , b ) } , containsRect : function ( a ) { return c . Rectangle . containsRect ( a , this ) } , equals : function ( a ) { return c . Rectangle . equals ( this , a ) } , intersection : function ( a , b ) { return c . Rectangle . intersection ( this , a , b ) } , intersects : function ( a ) { return
var a = this ; this . _onChange = function ( b ) { return a . visibilityChange ( b ) } , this . _hiddenVar && document . addEventListener ( this . _hiddenVar , this . _onChange , ! 1 ) , window . onblur = this . _onChange , window . onfocus = this . _onChange , window . onpagehide = this . _onChange , window . onpageshow = this . _onChange , this . game . device . cocoonJSApp && ( CocoonJS . App . onSuspended . addEventListener ( function ( ) { c . Stage . prototype . visibilityChange . call ( a , { type : "pause" } ) } ) , CocoonJS . App . onActivated . addEventListener ( function ( ) { c . Stage . prototype . visibilityChange . call ( a , { type : "resume" } ) } ) ) } , c . Stage . prototype . visibilityChange = function ( a ) { return "pagehide" === a . type || "blur" === a . type || "pageshow" === a . type || "focus" === a . type ? void ( "pagehide" === a . type || "blur" === a . type ? this . game . focusLoss ( a ) : ( "pageshow" === a . type || "focus" === a . type ) && this . game . focusGain ( a ) ) : void ( this . disableVisibilityChange || ( document . hidden || document . mozHidden || document . msHidden || document . webkitHidden || "pause" === a . type ? this . game . gamePaused ( a ) : this . game . gameResumed ( a ) ) ) } , c . Stage . prototype . setBackgroundColor = function ( a ) { this . game . transparent || ( c . Color . valueToColor ( a , this . _bgColor ) , c . Color . updateColor ( this . _bgColor ) , this . _bgColor . r /= 255 , this . _bgColor . g /= 255 , this . _bgColor . b /= 255 , this . _bgColor . a = 1 ) } , c . Stage . prototype . destroy = function ( ) { this . _hiddenVar && document . removeEventListener ( this . _hiddenVar , this . _onChange , ! 1 ) , window . onpagehide = null , window . onpageshow = null , window . onblur = null , window . onfocus = null } , Object . defineProperty ( c . Stage . prototype , "backgroundColor" , { get : function ( ) { return this . _bgColor . color } , set : function ( a ) { this . setBackgroundColor ( a ) } } ) , Object . defineProperty ( c . Stage . prototype , "smoothed" , { get : function ( ) { return PIXI . scaleModes . DEFAULT === PIXI . scaleModes . LINEAR } , set : function ( a ) { a ? PIXI . scaleModes . DEFAULT = PIXI . scaleModes . LINEAR : PIXI . scaleModes . DEFAULT = PIXI . scaleModes . NEAREST } } ) , c . Group = function ( a , b , d , e , f , g ) { void 0 === e && ( e = ! 1 ) , void 0 === f && ( f = ! 1 ) , void 0 === g && ( g = c . Physics . ARCADE ) , this . game = a , void 0 === b && ( b = a . world ) , this . name = d || "group" , this . z = 0 , PIXI . DisplayObjectContainer . call ( this ) , e ? ( this . game . stage . addChild ( this ) , this . z = this . game . stage . children . length ) : b && ( b . addChild ( this ) , this . z = b . children . length ) , this . type = c . GROUP , this . physicsType = c . GROUP , this . alive = ! 0 , this . exists = ! 0 , this . ignoreDestroy = ! 1 , this . pendingDestroy = ! 1 , this . classType = c . Sprite , this . cursor = null , this . enableBody = f , this . enableBodyDebug = ! 1 , this . physicsBodyType = g , this . physicsSortDirection = null , this . onDestroy = new c . Signal , this . cursorIndex = 0 , this . fixedToCamera = ! 1 , this . cameraOffset = new c . Point , this . hash = [ ] , this . _sortProperty = "z" } , c . Group . prototype = Object . create ( PIXI . DisplayObjectContainer . prototype ) , c . Group . prototype . constructor = c . Group , c . Group . RETURN _NONE = 0 , c . Group . RETURN _TOTAL = 1 , c . Group . RETURN _CHILD = 2 , c . Group . SORT _ASCENDING = - 1 , c . Group . SORT _DESCENDING = 1 , c . Group . prototype . add = function ( a , b ) { return void 0 === b && ( b = ! 1 ) , a . parent !== this && ( a . body && a . parent . removeFromHash ( a ) , a . z = this . children . length , this . addChild ( a ) , this . enableBody && null === a . body ? this . game . physics . enable ( a , this . physicsBodyType ) : a . body && this . addToHash ( a ) , ! b && a . events && a . events . onAddedToGroup$dispatch ( a , this ) , null === this . cursor && ( this . cursor = a ) ) , a } , c . Group . prototype . addToHash = function ( a ) { if ( a . parent === this ) { var b = this . hash . indexOf ( a ) ; if ( - 1 === b ) return this . hash . push ( a ) , ! 0 } return ! 1 } , c . Group . prototype . removeFromHash = function ( a ) { if ( a ) { var b = this . hash . indexOf ( a ) ; if ( - 1 !== b ) return this . hash . splice ( b , 1 ) , ! 0 } return ! 1 } , c . Group . prototype . addMultiple = function ( a , b ) { if ( a instanceof c . Group ) a . moveAll ( this , b ) ; else if ( Array . isArray ( a ) ) for ( var d = 0 ; d < a . length ; d ++ ) this . add ( a [ d ] , b ) ; return a } , c . Group . prototype . addAt = function ( a , b , c ) { return void 0 === c && ( c = ! 1 ) , a . parent !== this && ( a . body && a . parent . removeFromHash ( a ) , this . addChildAt ( a , b ) , this . updateZ ( ) , this . enableBody && null === a . body ? this . game . physics . enable ( a , this . physicsBodyType ) : a . body && this . addToHash ( a ) , ! c && a . events && a . events . onAddedToGroup$dispatch ( a , this ) , null === this . cursor && ( this . cursor = a ) ) , a } , c . Group . prototype . getAt = function ( a ) { return 0 > a || a >= this . children . length ? - 1 : this . getChildAt ( a ) } , c . Group . prototype . create = function ( a , b , c , d , e ) { void 0 === e && ( e = ! 0 ) ; var f = new this . classType ( this . game , a , b , c , d ) ; return
this . onHold . dispose ( ) , this . onDown = new c . Signal , this . onUp = new c . Signal , this . onTap = new c . Signal , this . onHold = new c . Signal , this . moveCallbacks = [ ] ) , this . _pollCounter = 0 } } , resetSpeed : function ( a , b ) { this . _oldPosition . setTo ( a , b ) , this . speed . setTo ( 0 , 0 ) } , startPointer : function ( a ) { if ( this . maxPointers >= 0 && this . countActivePointers ( this . maxPointers ) >= this . maxPointers ) return null ; if ( ! this . pointer1 . active ) return this . pointer1 . start ( a ) ; if ( ! this . pointer2 . active ) return this . pointer2 . start ( a ) ; for ( var b = 2 ; b < this . pointers . length ; b ++ ) { var c = this . pointers [ b ] ; if ( ! c . active ) return c . start ( a ) } return null } , updatePointer : function ( a ) { if ( this . pointer1 . active && this . pointer1 . identifier === a . identifier ) return this . pointer1 . move ( a ) ; if ( this . pointer2 . active && this . pointer2 . identifier === a . identifier ) return this . pointer2 . move ( a ) ; for ( var b = 2 ; b < this . pointers . length ; b ++ ) { var c = this . pointers [ b ] ; if ( c . active && c . identifier === a . identifier ) return c . move ( a ) } return null } , stopPointer : function ( a ) { if ( this . pointer1 . active && this . pointer1 . identifier === a . identifier ) return this . pointer1 . stop ( a ) ; if ( this . pointer2 . active && this . pointer2 . identifier === a . identifier ) return this . pointer2 . stop ( a ) ; for ( var b = 2 ; b < this . pointers . length ; b ++ ) { var c = this . pointers [ b ] ; if ( c . active && c . identifier === a . identifier ) return c . stop ( a ) } return null } , countActivePointers : function ( a ) { void 0 === a && ( a = this . pointers . length ) ; for ( var b = a , c = 0 ; c < this . pointers . length && b > 0 ; c ++ ) { var d = this . pointers [ c ] ; d . active && b -- } return a - b } , getPointer : function ( a ) { void 0 === a && ( a = ! 1 ) ; for ( var b = 0 ; b < this . pointers . length ; b ++ ) { var c = this . pointers [ b ] ; if ( c . active === a ) return c } return null } , getPointerFromIdentifier : function ( a ) { for ( var b = 0 ; b < this . pointers . length ; b ++ ) { var c = this . pointers [ b ] ; if ( c . identifier === a ) return c } return null } , getPointerFromId : function ( a ) { for ( var b = 0 ; b < this . pointers . length ; b ++ ) { var c = this . pointers [ b ] ; if ( c . pointerId === a ) return c } return null } , getLocalPosition : function ( a , b , d ) { void 0 === d && ( d = new c . Point ) ; var e = a . worldTransform , f = 1 / ( e . a * e . d + e . c * - e . b ) ; return d . setTo ( e . d * f * b . x + - e . c * f * b . y + ( e . ty * e . c - e . tx * e . d ) * f , e . a * f * b . y + - e . b * f * b . x + ( - e . ty * e . a + e . tx * e . b ) * f ) } , hitTest : function ( a , b , d ) { if ( ! a . worldVisible ) return ! 1 ; if ( this . getLocalPosition ( a , b , this . _localPoint ) , d . copyFrom ( this . _localPoint ) , a . hitArea && a . hitArea . contains ) return a . hitArea . contains ( this . _localPoint . x , this . _localPoint . y ) ; if ( a instanceof c . TileSprite ) { var e = a . width , f = a . height , g = - e * a . anchor . x ; if ( this . _localPoint . x >= g && this . _localPoint . x < g + e ) { var h = - f * a . anchor . y ; if ( this . _localPoint . y >= h && this . _localPoint . y < h + f ) return ! 0 } } else if ( a instanceof PIXI . Sprite ) { var e = a . texture . frame . width , f = a . texture . frame . height , g = - e * a . anchor . x ; if ( this . _localPoint . x >= g && this . _localPoint . x < g + e ) { var h = - f * a . anchor . y ; if ( this . _localPoint . y >= h && this . _localPoint . y < h + f ) return ! 0 } } else if ( a instanceof c . Graphics ) for ( var i = 0 ; i < a . graphicsData . length ; i ++ ) { var j = a . graphicsData [ i ] ; if ( j . fill && j . shape && j . shape . contains ( this . _localPoint . x , this . _localPoint . y ) ) return ! 0 } for ( var i = 0 , k = a . children . length ; k > i ; i ++ ) if ( this . hitTest ( a . children [ i ] , b , d ) ) return ! 0 ; return ! 1 } , onClickTrampoline : function ( ) { this . activePointer . processClickTrampolines ( ) } } , c . Input . prototype . constructor = c . Input , Object . defineProperty ( c . Input . prototype , "x" , { get : function ( ) { return this . _x } , set : function ( a ) { this . _x = Math . floor ( a ) } } ) , Object . defineProperty ( c . Input . prototype , "y" , { get : function ( ) { return this . _y } , set : function ( a ) { this . _y = Math . floor ( a ) } } ) , Object . defineProperty ( c . Input . prototype , "pollLocked" , { get : function ( ) { return this . pollRate > 0 && this . _pollCounter < this . pollRate } } ) , Object . defineProperty ( c . Input . prototype , "totalInactivePointers" , { get : function ( ) { return this . pointers . length - this . countActivePointers ( ) } } ) , Object . defineProperty ( c . Input . prototype , "totalActivePointers" , { get : function ( ) { return this . countActivePointers ( ) } } ) , Object . defineProperty ( c . Input . prototype , "worldX" , { get : function ( ) { return this . game . camera . view . x + this . x } } ) , Object . defineProperty ( c . Input . prototype , "worldY" , { get : function ( ) { return this . game . camera . view . y + this . y } } ) , c . Mouse = function ( a ) { this . game = a , this . input = a . input , this . callbackContext = this . game , this . mouseDownCallback = null , this . mouseUpCallback = null , this . mouseOutCall
} , isPixelPerfect : function ( ) { return this . pixelPerfectClick || this . pixelPerfectOver } , pointerX : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . x } , pointerY : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . y } , pointerDown : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . isDown } , pointerUp : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . isUp } , pointerTimeDown : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . timeDown } , pointerTimeUp : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . timeUp } , pointerOver : function ( a ) { if ( ! this . enabled ) return ! 1 ; if ( void 0 !== a ) return this . _pointerData [ a ] . isOver ; for ( var b = 0 ; 10 > b ; b ++ ) if ( this . _pointerData [ b ] . isOver ) return ! 0 } , pointerOut : function ( a ) { if ( ! this . enabled ) return ! 1 ; if ( void 0 !== a ) return this . _pointerData [ a ] . isOut ; for ( var b = 0 ; 10 > b ; b ++ ) if ( this . _pointerData [ b ] . isOut ) return ! 0 } , pointerTimeOver : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . timeOver } , pointerTimeOut : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . timeOut } , pointerDragged : function ( a ) { return a = a || 0 , this . _pointerData [ a ] . isDragged } , checkPointerDown : function ( a , b ) { return a . isDown && this . enabled && this . sprite && this . sprite . parent && this . sprite . visible && this . sprite . parent . visible && this . game . input . hitTest ( this . sprite , a , this . _tempPoint ) ? ( void 0 === b && ( b = ! 1 ) , ! b && this . pixelPerfectClick ? this . checkPixel ( this . _tempPoint . x , this . _tempPoint . y ) : ! 0 ) : ! 1 } , checkPointerOver : function ( a , b ) { return this . enabled && this . sprite && this . sprite . parent && this . sprite . visible && this . sprite . parent . visible && this . game . input . hitTest ( this . sprite , a , this . _tempPoint ) ? ( void 0 === b && ( b = ! 1 ) , ! b && this . pixelPerfectOver ? this . checkPixel ( this . _tempPoint . x , this . _tempPoint . y ) : ! 0 ) : ! 1 } , checkPixel : function ( a , b , c ) { if ( this . sprite . texture . baseTexture . source ) { if ( null === a && null === b ) { this . game . input . getLocalPosition ( this . sprite , c , this . _tempPoint ) ; var a = this . _tempPoint . x , b = this . _tempPoint . y } if ( 0 !== this . sprite . anchor . x && ( a -= - this . sprite . texture . frame . width * this . sprite . anchor . x ) , 0 !== this . sprite . anchor . y && ( b -= - this . sprite . texture . frame . height * this . sprite . anchor . y ) , a += this . sprite . texture . frame . x , b += this . sprite . texture . frame . y , this . sprite . texture . trim && ( a -= this . sprite . texture . trim . x , b -= this . sprite . texture . trim . y , a < this . sprite . texture . crop . x || a > this . sprite . texture . crop . right || b < this . sprite . texture . crop . y || b > this . sprite . texture . crop . bottom ) ) return this . _dx = a , this . _dy = b , ! 1 ; this . _dx = a , this . _dy = b , this . game . input . hitContext . clearRect ( 0 , 0 , 1 , 1 ) , this . game . input . hitContext . drawImage ( this . sprite . texture . baseTexture . source , a , b , 1 , 1 , 0 , 0 , 1 , 1 ) ; var d = this . game . input . hitContext . getImageData ( 0 , 0 , 1 , 1 ) ; if ( d . data [ 3 ] >= this . pixelPerfectAlpha ) return ! 0 } return ! 1 } , update : function ( a ) { return null !== this . sprite && void 0 !== this . sprite . parent ? this . enabled && this . sprite . visible && this . sprite . parent . visible ? this . draggable && this . _draggedPointerID === a . id ? this . updateDrag ( a ) : this . _pointerData [ a . id ] . isOver ? this . checkPointerOver ( a ) ? ( this . _pointerData [ a . id ] . x = a . x - this . sprite . x , this . _pointerData [ a . id ] . y = a . y - this . sprite . y , ! 0 ) : ( this . _pointerOutHandler ( a ) , ! 1 ) : void 0 : ( this . _pointerOutHandler ( a ) , ! 1 ) : void 0 } , _pointerOverHandler : function ( a ) { if ( null !== this . sprite ) { var b = this . _pointerData [ a . id ] ; ( b . isOver === ! 1 || a . dirty ) && ( b . isOver = ! 0 , b . isOut = ! 1 , b . timeOver = this . game . time . time , b . x = a . x - this . sprite . x , b . y = a . y - this . sprite . y , this . useHandCursor && b . isDragged === ! 1 && ( this . game . canvas . style . cursor = "pointer" , this . _setHandCursor = ! 0 ) , this . sprite && this . sprite . events && this . sprite . events . onInputOver$dispatch ( this . sprite , a ) ) } } , _pointerOutHandler : function ( a ) { if ( null !== this . sprite ) { var b = this . _pointerData [ a . id ] ; b . isOver = ! 1 , b . isOut = ! 0 , b . timeOut = this . game . time . time , this . useHandCursor && b . isDragged === ! 1 && ( this . game . canvas . style . cursor = "default" , this . _setHandCursor = ! 1 ) , this . sprite && this . sprite . events && this . sprite . events . onInputOut$dispatch ( this . sprite , a ) } } , _touchedHandler : function ( a ) { if ( null !== this . sprite ) { var b = this . _pointerData [ a . id ] ; if ( ! b . isDown && b . isOver ) { if ( this . pixelPerfectClick && ! this . checkPixel ( null , null , a ) ) return ; b . isDown = ! 0 , b . isUp = ! 1 , b . timeDown = this . game . time . time , this . sprite && this . sprite . events && this . sprite . events . onInputDown$dispatch ( this . sprite , a ) , a . dirty = ! 0 , this . draggable && this . isDragged === ! 1 && this . st
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 . slice . call ( arguments , 1 ) , a = new c . Filter [ a ] ( this . game ) ; return a . init . apply ( a , b ) , a } } , c . GameObjectCreator . prototype . constructor = c . GameObjectCreator , c . Sprite = function ( a , b , d , e , f ) { b = b || 0 , d = d || 0 , e = e || null , f = f || null , this . type = c . SPRITE , this . physicsType = c . SPRITE , PIXI . Sprite . call ( this , PIXI . TextureCache . _ _default ) , c . Component . Core . init . call ( this , a , b , d , e , f ) } , c . Sprite . prototype = Object . create ( PIXI . Sprite . prototype ) , c . Sprite . prototype . constructor = c . Sprite , c . Component . Core . install . call ( c . Sprite . prototype , [ "Angle" , "Animation" , "AutoCull" , "Bounds" , "BringToTop" , "Crop" , "Delta" , "Destroy" , "FixedToCamera" , "Health" , "InCamera" , "InputEnabled" , "InWorld" , "LifeSpan" , "LoadTexture" , "Overlap" , "PhysicsBody" , "Reset" , "ScaleMinMax" , "Smoothed" ] ) , c . Sprite . prototype . preUpdatePhysics = c . Component . PhysicsBody . preUpdate , c . Sprite . prototype . preUpdateLifeSpan = c . Component . LifeSpan . preUpdate , c . Sprite . prototype . preUpdateInWorld = c . Component . InWorld . preUpdate , c . Sprite . prototype . preUpdateCore = c . Component . Core . preUpdate , c . Sprite . prototype . preUpdate = function ( ) { return this . preUpdatePhysics ( ) && this . preUpdateLifeSpan ( ) && this . preUpdateInWorld ( ) ? this . preUpdateCore ( ) : ! 1 } , c . Image = function ( a , b , d , e , f ) { b = b || 0 , d = d || 0 , e = e || null , f = f || null , this . type = c . IMAGE , PIXI . Sprite . call ( this , PIXI . TextureCache . _ _default ) , c . Component . Core . init . call ( this , a , b , d , e , f ) } , c . Image . prototype = Object . create ( PIXI . Sprite . prototype ) , c . Image . prototype . constructor = c . Image , c . Component . Core . install . call ( c . Image . prototype , [ "Angle" , "Animation" , "AutoCull" , "Bounds" , "BringToTop" , "Crop" , "Destroy" , "FixedToCamera" , "InputEnabled" , "LifeSpan" , "LoadTexture" , "Overlap" , "Reset" , "Smoothed" ] ) , c . Image . prototype . preUpdateInWorld = c . Component . InWorld . preUpdate , c . Image . prototype . preUpdateCore = c . Component . Core . preUpdate , c . Image . prototype . preUpdate = function ( ) { return this . preUpdateInWorld ( ) ? this . preUpdateCore ( ) : ! 1 } , c . Button = function ( a , b , d , e , f , g , h , i , j , k ) { b = b || 0 , d = d || 0 , e = e || null , f = f || null , g = g || this , c . Image . call ( this , a , b , d , e , i ) , this . type = c . BUTTON , this . physicsType = c . SPRITE , this . _onOverFrame = null , this . _onOutFrame = null , this . _onDownFrame = null , this . _onUpFrame = null , this . onOverSound = null , this . onOutSound = null , this . onDownSound = null , this . onUpSound = null , this . onOverSoundMarker = "" , this . onOutSoundMarker = "" , this . onDownSoundMarker = "" , this . onUpSoundMarker = "" , this . onInputOver = new c . Signal , this . onInputOut = new c . Signal , this . onInputDown = new c . Signal , this . onInputUp = new c . Signal , this . onOverMouseOnly = ! 0 , this . justReleasedPreventsOver = c . PointerMode . TOUCH , this . freezeFrames = ! 1 , this . forceOut = ! 1 , this . inputEnabled = ! 0 , this . input . start ( 0 , ! 0 ) , this . input . useHandCursor = ! 0 , this . setFrames ( h , i , j , k ) , null !== f && this . onInputUp . add ( f , g ) , this . events . onInputOver . add ( this . onInputOverHandler , this ) , this . events . onInputOut . add ( this . onInputOutHandler , this ) , this . events . onInputDown . add ( this . onInputDownHandler , this ) , this . events . onInputUp . add ( this . onInputUpHandler , this ) , this . events . onRemovedFromWorld . add ( this . removedFromWorld , this ) } , c . Button . prototype = Object . create ( c . Image . prototype ) , c . Button . prototype . constructor = c . Button ; var f = "Over" , g = "Out" , h = "Down" , i = "Up" ; c . Button . prototype . clearFrames = function ( ) { this . setFrames ( null , null , null , null ) } , c . Button . prototype . removedFromWorld = function ( ) { this . inputEnabled = ! 1 } , c . Button . prototype . setStateFrame = function ( a , b , c ) { var d = "_on" + a + "Frame" ; null !== b ? ( this [ d ] = b , c && this . changeStateFrame ( a ) ) : this [ d ] = null } , c . Button . prototype . changeStateFrame = function ( a ) { if ( this . freezeFrames ) return ! 1 ; var b = "_on" + a + "Frame" , c = this [ b ] ; return "string" == typeof c ? ( this . frameName = c , ! 0 ) : "number" == typeof c ? ( this . frame = c , ! 0 ) : ! 1 } , c . Button . prototype . setFrames = function ( a , b , c , d ) { this . setStateFrame ( f , a , this . input . pointerOver ( ) ) , this . setStateFrame ( g , b , ! this . input . pointerOver ( ) ) , this . setStateFrame ( h , c , this . input . pointerDown ( ) ) , this . setStateFrame ( i , d , this . input . pointerUp ( ) ) } , c . Button . prototype . setStateSound = function ( a , b , d ) { var e = "on" + a + "Sound" , f = "on" + a + "SoundMarker" ; b instanceof c . Sound || b instanceof c . AudioSprite ? ( this [ e ] = b , this [ f ] = "string" == typeof d ? d : "" ) : ( this [ e ] = null , this [ f ] = "" ) } ,
} , elapsedSecondsSince : function ( a ) { return . 001 * ( this . time - a ) } , reset : function ( ) { this . _started = this . time , this . removeAll ( ) } } , Object . defineProperty ( c . Time . prototype , "desiredFps" , { get : function ( ) { return this . _desiredFps } , set : function ( a ) { this . _desiredFps = a , this . physicsElapsed = 1 / a , this . physicsElapsedMS = 1e3 * this . physicsElapsed , this . desiredFpsMult = 1 / a } } ) , c . Time . prototype . constructor = c . Time , c . Timer = function ( a , b ) { void 0 === b && ( b = ! 0 ) , this . game = a , this . running = ! 1 , this . autoDestroy = b , this . expired = ! 1 , this . elapsed = 0 , this . events = [ ] , this . onComplete = new c . Signal , this . nextTick = 0 , this . timeCap = 1e3 , this . paused = ! 1 , this . _codePaused = ! 1 , this . _started = 0 , this . _pauseStarted = 0 , this . _pauseTotal = 0 , this . _now = Date . now ( ) , this . _len = 0 , this . _marked = 0 , this . _i = 0 , this . _diff = 0 , this . _newTick = 0 } , c . Timer . MINUTE = 6e4 , c . Timer . SECOND = 1e3 , c . Timer . HALF = 500 , c . Timer . QUARTER = 250 , c . Timer . prototype = { create : function ( a , b , d , e , f , g ) { a = Math . round ( a ) ; var h = a ; h += 0 === this . _now ? this . game . time . time : this . _now ; var i = new c . TimerEvent ( this , a , h , d , b , e , f , g ) ; return this . events . push ( i ) , this . order ( ) , this . expired = ! 1 , i } , add : function ( a , b , c ) { return this . create ( a , ! 1 , 0 , b , c , Array . prototype . slice . call ( arguments , 3 ) ) } , repeat : function ( a , b , c , d ) { return this . create ( a , ! 1 , b , c , d , Array . prototype . slice . call ( arguments , 4 ) ) } , loop : function ( a , b , c ) { return this . create ( a , ! 0 , 0 , b , c , Array . prototype . slice . call ( arguments , 3 ) ) } , start : function ( a ) { if ( ! this . running ) { this . _started = this . game . time . time + ( a || 0 ) , this . running = ! 0 ; for ( var b = 0 ; b < this . events . length ; b ++ ) this . events [ b ] . tick = this . events [ b ] . delay + this . _started } } , stop : function ( a ) { this . running = ! 1 , void 0 === a && ( a = ! 0 ) , a && ( this . events . length = 0 ) } , remove : function ( a ) { for ( var b = 0 ; b < this . events . length ; b ++ ) if ( this . events [ b ] === a ) return this . events [ b ] . pendingDelete = ! 0 , ! 0 ; return ! 1 } , order : function ( ) { this . events . length > 0 && ( this . events . sort ( this . sortHandler ) , this . nextTick = this . events [ 0 ] . tick ) } , sortHandler : function ( a , b ) { return a . tick < b . tick ? - 1 : a . tick > b . tick ? 1 : 0 } , clearPendingEvents : function ( ) { for ( this . _i = this . events . length ; this . _i -- ; ) this . events [ this . _i ] . pendingDelete && this . events . splice ( this . _i , 1 ) ; this . _len = this . events . length , this . _i = 0 } , update : function ( a ) { if ( this . paused ) return ! 0 ; if ( this . elapsed = a - this . _now , this . _now = a , this . elapsed > this . timeCap && this . adjustEvents ( a - this . elapsed ) , this . _marked = 0 , this . clearPendingEvents ( ) , this . running && this . _now >= this . nextTick && this . _len > 0 ) { for ( ; this . _i < this . _len && this . running && this . _now >= this . events [ this . _i ] . tick && ! this . events [ this . _i ] . pendingDelete ; ) this . _newTick = this . _now + this . events [ this . _i ] . delay - ( this . _now - this . events [ this . _i ] . tick ) , this . _newTick < 0 && ( this . _newTick = this . _now + this . events [ this . _i ] . delay ) , this . events [ this . _i ] . loop === ! 0 ? ( this . events [ this . _i ] . tick = this . _newTick , this . events [ this . _i ] . callback . apply ( this . events [ this . _i ] . callbackContext , this . events [ this . _i ] . args ) ) : this . events [ this . _i ] . repeatCount > 0 ? ( this . events [ this . _i ] . repeatCount -- , this . events [ this . _i ] . tick = this . _newTick , this . events [ this . _i ] . callback . apply ( this . events [ this . _i ] . callbackContext , this . events [ this . _i ] . args ) ) : ( this . _marked ++ , this . events [ this . _i ] . pendingDelete = ! 0 , this . events [ this . _i ] . callback . apply ( this . events [ this . _i ] . callbackContext , this . events [ this . _i ] . args ) ) , this . _i ++ ; this . events . length > this . _marked ? this . order ( ) : ( this . expired = ! 0 , this . onComplete . dispatch ( this ) ) } return this . expired && this . autoDestroy ? ! 1 : ! 0 } , pause : function ( ) { this . running && ( this . _codePaused = ! 0 , this . paused || ( this . _pauseStarted = this . game . time . time , this . paused = ! 0 ) ) } , _pause : function ( ) { ! this . paused && this . running && ( this . _pauseStarted = this . game . time . time , this . paused = ! 0 ) } , adjustEvents : function ( a ) { for ( var b = 0 ; b < this . events . length ; b ++ ) if ( ! this . events [ b ] . pendingDelete ) { var c = this . events [ b ] . tick - a ; 0 > c && ( c = 0 ) , this . events [ b ] . tick = this . _now + c } var d = this . nextTick - a ; 0 > d ? this . nextTick = this . _now : this . nextTick = this . _now + d } , resume : function ( ) { if ( this . paused ) { var a = this . game . time . time ; this . _pauseTotal += a - this . _now , this . _now = a , this . adjustEvents ( this . _pauseStarted ) , this . paused = ! 1 , this . _codePaused = ! 1 } } , _resume : function ( ) { this . _codePaused || this . resume ( ) } , removeAll : function ( ) { this . onComplete . removeAll ( ) , this . events . length = 0 , this . _len = 0 , this . _i = 0 } , destroy : function
} , removePhysics : function ( a ) { delete this . _cache . physics [ a ] } , removeTilemap : function ( a ) { delete this . _cache . tilemap [ a ] } , removeBinary : function ( a ) { delete this . _cache . binary [ a ] } , removeBitmapData : function ( a ) { delete this . _cache . bitmapData [ a ] } , removeBitmapFont : function ( a ) { delete this . _cache . bitmapFont [ a ] } , removeJSON : function ( a ) { delete this . _cache . json [ a ] } , removeXML : function ( a ) { delete this . _cache . xml [ a ] } , removeVideo : function ( a ) { delete this . _cache . video [ a ] } , removeShader : function ( a ) { delete this . _cache . shader [ a ] } , removeRenderTexture : function ( a ) { delete this . _cache . renderTexture [ a ] } , removeSpriteSheet : function ( a ) { delete this . _cache . spriteSheet [ a ] } , removeTextureAtlas : function ( a ) { delete this . _cache . atlas [ a ] } , clearGLTextures : function ( ) { for ( var a in this . _cache . image ) this . _cache . image [ a ] . base . _glTextures = [ ] } , _resolveURL : function ( a , b ) { return this . autoResolveURL ? ( this . _urlResolver . src = this . game . load . baseURL + a , this . _urlTemp = this . _urlResolver . src , this . _urlResolver . src = "" , b && ( this . _urlMap [ this . _urlTemp ] = b ) , this . _urlTemp ) : null } , destroy : function ( ) { for ( var a = 0 ; a < this . _cacheMap . length ; a ++ ) { var b = this . _cacheMap [ a ] ; for ( var c in b ) "__default" !== c && "__missing" !== c && ( b [ c ] . destroy && b [ c ] . destroy ( ) , delete b [ c ] ) } this . _urlMap = null , this . _urlResolver = null , this . _urlTemp = null } } , c . Cache . prototype . constructor = c . Cache , c . Loader = function ( a ) { this . game = a , this . cache = a . cache , this . resetLocked = ! 1 , this . isLoading = ! 1 , this . hasLoaded = ! 1 , this . preloadSprite = null , this . crossOrigin = ! 1 , this . baseURL = "" , this . path = "" , this . onLoadStart = new c . Signal , this . onLoadComplete = new c . Signal , this . onPackComplete = new c . Signal , this . onFileStart = new c . Signal , this . onFileComplete = new c . Signal , this . onFileError = new c . Signal , this . useXDomainRequest = ! 1 , this . _warnedAboutXDomainRequest = ! 1 , this . enableParallel = ! 0 , this . maxParallelDownloads = 4 , this . _withSyncPointDepth = 0 , this . _fileList = [ ] , this . _flightQueue = [ ] , this . _processingHead = 0 , this . _fileLoadStarted = ! 1 , this . _totalPackCount = 0 , this . _totalFileCount = 0 , this . _loadedPackCount = 0 , this . _loadedFileCount = 0 } , c . Loader . TEXTURE _ATLAS _JSON _ARRAY = 0 , c . Loader . TEXTURE _ATLAS _JSON _HASH = 1 , c . Loader . TEXTURE _ATLAS _XML _STARLING = 2 , c . Loader . PHYSICS _LIME _CORONA _JSON = 3 , c . Loader . PHYSICS _PHASER _JSON = 4 , c . Loader . TEXTURE _ATLAS _JSON _PYXEL = 5 , c . Loader . prototype = { setPreloadSprite : function ( a , b ) { b = b || 0 , this . preloadSprite = { sprite : a , direction : b , width : a . width , height : a . height , rect : null } , 0 === b ? this . preloadSprite . rect = new c . Rectangle ( 0 , 0 , 1 , a . height ) : this . preloadSprite . rect = new c . Rectangle ( 0 , 0 , a . width , 1 ) , a . crop ( this . preloadSprite . rect ) , a . visible = ! 0 } , resize : function ( ) { this . preloadSprite && this . preloadSprite . height !== this . preloadSprite . sprite . height && ( this . preloadSprite . rect . height = this . preloadSprite . sprite . height ) } , checkKeyExists : function ( a , b ) { return this . getAssetIndex ( a , b ) > - 1 } , getAssetIndex : function ( a , b ) { for ( var c = - 1 , d = 0 ; d < this . _fileList . length ; d ++ ) { var e = this . _fileList [ d ] ; if ( e . type === a && e . key === b && ( c = d , ! e . loaded && ! e . loading ) ) break } return c } , getAsset : function ( a , b ) { var c = this . getAssetIndex ( a , b ) ; return c > - 1 ? { index : c , file : this . _fileList [ c ] } : ! 1 } , reset : function ( a , b ) { void 0 === b && ( b = ! 1 ) , this . resetLocked || ( a && ( this . preloadSprite = null ) , this . isLoading = ! 1 , this . _processingHead = 0 , this . _fileList . length = 0 , this . _flightQueue . length = 0 , this . _fileLoadStarted = ! 1 , this . _totalFileCount = 0 , this . _totalPackCount = 0 , this . _loadedPackCount = 0 , this . _loadedFileCount = 0 , b && ( this . onLoadStart . removeAll ( ) , this . onLoadComplete . removeAll ( ) , this . onPackComplete . removeAll ( ) , this . onFileStart . removeAll ( ) , this . onFileComplete . removeAll ( ) , this . onFileError . removeAll ( ) ) ) } , addToFileList : function ( a , b , c , d , e , f ) { if ( void 0 === e && ( e = ! 1 ) , void 0 === b || "" === b ) return console . warn ( "Phaser.Loader: Invalid or no key given of type " + a ) , this ; if ( void 0 === c || null === c ) { if ( ! f ) return console . warn ( "Phaser.Loader: No URL given for file type: " + a + " key: " + b ) , this ; c = b + f } var g = { type : a , key : b , path : this . path , url : c , syncPoint : this . _withSyncPointDepth > 0 , data : null , loading : ! 1 , loaded : ! 1 , error : ! 1 } ; if ( d ) for ( var h in d ) g [ h ] = d [ h ] ; var i = this . getAssetIndex ( a , b ) ; if ( e && i > - 1 ) { var j = this . _fileList [ i ] ; j . loading || j . loaded ? ( this . _fileList . push ( g ) , this . _totalFileCount ++ ) : this . _fileList [ i ] = g } else - 1 === i && ( this . _fileList
this . _updateThrottle = this . trackParentInterval } , updateDimensions : function ( a , b , c ) { this . width = a * this . parentScaleFactor . x , this . height = b * this . parentScaleFactor . y , this . game . width = this . width , this . game . height = this . height , this . sourceAspectRatio = this . width / this . height , this . updateScalingAndBounds ( ) , c && ( this . game . renderer . resize ( this . width , this . height ) , this . game . camera . setSize ( this . width , this . height ) , this . game . world . resize ( this . width , this . height ) ) } , updateScalingAndBounds : function ( ) { this . scaleFactor . x = this . game . width / this . width , this . scaleFactor . y = this . game . height / this . height , this . scaleFactorInversed . x = this . width / this . game . width , this . scaleFactorInversed . y = this . height / this . game . height , this . aspectRatio = this . width / this . height , this . game . canvas && this . dom . getOffset ( this . game . canvas , this . offset ) , this . bounds . setTo ( this . offset . x , this . offset . y , this . width , this . height ) , this . game . input && this . game . input . scale && this . game . input . scale . setTo ( this . scaleFactor . x , this . scaleFactor . y ) } , forceOrientation : function ( a , b ) { void 0 === b && ( b = ! 1 ) , this . forceLandscape = a , this . forcePortrait = b , this . queueUpdate ( ! 0 ) } , classifyOrientation : function ( a ) { return "portrait-primary" === a || "portrait-secondary" === a ? "portrait" : "landscape-primary" === a || "landscape-secondary" === a ? "landscape" : null } , updateOrientationState : function ( ) { var a = this . screenOrientation , b = this . incorrectOrientation ; this . screenOrientation = this . dom . getScreenOrientation ( this . compatibility . orientationFallback ) , this . incorrectOrientation = this . forceLandscape && ! this . isLandscape || this . forcePortrait && ! this . isPortrait ; var c = a !== this . screenOrientation , d = b !== this . incorrectOrientation ; return d && ( this . incorrectOrientation ? this . enterIncorrectOrientation . dispatch ( ) : this . leaveIncorrectOrientation . dispatch ( ) ) , ( c || d ) && this . onOrientationChange . dispatch ( this , a , b ) , c || d } , orientationChange : function ( a ) { this . event = a , this . queueUpdate ( ! 0 ) } , windowResize : function ( a ) { this . event = a , this . queueUpdate ( ! 0 ) } , scrollTop : function ( ) { var a = this . compatibility . scrollTo ; a && window . scrollTo ( a . x , a . y ) } , refresh : function ( ) { this . scrollTop ( ) , this . queueUpdate ( ! 0 ) } , updateLayout : function ( ) { var a = this . currentScaleMode ; if ( a === c . ScaleManager . RESIZE ) return void this . reflowGame ( ) ; if ( this . scrollTop ( ) , this . compatibility . forceMinimumDocumentHeight && ( document . documentElement . style . minHeight = window . innerHeight + "px" ) , this . incorrectOrientation ? this . setMaximum ( ) : a === c . ScaleManager . EXACT _FIT ? this . setExactFit ( ) : a === c . ScaleManager . SHOW _ALL ? ! this . isFullScreen && this . boundingParent && this . compatibility . canExpandParent ? ( this . setShowAll ( ! 0 ) , this . resetCanvas ( ) , this . setShowAll ( ) ) : this . setShowAll ( ) : a === c . ScaleManager . NO _SCALE ? ( this . width = this . game . width , this . height = this . game . height ) : a === c . ScaleManager . USER _SCALE && ( this . width = this . game . width * this . _userScaleFactor . x - this . _userScaleTrim . x , this . height = this . game . height * this . _userScaleFactor . y - this . _userScaleTrim . y ) , ! this . compatibility . canExpandParent && ( a === c . ScaleManager . SHOW _ALL || a === c . ScaleManager . USER _SCALE ) ) { var b = this . getParentBounds ( this . _tempBounds ) ; this . width = Math . min ( this . width , b . width ) , this . height = Math . min ( this . height , b . height ) } this . width = 0 | this . width , this . height = 0 | this . height , this . reflowCanvas ( ) } , getParentBounds : function ( a ) { var b = a || new c . Rectangle , d = this . boundingParent , e = this . dom . visualBounds , f = this . dom . layoutBounds ; if ( d ) { var g = d . getBoundingClientRect ( ) , h = d . offsetParent ? d . offsetParent . getBoundingClientRect ( ) : d . getBoundingClientRect ( ) ; b . setTo ( g . left - h . left , g . top - h . top , g . width , g . height ) ; var i = this . windowConstraints ; if ( i . right ) { var j = "layout" === i . right ? f : e ; b . right = Math . min ( b . right , j . width ) } if ( i . bottom ) { var j = "layout" === i . bottom ? f : e ; b . bottom = Math . min ( b . bottom , j . height ) } } else b . setTo ( 0 , 0 , e . width , e . height ) ; return b . setTo ( Math . round ( b . x ) , Math . round ( b . y ) , Math . round ( b . width ) , Math . round ( b . height ) ) , b } , alignCanvas : function ( a , b ) { var c = this . getParentBounds ( this . _tempBounds ) , d = this . game . canvas , e = this . margin ; if ( a ) { e . left = e . right = 0 ; var f = d . getBoundingClientRect ( ) ; if ( this . width < c . width && ! this . incorrectOrientation ) { var g = f . left - c . x , h = c . width / 2 - this . width / 2 ; h = Math . max ( h , 0 ) ; var i = h - g ; e . left = Math . round ( i ) } d . style . marginLeft = e . left + "px" , 0 !== e . left && ( e . right = - ( c . width
} , getAlpha : function ( a ) { return a >>> 24 } , getAlphaFloat : function ( a ) { return ( a >>> 24 ) / 255 } , getRed : function ( a ) { return a >> 16 & 255 } , getGreen : function ( a ) { return a >> 8 & 255 } , getBlue : function ( a ) { return 255 & a } , blendNormal : function ( a ) { return a } , blendLighten : function ( a , b ) { return b > a ? b : a } , blendDarken : function ( a , b ) { return b > a ? a : b } , blendMultiply : function ( a , b ) { return a * b / 255 } , blendAverage : function ( a , b ) { return ( a + b ) / 2 } , blendAdd : function ( a , b ) { return Math . min ( 255 , a + b ) } , blendSubtract : function ( a , b ) { return Math . max ( 0 , a + b - 255 ) } , blendDifference : function ( a , b ) { return Math . abs ( a - b ) } , blendNegation : function ( a , b ) { return 255 - Math . abs ( 255 - a - b ) } , blendScreen : function ( a , b ) { return 255 - ( ( 255 - a ) * ( 255 - b ) >> 8 ) } , blendExclusion : function ( a , b ) { return a + b - 2 * a * b / 255 } , blendOverlay : function ( a , b ) { return 128 > b ? 2 * a * b / 255 : 255 - 2 * ( 255 - a ) * ( 255 - b ) / 255 } , blendSoftLight : function ( a , b ) { return 128 > b ? 2 * ( ( a >> 1 ) + 64 ) * ( b / 255 ) : 255 - 2 * ( 255 - ( ( a >> 1 ) + 64 ) ) * ( 255 - b ) / 255 } , blendHardLight : function ( a , b ) { return c . Color . blendOverlay ( b , a ) } , blendColorDodge : function ( a , b ) { return 255 === b ? b : Math . min ( 255 , ( a << 8 ) / ( 255 - b ) ) } , blendColorBurn : function ( a , b ) { return 0 === b ? b : Math . max ( 0 , 255 - ( 255 - a << 8 ) / b ) } , blendLinearDodge : function ( a , b ) { return c . Color . blendAdd ( a , b ) } , blendLinearBurn : function ( a , b ) { return c . Color . blendSubtract ( a , b ) } , blendLinearLight : function ( a , b ) { return 128 > b ? c . Color . blendLinearBurn ( a , 2 * b ) : c . Color . blendLinearDodge ( a , 2 * ( b - 128 ) ) } , blendVividLight : function ( a , b ) { return 128 > b ? c . Color . blendColorBurn ( a , 2 * b ) : c . Color . blendColorDodge ( a , 2 * ( b - 128 ) ) } , blendPinLight : function ( a , b ) { return 128 > b ? c . Color . blendDarken ( a , 2 * b ) : c . Color . blendLighten ( a , 2 * ( b - 128 ) ) } , blendHardMix : function ( a , b ) { return c . Color . blendVividLight ( a , b ) < 128 ? 0 : 255 } , blendReflect : function ( a , b ) { return 255 === b ? b : Math . min ( 255 , a * a / ( 255 - b ) ) } , blendGlow : function ( a , b ) { return c . Color . blendReflect ( b , a ) } , blendPhoenix : function ( a , b ) { return Math . min ( a , b ) - Math . max ( a , b ) + 255 } } , c . Physics = function ( a , b ) { b = b || { } , this . game = a , this . config = b , this . arcade = null , this . p2 = null , this . ninja = null , this . box2d = null , this . chipmunk = null , this . matter = null , this . parseConfig ( ) } , c . Physics . ARCADE = 0 , c . Physics . P2JS = 1 , c . Physics . NINJA = 2 , c . Physics . BOX2D = 3 , c . Physics . CHIPMUNK = 4 , c . Physics . MATTERJS = 5 , c . Physics . prototype = { parseConfig : function ( ) { this . config . hasOwnProperty ( "arcade" ) && this . config . arcade !== ! 0 || ! c . Physics . hasOwnProperty ( "Arcade" ) || ( this . arcade = new c . Physics . Arcade ( this . game ) ) , this . config . hasOwnProperty ( "ninja" ) && this . config . ninja === ! 0 && c . Physics . hasOwnProperty ( "Ninja" ) && ( this . ninja = new c . Physics . Ninja ( this . game ) ) , this . config . hasOwnProperty ( "p2" ) && this . config . p2 === ! 0 && c . Physics . hasOwnProperty ( "P2" ) && ( this . p2 = new c . Physics . P2 ( this . game , this . config ) ) , this . config . hasOwnProperty ( "box2d" ) && this . config . box2d === ! 0 && c . Physics . hasOwnProperty ( "BOX2D" ) && ( this . box2d = new c . Physics . BOX2D ( this . game , this . config ) ) , this . config . hasOwnProperty ( "matter" ) && this . config . matter === ! 0 && c . Physics . hasOwnProperty ( "Matter" ) && ( this . matter = new c . Physics . Matter ( this . game , this . config ) ) } , startSystem : function ( a ) { a === c . Physics . ARCADE ? this . arcade = new c . Physics . Arcade ( this . game ) : a === c . Physics . P2JS ? null === this . p2 ? this . p2 = new c . Physics . P2 ( this . game , this . config ) : this . p2 . reset ( ) : a === c . Physics . NINJA ? this . ninja = new c . Physics . Ninja ( this . game ) : a === c . Physics . BOX2D ? null === this . box2d ? this . box2d = new c . Physics . Box2D ( this . game , this . config ) : this . box2d . reset ( ) : a === c . Physics . MATTERJS && ( null === this . matter ? this . matter = new c . Physics . Matter ( this . game , this . config ) : this . matter . reset ( ) ) } , enable : function ( a , b , d ) { void 0 === b && ( b = c . Physics . ARCADE ) , void 0 === d && ( d = ! 1 ) , b === c . Physics . ARCADE ? this . arcade . enable ( a ) : b === c . Physics . P2JS && this . p2 ? this . p2 . enable ( a , d ) : b === c . Physics . NINJA && this . ninja ? this . ninja . enableAABB ( a ) : b === c . Physics . BOX2D && this . box2d ? this . box2d . enable ( a ) : b === c . Physics . MATTERJS && this . matter && this . matter . enable ( a ) } , preUpdate : function ( ) { this . p2 && this . p2 . preUpdate ( ) , this . box2d && this . box2d . preUpdate ( ) , this . matter && this . matter . preUpdate ( ) } , update : function ( ) { this . p2 && this . p2 . update ( ) , this . box2d && this . box2d . update ( ) , this . matter && this . matter . update ( ) } , setBoundsToWorld : function ( ) { this . arcade && this . arcade . setBoundsToWorld ( ) , this . ninja && this . ninja . setBoundsToWorld ( ) , this . p2 && this . p2 . setBo
2015-02-25 02:59:00 +00:00
//# sourceMappingURL=phaser-minimum.map