本栏目为极客战记关卡通关讲解栏目,将会从地牢-森林-沙漠-山峰-冰川,按用户的正常过关顺序,挑出难度较大或有教学意义的关卡进行讲解,长期更新。
森林
地牢里的关卡主要是偏向锻炼用户的基本语法结构和计算机思维,让大家熟悉极客战记的操作与代码的使用,来到了森林,关卡将会变得更多更难,同样,到了森林,大家就正式开始接触编程的几大重要知识点:
条件判断、运算符、函数、对象属性
关卡:边地之叉
关卡图片
- 关卡地址:
极客战记:森林 - 边地之叉 - 学编程,用玩的!codecombat.163.com
「边地之叉」这一关涉及的编程知识为:「函数」和 「参数」,大家需要理解函数及其参数是什么东西,究竟需要如何使用的,即可顺利过关。
- 通关展示:
- 思路讲解:
进入本关,刚开始如果你不太明白这一关需要英雄做什么,那么你可以直接点击运行按钮,来观察游戏过程,你需要找到两个要点:
- 现有的代码是在让英雄在干什么?
- 游戏是为什么失败的
- 那么我们应该怎么做?
这是在默认代码下的运行情况,可以知道:
- 默认代码的作用,就是让英雄循环往返与上方的两个点,上方的敌人一出现,就被英雄消灭了。
- 但英雄没有前往下方,导致下方的敌人击杀了村民,游戏失败。
- 因此我们可以照着现有的代码略作改动,增加一段攻击下方敌人的代码。
因此,此时的通关思路为:
- 理解现有代码
- 对现有代码略作改动,需要实现的功能是:巡逻保卫下方村民安全。
观察代码,在以往我们的代码都是仅有一个代码块,一个While True无限循环代码块包括了所有的运行代码块,而本关,除了While True代码块以外,还多了一块代码,它就是def函数代码块。
知识点:函数函数是我们在上一关接触到的知识点,
在Python里,我们使用关键字 def 来定义一个函数:
关键字def是英文单词define的缩写,具有定义,明确的意思,我们创建一个函数,也叫
定义一个函数。
创建函数的格式如下:def
可以看到,我们创建函数的时候,使用了冒号,为函数创建了一个单独的代码块。
如果不记得代码块的概念了,可以点击链接,回到地牢复习一下:极客战记[地牢]:迷失在书库-通关代码及讲解
调用函数的格式则是:函数名()
十分简单。
函数的作用:如果你有一段非常方便的代码,例如寻找敌人攻击敌人,那你要在每个可能有敌人的地方,都写一遍这一段代码,十分繁琐。
而函数,就是一个偷懒的工具,我们可以把它想象成一个机器人,我们在机器人的程序里(函数体内)写好代码,当我们需要使用这段代码时,呼叫机器人的名字(函数名加括号),就能叫出这机器人来帮忙,而不需要总是写一大串同样的代码了。
也因此,函数内的代码,它在没被调用时,是不会执行的。
就像图中的函数checkAndAttack,虽然它的代码在最上面,但它的代码不会被执行,而是直接跳过,当后面有需要调用函数时,才运行这一段代码。
了解了函数以后,我们再来了解一下参数
知识点:参数我们刚刚说,函数就像一个机器人,代码写在机器人的程序里,因此我们可以这么理解,函数和其他的代码,它们是互不相关的,机器人的程序(函数)和正常运行的代码,是两个相互独立的程序。
因此,我们在正常运行的代码里写的一些变量,它们是不能直接使用到函数里的,因为它们是互不相关的两个程序。
而参数,就是帮我们把外界变量传入函数内的工具。 创建参数的方法:def 函数名(参数名):
直接在函数名的括号内写上你要创建的参数名即可,你还可以创建不止一个参数:
def 函数名(参数名1,参数名2,参数名3……):
参数就是一个变量,它是专门用在函数里的,你可以提前写好它们各自要做的工作:
def Test(t1,t2):
hero.attack(t1)
hero.say(t2)
然后我们再按顺序,在调用的时候把我们的变量传入参数里:
def Test(t1,t2):
hero.attack(t1)
hero.say(t2)
enemy1 = hero.findNearestEnemy()
word = "你好!"
Test(enemy1,word)
Test(enemy1,word),就是把enemy1作为t1,word作为t2传入了Test函数里,这样此时执行Test函数的时候,英雄就是去攻击enemy1,并说“你好!”
明白了这两个知识点以后,我们再看到关卡里的代码:
此时我们就知道,上方一个代码块,是系统已经帮我们写好的攻击敌人,并回到中心点的代码块,无需修改。
那么我们以目前while True内的代码作为模板,写出攻击底部敌人的代码:
- 移动到下方X标记处。
- 到达下方后,寻找最近的敌人
- 使用checkAndAttack()函数攻击下方新找到的敌人
- 通关代码:
以上便是森林关卡「边地之叉」的过关教学了~
地牢关卡通关教程:
- 极客战记[地牢]:祸之火焰-通关代码及讲解
2. 极客战记[地牢]:注释中的密语-通关代码及讲解
3. 极客战记[地牢]:迷失在书库-通关代码及讲解
4. 极客战记[地牢]:换个名字-通关代码及讲解
森林关卡通关教程:
- 极客战记[森林]:九颗宝石-通关代码及讲解
2. 极客战记[森林]:边地僵局-通关代码及讲解
3. 极客战记[森林]:发狂的矮人-通关代码及讲解
本栏目将会长期以正常顺序更新极客战记的关卡讲解,如果觉得我们的内容对你有用,有帮助的话,不妨点一下右上角的关注吧!~