Game over
这是Gamedev Phaser 教程 16 的第 8 步。在Gamedev-Phaser-Content-Kit / demos / lesson08.html完成本课后,你可以找到源代码。
为了使游戏更有趣,我们可以引入失去的能力 - 如果在到达屏幕底部边缘之前没有击球,那么这个游戏将会结束。
如何输
为了提供丢失的能力,我们将禁用球与屏幕底部的碰撞。在create()
函数内添加下面的代码; 刚刚定义球的属性就好了:
js
game.physics.arcade.checkCollision.down = false;
这将使三个墙壁(顶部,左侧和右侧)弹回球,但是第四个(底部)将消失,如果桨错过,则球从屏幕上脱落。我们需要一种方法来检测并相应地采取行动。在以前的新的下方添加以下行:
js
ball.checkWorldBounds = true;
ball.events.onOutOfBounds.add(function () {
alert("Game over!");
location.reload();
}, this);
添加这些行将使得球检查世界(在我们的例子中是画布)边界并执行绑定到onOutOfBounds
事件的函数。当你点击生成的警报时,页面将被重新加载,以便你可以再次播放。
比较你的代码
你可以在下面的现场演示中查看本课程的完成代码,并使用它来更好地了解它的工作原理: