(点击图片进入关卡)
三颗宝石,三个人,还有最后期限。
简介
hero.findEnemies() 返回你能看到的所有敌人的数组。
攻击数组中的第一个敌人 (index 0)。你的队友会攻击其他人。
你需要检查敌人阵列是否为空。 一种方法是检查数组的长度是否大于 0:
enemies = hero.findEnemies()
if len(enemies) > 0:
# 'enemies' contains at least one element.
当你把物品赋值给变量,你就可以像以前关卡的 findNearestItem() 那样使用。
默认代码
# 保护农民免受食人魔的侵害。
while True:
# 得到一个敌人的数组。
enemies = hero.findEnemies()
# 如果数组不为空。
if len(enemies) > 0:
# 从 "enemies"数组中攻击第一个敌人。
# 返回到起始位置。
pass
概览
数组的长度是数组中包含元素的个数。 一个空数组的长度为'0'。
如果您需要从中读取元素,检查数组的长度是一个很好的做法。
如果您只读取第一个元素,那么就足以检查该数组是否为空。
var items = hero.findItems();
if len(items):
# "items" 的长度不为0.
hero.say(items[0])
但是,如果你正在寻找另一个元素,比如第 3 个元素,那么你需要更仔细地检查数组长度:
if len(items) >= 3:
# "items"至少包含3个元素
hero.say(items[2])
协助防御 解法
# 保护农民免受食人魔的侵害。
while True:
# 得到一个敌人的数组。
enemies = hero.findEnemies()
# 如果数组不为空。
if len(enemies) > 0:
# 从 "enemies"数组中攻击第一个敌人。
hero.attack(enemies[0])
# 返回到起始位置。
hero.moveXY(40, 20)
本攻略发于极客战记官方教学栏目,原文地址为: