太空狗闪躲陨石
这篇文章会介绍,如何在 Scratch 里使用键盘侦测、角色移动、分身、重复无限次、逻辑、碰到分身...等积木,实作键盘控制角色移动闪躲陨石的小游戏。
角色设定
在角色编辑区,删除猫咪角色,加入“太空狗”角色 ( 参考:Scratch 角色设定 )。
另外一个角色,使用绘画,绘制陨石的图案 ( 参考:造型与绘图 )。
完成后,在角色区域应该就能看到太空狗和陨石两个角色。
再来将舞台背景更换成宇宙星空的背景,舞台上就能看到太空狗和陨石,出现在宇宙里中。
积木程序原理 ( 太空狗 )
设定太空狗出现在舞台正中央 (0,0),并调整大小为 60%,接着参考 惯性移动 ( 键盘 ) 一文,将太空狗设定成可以用键盘控制上下左右,并具备“惯性移动”的特性 ( 放开键盘时逐渐减速 )。
点击绿旗,就能用键盘操控太空狗,放开键盘时会有惯性地减速效果。
积木程序原理 ( 陨石 )
因为闪躲陨石的游戏会不断有陨石出现,所以使用重复无限次积木,每隔一秒建立一个陨石分身。
因为希望陨石都是从舞台的四个边缘出现 ( 画面中突然蹦出一个陨石是满不合理的 ),所以使用一个 1~4 的随机数,定义陨石出现位置,如果是 1,就设定 x 为 -220~220 的随机数字,设定 y 为 -160,陨石就会从舞台下面出现,依此类推。
为了避免待会和侦测边缘碰撞互相干扰,设定的数字比舞台座标还要小,例如舞台左侧为 -240,陨石就设定 -220,舞台上缘为 180,陨石的 y 就设定 160。
使用“面朝...向”的积木,使陨石出现时,朝着太空狗的方向,接着使用重复无限次积木,让陨石往太空狗方向移动,使用“如果...那么”积木,判断碰到边缘或碰到太空狗的时候,就删除分身。
完成效果
完成后,点击绿旗,就会看到陨石不断出现,同时可以用键盘操控太空狗闪躲陨石。
最后在陨石的角色加入“被撞到”的变数,在碰到太空狗的时候,让变数改变 1,就能计算被撞到几次了。
注意,为什么要加在“陨石”角色呢?因为如果将判断程序加在太空狗,会因为“碰到太空狗”的时候陨石分身消失,造成没有判断碰撞的情形,所以将判断放在陨石角色会比较简单好处理。
范例解答
范例解答:闪躲陨石
延伸练习
如果已经熟悉了闪躲陨石的原理,还可以尝试更多好玩的作法:
改成碰到陨石,太空狗会扣血量,扣完了就会出现 Game Over 的背景。( 解答 )
微信扫码关注
抖音扫码关注