// Light sprite class enyo.kind({ name: "Sprite", published: { x: 0, y: 0, heading: 0, power: 0, images: [], engine: null }, // Create component create: function() { this.inherited(arguments); }, // Draw the sprite in the canvas context draw: function(ctx) { ctx.save(); ctx.translate(this.x*constant.tileSize, this.y*constant.tileSize); var image = document.getElementById(this.getCurrentImage()); ctx.drawImage(image, 0, 0); if (this.value !== undefined) { ctx.font="29px Arial"; ctx.strokeStyle="#000000"; var x = (constant.tileSize - ctx.measureText(this.value.tag).width)/2; ctx.strokeText(this.value.tag, x, 50); ctx.fillStyle="#FFFF00"; ctx.fillText(this.value.tag, x+2, 51); } ctx.restore(); }, // Get current image of the sprite getCurrentImage: function() { return this.images[this.heading < this.images.length ? this.heading : 0]; } });