CODEMONKEY 173-179逻辑与事件- 成功的“钥匙”

【166-172关】逻辑与事件-成功的“钥匙”

在这节课中我们将了解什么是事件,以及计算机程序如何与键盘交互。

学习目标:

如何同时控制乌龟与小猴

能够用say函数实现键盘拼写

知识讲解:

事件&事件处理程序:事件是在代码运行时,由用户触发的操作,并因此影响正在运行的程序。比如:我们用电脑看电影或者动画片的时候,一般按下空格键就会暂停。再按下空格键,播放软件的程序又会执行播放。

当我们在键盘上按下一个键,我们就触发了一个键盘事件,此时onKey()函数就会被调用。这个函数我们可称之为事件处理程序。onKey()函数会接收到一个参数“key”,就是我们按下的按键,函数内的代码只有在按下按键的时候才会去执行。

实战闯关:

第173关:本关除了要控制小猴外还要控制乌龟,小猴的控制代码已经自动给我们显示了,只需要完成乌龟控制。

【173-179关】CodeMonkey事件处理程序【下】

由图可以看到,只需要能够控制乌龟前进即可,那么我们就假设按下‘t’让乌龟前进1步。这里要注意,乌龟前进要明确对象是乌龟,因此应该是 tutle.step 1。

第174关:如下图,本关只能控制乌龟前进还是不够的,需要乌龟能够后退,才能取到右上角的香蕉,还是很简单,在上一关的基础上添加一个后退的控制即可。

【173-179关】CodeMonkey事件处理程序【下】

第175关:提示可以用药瓶恢复体力,不过我经过仔细观察,发现只要设计好行动路线,便可很容易过关。

【173-179关】CodeMonkey事件处理程序【下】

从上图可以看到只需要能够控制乌龟前进,然后小猴取到最右侧的两根香蕉,而且还不会遭受攻击,然后回到左侧两根香蕉的路线上,快速的冲过去,顺利完成任务,看来这一关不用任何新的代码就能过关呢。

第176关:提示只有小猴体力不足100的时候才能拿到药水。我们设计了如下的行动路线,第一步(红色)先去拿到左侧的香蕉,中途会遭受攻击,然后返回时去拿到药水恢复体力。第二步(蓝色)拿到右侧香蕉,同样在返回时用药水瓶可以补充体力。最后一步(绿色)勇敢的冲过去,顺利过关。

【173-179关】CodeMonkey事件处理程序【下】

第177关:这一关小猴被一道门给挡住了。提示我们,只要用say函数说出大门上密码的每一个字符。说出每一个字符?怎么实现?其实很简单,当小猴走到大门前,会看到密码。只需要我们用键盘依次按下字符,我按什么(key),say函数就说什么,这就解决了。

【173-179关】CodeMonkey事件处理程序【下】

第178关:需要取到香蕉,需要能够控制小猴转向,前进,还要能说出密码。

【173-179关】CodeMonkey事件处理程序【下】

我们通过near gate来判断是否到了们跟前,此时就可以用say函数说出我们的输入字符,只要密码输入正确,即可过关、

第179关:这是一个综合关卡,如下图所示,需要能控控制小猴前进,转向,判断靠近门时能说出密码,还需要能够控制乌龟前进。

【173-179关】CodeMonkey事件处理程序【下】

只要完成上述功能设置,即可顺利控制小猴取得香蕉过关。

课后练习:

完成本节对应的特技关卡

【173-179关】CodeMonkey事件处理程序【下】

答案:

【173-179关】CodeMonkey事件处理程序【下】

【173-179关】CodeMonkey事件处理程序【下】

【173-179关】CodeMonkey事件处理程序【下】

【173-179关】CodeMonkey事件处理程序【下】

【173-179关】CodeMonkey事件处理程序【下】

【173-179关】CodeMonkey事件处理程序【下】

【173-179关】CodeMonkey事件处理程序【下】

(欢迎大家留言交流,希望本系列能帮助到学习中遇到困难的家长和孩子们,真正在玩中学习到知识。)