Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
The ungame creates a Game instance and reimplements paintUnderSprites() and paintOverSprites(). The ungame doesn’t have any sprites, but the game engine invokes paintUnderSprites() and paintOverSprites() anyway, as shown in Example 9.11.
Example 9.11. Painting over and under sprites
var game = new Game('ungame', 'gameCanvas'),
...
game.paintOverSprites = function () {
paintNearCloud(game.context, 120, 20);
paintNearCloud(game.context, game.context.canvas.width+120, 20);
};
game.paintUnderSprites = function () {
// Background erased by game engine's clearScreen()
if (!gameOver && livesLeft === 0) {
over();
}
else {
paintSun(game.context);
paintFarCloud(game.context, 20, 20);
paintFarCloud(game.context, game.context.canvas.width+20, 20);
if (!gameOver) {
updateScore();
}
updateLivesDisplay();
}
};
...
game.start();