重新启动画布 JavaScript
Restart canvas javascript
w3schools链接上有一个HTML5游戏教程
我正在尝试在画布下方添加一个按钮以重新启动游戏:
<button onmouseup="startGame()">Restart</button>
并在 for 循环中添加一个清除函数:
for (i = 0; i < myObstacles.length; i += 1) {
if (myGamePiece.crashWith(myObstacles[i])) {
myGameArea.stop();
myGameArea.clear();
return;
}
}
所以它清除了画布。
问题是函数 startGame() 不想再次启动游戏。问题出在哪里?
问候
这是我所做的:
<button onmousedown="restart()">Restart</button>
然后我定义了一个名为 restart
的新函数:
function restart() {
myGameArea.stop();
myGameArea.clear();
startGame();
}
它现在应该重新启动,但前作的障碍仍然存在。要解决此问题,您需要在重新启动游戏之前清除myObstacles
数组。我是这样做的:
function startGame() {
myGamePiece = new component(30, 30, "red", 10, 120);
myObstacles = []; // it is very important to do this before starting the game
myGameArea.start();
}
在这里工作:https://jsfiddle.net/11wrorox/
相关文章:
- JavaScript动画从不执行
- 最小化时暂停Javascript动画
- 多个链接的Javascript动画
- 使用 JavaScript 动画通过箭头键移动矩形
- javascript动画不适用于chrome和IE
- Javascript动画不稳定
- 即使在另一个选项卡中,也要继续使用Javascript动画
- 小型JavaScript动画集成
- 我应该如何对这个简单的javascript动画进行逆向工程
- JAVASCRIPT-动画块消失,就像它出现时一样
- Javascript动画的行为不符合预期
- 在javascript动画中创建许多类似的元素
- Javascript动画计时
- 如何让javascript动画在href运行之前完成
- 用于Javascript动画的工具
- Javascript动画和360度图像
- JavaScript-动画形状在HTML5<画布>
- 我可以't在时间上限制javascript动画
- 如何使用javascript动画化graphviz
- JavaScript动画运动