状课网-少儿编程网课专业平台
上一讲讲了如果让角色跟着鼠标到处跑,并且讲了角色碰到边缘应该怎么处理。其中用到了循环这个算法。
编程任务
《今天我们的主要任务是增加一个角色。一条鲨鱼,在海里游荡,我们的小鱼千万不能碰到鲨鱼,碰到了就会被鲨鱼吃掉,游戏也就结束了。》
(题外话:scratch的强大之处在于,虽然看似一个简单的图形编程,却引入了事件、线程、协调、同步的概念,比如键盘上的某个键被按下,是否碰到某个角色或者某种颜色等。多线程可以让计算机同时执行相互独立的程序片段。程序中不同的角色之间通过发送广播和接受广播来同步和协调。有了这些功能,我们就可以通过Scratch编出非常强大的游戏来。
增加一个鲨鱼,在Scratch里面叫增加了一个角色,在编程里叫增加一个线程,如果是写小说的话,那就是增加一条故事线。)
在增加鲨鱼之前,咱们先做一个小特效来完善程序效果,既然在海里,背景里还有气泡,那我们是不是可以增加点气泡的声音来让小游戏更生动呢?Scratch的强大又体现出来了,可以很容易的给背景和角色来增加声音特效。声音可以从声音库里选择,也可以自行录制。我们就把这个气泡的声音加到背景里面吧。
程序脚本(增加背景音效):
1:选择背景。然后选择右上角的《声音》页。
2:点击声音小图标,就可以在声音库里选择你想要的声音,让我们选择bubbles,然后点击一下下面的播放键,就听到了一连串的水声。
3:然后选择《脚本》页,来对背景编程。
这段程序CC哥就不解释了,但是请大家注意一点,声音指令里有两个,一个是播放声音直到播放完毕,另一个是播放声音。这两个指令有什么区别?请小朋友们自己试一试,看看有什么区别。确实有区别哦。
来执行一下听听效果吧,是不是生动了很多。
让我们进入正题,把鲨鱼加进来。
程序脚本(增加鲨鱼角色):
1:从角色库里添加鲨鱼。
2:这段脚本跟小鱼的脚本有点接近,CC哥也不解释了。
(移动指令有点不同的是,中间有个小白椭圆框,里面有个数字,缺省的是10,意思是每次移动10步。通过改写这个数字就可以调节角色移动的速度,小朋友们试试看,选择一个你觉得合适的速度)
再执行一下看看,很完美哦,鲨鱼在水里左右游来游去。但是有个问题,小鱼碰到鲨鱼后直接交叉而过,没有任何影响,我们希望做到的是小鱼一旦碰到鲨鱼那就游戏结束,也就是所有的行动都要停止,不管是鲨鱼,小鱼还有背景的气泡声音,也就是所有的进程都要同时终止才行。
程序脚本(碰到小猫终止程序)
碰撞检测
本脚本设计到了一个游戏里最重要内容:,想想打飞机游戏,飞机撞到了敌机,或者被子弹击中。跑酷游戏,主角跑着碰到了障碍物,等等等等,所以碰撞检测几乎遍布所有游戏。
那么检测是否碰撞就是一条最基本的判断语句了。所以<如果...那么...>就是碰撞检测的最核心算法了。
<碰到...?>是一条侦测指令,注意这个指令被设计成了长菱形,还带了一个?号,形状正好放到如果后面的长菱形空格里。大家记住这种形状的指令都属于条件指令,都是配合判断指令来一起使用的。
然后我们把这段脚本放到鲨鱼的执行脚本中,让鲨鱼一旦碰到小鱼就马上停止。
然后再执行整个程序看看。是不是很有意思,程序开始后,鲨鱼就凶狠的左右游动,然后等小鱼一旦碰到鲨鱼,游戏画面马上就静止下来。
今天的讲座就到这里,给大家留个作业,海里不能只有一条鲨鱼,至少有三条,而且每个鲨鱼都向不同的方向移动,而且其中一条鲨鱼一直追着小鱼走。通过这个作业,小朋友可以好好掌握以下运动类的各种指令。
下一讲,我们会把海星加进来,让海星随机出现在海里,我们控制着鲨鱼不但要去吃海星,还要躲避鲨鱼的追击。每吃到一个海星,小鱼就得一分,等得到10分,就算游戏胜利。大家可以先动脑子想想这个海星的程序脚本应该怎么设计,会用到什么算法。
文章来源:跟我学scratch编程
Scratch中有一个非常重要的区域,代码区。代码区就像是储存积木的小盒子,有9个不同颜色的模块,每个模块都对应的文字,运动、外观、声音、事件、控制、侦测、运算、变量、自制积木
512021-04-10 22:11:55
我们继续研究Scratch3.0编程与数学。今天我们一起来探讨的是最大公因数。
152021-04-26 16:04:01
把一个合数分解成若干个质因数的乘积的形式,即求质因数的过程叫做分解质因数。分解质因数只针对合数。
172021-04-26 15:59:18
前面三个案例发布后,收到很多老师们的反馈信息。大家提出了许多宝贵建议,在此由衷的表示感谢。一个人的力量和思路毕竟是有限的,欢迎老师们多多提意见。无论是从哪个方面,数学知识本身、Scrach3.0编程方面
172021-04-26 15:49:17
1.质数:又称素数。一个大于1的正整数,且只能被1和它本身整除,那么这个数就是质数。也就是说质数只有2个因数,1和它本身。
132021-04-26 15:29:04