31 · 乡村巡游者
先读关卡目标,观察地图,再运用本课知识。
扣哒世界 · 计算机科学2 · Python · 第31–35关
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
学习路线:读目标 → 看图解 → 写代码 → 运行检查
想象你是一个魔法师,每次战斗都要念一长串咒语:
"找敌人...检查距离...举起剑...用力挥下..."
太累了!不如把这一长串动作打包成一个新咒语,起名叫“超级攻击”。
在 CodeCombat 的 Python 中,我们这样定义函数:
注意:执行到函数调用前,要先完成函数定义!
这是初学者最容易搞混的地方!
任务: 在村庄里巡逻。因为要多次“找敌人并攻击”,所以我们把它写成一个函数。
你可以定义多个函数来处理不同的情况。这里我们区分“普通攻击”和“强力劈斩”。
函数内部可以包含复杂的逻辑!
在这个函数里,我们把 if/else 判断全放进去。主程序只需要“傻瓜式”调用 cleaveOrAttack() 即可。
这一关你需要自己从头写出 attackEnemy 函数。
提示: 模仿 pickUpCoin 的写法,但是把捡硬币的逻辑换成打敌人的逻辑。
扣哒世界 · 计算机科学2 · Python · 第31–35关
想象你是一个魔法师,每次战斗都要念一长串咒语: "找敌人...检查距离...举起剑...用力挥下..."
在 CodeCombat 的 Python 中,我们这样定义函数:
enemy = hero.findNearestEnemy()
这是初学者最容易搞混的地方!
任务: 在村庄里巡逻。因为要多次“找敌人并攻击”,所以我们把它写成一个函数。
enemy = hero.findNearestEnemy()
你可以定义多个函数来处理不同的情况。这里我们区分“普通攻击”和“强力劈斩”。
enemy = hero.findNearestEnemy()
函数内部可以包含复杂的逻辑!
enemy = hero.findNearestEnemy()
这一关你需要自己从头写出 attackEnemy 函数。
coin = hero.findNearestItem()
本节课关卡:31. 乡村巡游者;32. 村庄守卫;33. 村庄守护神;34. 造币厂;35. 概念挑战. 寂静市