带孩子玩Scratch编程:学龄前趣味程序(18)

上一集

(18) 草船借箭

Scratch草船借箭

程序目标描述

诸葛亮和鲁肃驾驶着“草船”驶向江对岸的曹营,企图引诱曹军将箭只射到草船上。不过这个故事有一个 bug,万一曹军射来的是火箭岂不糟糕。在这集游戏里,“草船”会紧跟着玩家的鼠标上下移动,玩家要让“草船”躲避带火的箭只(否则中箭后船将变小,代表战斗减员…),并尽可能多地接收不带火的普通箭只。最后看看能否“借”到10万只箭。

场景布置

舞台背景:Scratch 内置的 City With Water —— 抱歉这个背景里还有摩天大厦。

添加角色:Sailboat、Wand。

并在 Wand 的“造型”活页中,创建一只火箭造型:

Scratch草船借箭第1步

方法是,在左侧造型浏览栏里,在唯一的 wand 造型上点右键、“复制”,之后将产生一个复制出来的“造型2”。之后,在编辑器中,自行画上火焰,如上图。并将造型名称设定为“wand2”。

代码搭建

Scratch草船借箭第2步

Scratch草船借箭第3步

运行

自己玩吧。

讲解

普通箭、火箭,是同一个角色的两种不同造型。因此,要想判断射中船的是普通箭还是火箭,我们需要知道当前造型的名称(或编号);在这里,我们用了“广播(造型[名称])”的方法。对于普通箭射中小船的情况,会广播一个叫“wand”的消息;对于火箭射中小船的情况,会广播一个叫“wand2”的消息。在小船的代码中,有不同的消息侦听程序处理这两种事件。

发表评论

电子邮件地址不会被公开。