泓泰

项目实战课程之寻找蛋糕(四)

admin
项目实战课程之寻找蛋糕(四)-第1张-游戏相关-泓泰

前言:

当【dāng】前同学们对“洛克王国杰瑞西蛋【dàn】糕”大致比【bǐ】较看重,朋【péng】友们都想要知道一些“洛克王国杰瑞【ruì】西蛋糕”的【de】相关内容。那么小编在网络上搜集了一些对【duì】于“洛克【kè】王国杰瑞西蛋糕””的相关资讯,希【xī】望兄弟们能喜【xǐ】欢,我【wǒ】们快快【kuài】来了解一下吧【ba】!

复习上节课学习的内容

小朋友们好!我是阿达老师。我们上节课学习了使用侦测模块组的碰到颜【yán】色【sè】功能完【wán】成了【le】杰【jié】瑞在【zài】迷宫内【nèi】围墙内移动穿梭的【de】功能【néng】,这节课我【wǒ】们继续完成《灵找蛋【dàn】糕》项目,我们为杰【jié】瑞设置第一个对【duì】手——甲【jiǎ】虫

本节课知识点

使用克隆功能来实现甲虫运行规则的统一化处理
使用动作模块组的旋转功能实现甲虫的移动算法

实现分析

我们【men】要实现通过键盘【pán】上的【de】方向键控制它上下左右移动,并且不能穿【chuān】过围墙(视频展示【shì】:杰瑞上下【xià】左【zuǒ】右移动动画【huà】效果)*

视频实战

我们在这个【gè】项【xiàng】目中为杰瑞【ruì】设置了两个【gè】敌【dí】人,分别是:甲【jiǎ】虫【chóng】和【hé】幽灵,一群邪恶的甲虫在迷宫中【zhōng】穿梭【suō】,如果杰瑞碰到它们中的任何一个,游戏就会结【jié】束,

我们先要为甲虫【chóng】的移动创建一些【xiē】规【guī】则,来指【zhǐ】导它移动,这个【gè】规则我【wǒ】们称之为算法,我们的算法会告诉【sù】每一【yī】个【gè】甲虫【chóng】都要按照设置好的【de】规则移动,

我们规纲一下,甲虫的算法需要完成两个功能
1、一直向前移动,直到判断到围墙
2、碰到围墙之后会随机【jī】选择上、下【xià】、左、右【yòu】四个方向【xiàng】之后再次【cì】向【xiàng】前移动

OK,分析完成之后,我们就可以着手进行编【biān】码了,首先打开网易卡搭的编程环境【jìng】,在我【wǒ】的【de】作品中选择【zé】《寻【xún】找蛋糕【gāo】》这个项目,进【jìn】入创作页,我们先从角色【sè】库中【zhōng】导入一个甲虫角色,切【qiē】换到这个【gè】甲虫的编程【chéng】界面,先【xiān】来对甲虫角色大小、位置【zhì】和方向进【jìn】行初始化【huà】,从事件模块组拖【tuō】动当绿【lǜ】旗【qí】被点【diǎn】击代码块,从外观模块组拖动将【jiāng】角色大小设定【dìng】为30代码块,从动【dòng】作模块【kuài】组拖【tuō】动面向90度方向、移到【dào】x...y...代【dài】码块出来,将以上代码块放在当绿旗被点击下方,组成初始化代【dài】码,接【jiē】下来我们让【ràng】甲虫动起【qǐ】来,从动作【zuò】模块组拖动移动10步代码放到实始【shǐ】化代码下方,将代码【mǎ】块【kuài】里的数字10改为5,从控制模块组里将【jiāng】重复执【zhí】行代码拖【tuō】动出来,将移动【dòng】5步代【dài】码放入【rù】重【chóng】复执行代码【mǎ】块中【zhōng】,

现在我们调试运行一下【xià】,会【huì】发现【xiàn】甲虫的移动【dòng】过程发【fā】生了和【hé】杰瑞一【yī】样的【de】问【wèn】题,它也从迷宫的【de】围墙中穿过去了【le】,我们从【cóng】前面的课程学习过程当中知道可【kě】以用碰到【dào】颜色代码块的功能【néng】来解决这个问题,实现代【dài】码老师已经写好了,

