If you're seeing this message, it means we're having trouble loading external resources on our website.

如果你被网页过滤器挡住,请确保域名*.kastatic.org*.kasandbox.org 没有被阻止.

主要内容

海狸的字符

让我们先创建我们的角色,调皮海狸。我们将使用面向对象的设计(在 这个教程 中可以学习)来描述我们的海狸角色。
在创建游戏角色时,我们应该考虑它应该具有哪些属性和行为。例如,我们的海狸应该记录自己的 xy 位置以及她收集了多少树枝。她还需要两种行为:hop,让她跳起来一些;fall,让她下降一些。
作为一个对象,海狸可能长这样:
这个程序不能很好地检查不同的行为——它不是动态的,所以我们只能看到海狸的一种状态。让我们添加一个 draw 函数,这样我们就可以告诉海狸去根据用户交互做不同的事情。在这个游戏中,我们希望海狸能在用户按空格键时跳起来。这可以很简单地实现:
draw = function() {
    background(255, 255, 255);
    if (keyIsPressed && key.code === 32) {
        beaver.hop();
    } else {
        beaver.fall();
    }
    beaver.draw();
};
这段代码很有效,但如果我们运行它,我们必须不断地按下空格键,以防止海狸从画布上掉下去而永远不会回来。我们应该将 y 的值限制在一个合理的值,以保证海狸永远在屏幕上。将角色留在“游戏世界”中,这在游戏中很常见。我们可以通过在绘制函数中使用 constrain ,将合适的min(最小值)和max(最大值)传递给它:
 this.y = constrain(this.y, 0, height-50);
现在,下面就是我们的程序,可以通过键盘控制海狸的跳跃和下降。玩一下吧!

想加入讨论吗?

尚无帖子。
你会英语吗?单击此处查看更多可汗学院英文版的讨论.