搞笑
小偷程序(Scratch创意编程六:抓小偷)

视频加载中...

为了不被动物保护人士殴打,这次我们把游戏改成抓小偷的游戏。

游戏制作步骤:

  1. 这次终于不用删除可怜的小猫了,这次我们选他为主角

3.编写小猫脚本1——初始化小猫的大小和位置

鼠标左键按住小猫,隐含了两个条件,即鼠标的坐标在小猫角色图片的坐标范围内,和鼠标左键被按下。

鼠标移到舞台区域内,右下角会显示鼠标此时的坐标值。

将鼠标移到小猫角色的坐标范围内,记录X坐标的最小值和最大值、Y坐标的最小值和最大值。本例中小猫的X坐标范围为[-220,-167]、Y坐标范围为[-125,-65]。脚本如下:

5.新建角色——小球

新建一个用于击打小偷的小球。

6.编写小球脚本1——初始化小球的大小和位置

7.新建角色——蓄力框

蓄力框需要绘制。

8.新建角色——蓄力条

蓄力条同样需要绘制。

9.编写蓄力框脚本1——初始化蓄力框位置

应该固定,不能乱跑,所以需要固定蓄力框的位置

10.编写蓄力条脚本1——初始化蓄力条位置

蓄力条的位置和蓄力框的位置一样,需要初始化

11.编写蓄力框脚本2——按住小猫时显示,松开鼠标隐藏

按住小猫的判定与小猫角色的脚本相似,为了节省工作量,可以将脚本复制过来。

在小猫脚本的基础上做个修改,实现按住小猫蓄力框出现,松开鼠标左键蓄力框消失。

蓄力条的变长需要用到“画笔”相关指令。

使用“图章”指令和“移动”指令,便可实现蓄力条变长的效果。

“清空”指令可以将所有留在舞台上的图章清除。

从演示效果看出以上程序还不够,蓄力条应该和蓄力框一样在按住小猫时出现,其他时候消失,同时,每次按住小猫开始时,位置应该从蓄力框最左侧开始变长。所以脚本应为:

小球被抛出的轨迹应该是抛物线,但是抛物线的方程过于复杂,大家可以尝试的去挑战。本例中用圆弧代替。

现实中,绘制圆形最简单的方法是用圆规绘制,首选确定圆的半径,再选取圆心,最后转动圆规,绘制圆形。

用程序绘制圆形,最简单的方法是用正多边形逼近的方式绘制圆形。

为了讲解如何绘制一个圆形,使用空的模板,插入一个角色“Pencil”,配合“落笔”指令,绘制多边形。

先绘制我们比较熟悉的正四边形:

绘制正十边形

正十边形是不是比正四边形更像一个圆了?如果绘制正30边形呢?

为了画笔轨迹不超出舞台范围,边长改为30

这个正30边形是不是已经很像一个圆了?

会到小球的脚本,小球从小猫手中抛出。首先有一个初始角度,之后每移动几步,角度向右转动几度,这样便可以形成一个圆弧的轨迹。

游戏中的轨迹是与蓄力的多少相关的,所以需要增加一个“力量”变量。

(2) 角度值随力量值变化,即当力量值为100时,角度值为20;当力量值为0时,角度值为80。所以角度值=80-(60/100)×力量值。

角色库中没有合适的小偷形象,感谢我们的美女画师为本游戏原创设计的小偷角色。

被发现的小偷

据说小偷的形象是以笔者为原型的,大家自己脑补,哈哈~

将小偷角色调整到合适的大小,移动到舞台右侧街道上,造型为“得意的小偷”。

17.编写小球脚本4——广播消息

Scratch为不同角色之间的信息传递提供了“广播”的相关模块,位于“事件”类目中。

“广播(信息)”指令运行一次,便发出一次广播,其他角色脚本中由“当接收到(广播信息)”事件触发的脚本便运行一次。

所以,当小球碰到小偷时,发出一次“击中”广播;当小球碰到舞台边缘时,发出一次“没击中”广播。小球的脚本变为:

18.编写小偷脚本2——接收广播消息

如果小偷被击中,造型切换为“被发现的小偷”,说“哎呀”1秒钟,之后造型切换回“小偷”。如果小偷没被击中,造型不变,说“没打中!”1秒钟。

19.编写小偷脚本3——血量设定

反复这样打中和没打中,着实无趣,为了让美女画师画的“扑街的小偷”不浪费,必须要让小偷扑街。

本游戏设置小偷有3滴血,被打中一次血量减一,当血量为0时扑街。则小偷被球击中部分的脚本变为:

20.编写小偷脚本4——随机移动

让小偷不论击中还是没被击中,都换一个地方,让其在舞台右侧街道移动。

21.编写小偷脚本5——小偷逃跑

那么设定一个变量——击球次数,当击球次数超过5时,小偷逃跑成功!则没击中部分的脚本变为:

击中部分的脚本中也要添加一条“变量 击球次数 的值增加1”的指令。

到此,本游戏基本框架编写完毕。

欢迎在留言区回复您宝贵的意见。提出您的创意,我们帮你实现!


顶一下()     踩一下()

热门推荐

发表评论
0评