在这里有【yǒu】一个【gè】和之前学习的不一样的地方,就是我们加入了碰到边缘的判断【duàn】条件,因【yīn】为甲虫【chóng】碰到迷宫围【wéi】墙的时候我们预设它转动【dòng】的方【fāng】向是随机的,所以它有【yǒu】可能【néng】碰到舞台的边缘,所以我们加入了【le】这个【gè】条件,这两段条件之【zhī】间的【de】关系是【shì】“并【bìng】且【qiě】”的关系,意【yì】思是:“如果满足碰到迷宫颜色或【huò】者如【rú】果满足【zú】碰到边缘”两【liǎng】个条【tiáo】件当中的一【yī】个,我们都将让甲【jiǎ】虫停下来,小朋【péng】友,你是【shì】不是【shì】理解了呢?

甲虫撞墙【qiáng】之后【hòu】,我们要让它继续【xù】移动,让它转动个【gè】方向就可以了,但是到底是向【xiàng】左转【zhuǎn】,还【hái】是向右转呢?这里我【wǒ】们需【xū】要设计一个算【suàn】法,向左转或【huò】者向面转的机【jī】率都【dōu】是50%,首【shǒu】先,我们先【xiān】从运行符模【mó】块【kuài】组里拖动在1到【dào】10之间【jiān】选择一个【gè】随机数代码出来,我们更改一下随机取值的【de】范围,设置为在1到2之间选择一个随机数,再从【cóng】运算符模块组里拖动一【yī】个等式结【jié】构,将设置好【hǎo】的随机数【shù】代【dài】码拖动【dòng】到等式的左边【biān】,将等式的右边设置【zhì】为【wéi】1,代码如【rú】下【xià】图:

再从控制【zhì】模块组里拖动一个如果...那...否则【zé】...代【dài】码块出来【lái】,我们把上面这段代码作为条件拖【tuō】入【rù】到【dào】当前【qián】的条件判【pàn】断【duàn】当中【zhōng】,我们在判断结【jié】果当【dāng】中拖入向右旋转15度代码块,把【bǎ】旋转的数字改为90度,在【zài】否则的判断结果当中【zhōng】拖入向左旋转【zhuǎn】15度代码【mǎ】块,把旋【xuán】转的【de】数字改为90度,代码【mǎ】如下图:

以上这段代码的意思就是,如【rú】果随机【jī】数代码【mǎ】块【kuài】随机到了1这【zhè】个值,那么等式成立,甲【jiǎ】虫【chóng】将执行向右旋转90度【dù】的代码;如果【guǒ】随【suí】机【jī】数【shù】代码块随机到【dào】了2这个值,那么等式不【bú】成立,甲虫将执行向左【zuǒ】旋转90度的代【dài】码,向左右旋转的机率是一样的,各50%,这是【shì】一【yī】段很精巧【qiǎo】的代码,同【tóng】时也【yě】是比【bǐ】较常用【yòng】的一种区分概率的手段【duàn】,小朋友一定要理解掌握【wò】哦。

我们把这段随机判断的代码放入到【dào】重【chóng】复执【zhí】行语【yǔ】句当【dāng】中,完整【zhěng】的甲虫【chóng】移【yí】动的【de】代码我们就写完了,我们来一起【qǐ】调试一下效果吧,

小朋友们【men】这里要注意两层嵌套判断条【tiáo】件的层级关系哦,我【wǒ】们【men】要在【zài】判断碰【pèng】到迷宫围墙的之后才会判断【duàn】是否需要转向,所以转【zhuǎn】向的判断在【zài】判断是否碰到迷【mí】宫【gōng】围【wéi】墙的里【lǐ】边【biān】,而是【shì】否是碰到了围墙这个【gè】判断要一直循环侦测,所【suǒ】以,在这个判断【duàn】外边【biān】还有一个【gè】重复执行的语句,

好【hǎo】了,我们已经完【wán】成了一个甲虫【chóng】的移动代码的编程,我们在角【jiǎo】色区里可以多设置【zhì】几个甲虫来增【zēng】加游【yóu】戏的难度【dù】
,在角色区直接点击鼠标右键复制就可以了,

我们先【xiān】来【lái】复制三【sān】个甲虫吧【ba】, 这里我们要设置甲虫出现在不同的位置,所【suǒ】以,我们【men】需要给复制出来的【de】甲【jiǎ】虫【chóng】更改一下初【chū】始化位置,把位置设置【zhì】成不同的【de】坐标,

好了,小朋友们,我【wǒ】们今天的课就结【jié】束了,我们下节课【kè】继续学【xué】习【xí】,杰瑞吃到【dào】蛋糕后【hòu】积分累加【jiā】的功能,拜拜


阿达老师-孩子身边的编程专家



标签: #洛克王国杰瑞西蛋糕