⑥游戏暂停阶段
当鼠标移出画布即暂停
当鼠标移入画布即开始
// 暂停状态 pause
canvas.onmouseout = function () {
if (state === running) {
state = pause;
}
};
canvas.onmouseover = function () {
if (state === pause) {
state = running;
}
};
⑦游戏结束阶段
// 结束图片
var pic = new Image();
pic.src = "./img/game_pause_nor.png";
// 结束状态 over
function over1() {
ctx.textAlign = "center";
ctx.font = "60px 微软雅黑 bold ";
ctx.fillText("游戏结束", 250, 500);
}
在定时器中绘制图像
// 在定时器中绘制图像
var timer = setInterval(function () {
bgObj.paint();
bgObj.sport();
// logoObj.paint();
if (state == ready) {
ctx.drawImage(logo, 0, 0, 480, 852);
} else if (state === loading) {
// 绘制进场图片
loadingObj.paint();
loadingObj.sport();
} else if (state === running) {
heroObj.paint();
heroObj.sport();
heroObj.shoot();
// 绘制子弹
// bulletObj.paint();
// bulletObj.sport();
bulletsPaint();
bulletsSport();
// 绘制敌机
pushEnemy();
enemyPaint();
checkHit();
enemyDelete();
// 分数
score1();
// 生命值
life1();
} else if (state === pause) {
bgObj.paint();
bgObj.sport();
heroObj.paint();
bulletsPaint();
enemyStop();
score1();
life1();
ctx.drawImage(pic, 250, 500);
} else if (state === over) {
heroObj.paint();
over1();
}
}, 60);