在学习JavaScript编写贪吃蛇游戏之前,需要掌握以下的前置知识:
var game = {
canvas: document.getElementById('snake_canvas'),
ctx: null,
cells: [],
cellSide: 10,
score: 0, // 游戏得分
interval: null, // 定时器
direction: 'right' // 蛇的初始方向
};
game.ctx = game.canvas.getContext('2d');
在游戏中,我们首先需要创建一个画布。在HTML中通过canvas标签创建画布,并通过CSS设置好画布的基本宽、高和样式:
<canvas id="snake_canvas" width="600" height="400"></canvas>
然后在JavaScript代码中获取到该画布,保存到一个变量中:
var game = {
canvas: document.getElementById('snake_canvas'),
ctx: null
};
game.ctx = game.canvas.getContext('2d');
在游戏中,我们需要在画布上绘制蛇。最初的时候,蛇是一个方格,其初始位置出现在游戏画布的中间位置。
for (var i = 0; i < 5; i++) {
game.cells.push({
x: 10 * i + 5,
y: 195
});
}
变量game.cells
维护着蛇的所有组成部分,每个组成部分是一个方格,用一个x
和y
坐标表示。上面的代码初始化了一个长度为5的蛇,并储存在game.cells数组中。
后续,我们会在canvas上对整个游戏进行重新渲染,每当蛇向前移动一步,我们就添加一个新的头部方块并删除最后一个方块从而形成蠕动效果。