Phaser.Sprite = function (game, x, y, key, frame){ x = x || 0; y = y || 0; key = key || null ; frame = frame || null ; this.type = Phaser.SPRITE; this.physicsType = Phaser.SPRITE; PIXI.Sprite.call(this, Phaser.Cache.DEFAULT); Phaser.Component.Core.init.call(this, game, x, y, key, frame); } ; Phaser.Sprite.prototype = Object.create(PIXI.Sprite.prototype); Phaser.Sprite.prototype.constructor = Phaser.Sprite; Phaser.Component.Core.install.call(Phaser.Sprite.prototype, ['Angle', 'Animation', 'AutoCull', 'Bounds', 'BringToTop', 'Crop', 'Delta', 'Destroy', 'FixedToCamera', 'Health', 'InCamera', 'InputEnabled', 'InWorld', 'LifeSpan', 'LoadTexture', 'Overlap', 'PhysicsBody', 'Reset', 'ScaleMinMax', 'Smoothed'] ); Phaser.Sprite.prototype.preUpdatePhysics = Phaser.Component.PhysicsBody.preUpdate; Phaser.Sprite.prototype.preUpdateLifeSpan = Phaser.Component.LifeSpan.preUpdate; Phaser.Sprite.prototype.preUpdateInWorld = Phaser.Component.InWorld.preUpdate; Phaser.Sprite.prototype.preUpdateCore = Phaser.Component.Core.preUpdate; Phaser.Sprite.prototype.preUpdate = function (){ if (!this.preUpdatePhysics() || !this.preUpdateLifeSpan() || !this.preUpdateInWorld()) { return false ; } return this.preUpdateCore(); } ;