(点击图片进入关卡)
交易处遭到围攻!通过检查食人魔的攻击方向守卫交易处
简介
检查敌人是否在英雄的上方、下方、左侧或右侧。
然后在这个方向上用 X 标记 buildXY``"fire-trap" !
默认代码
# 使用 "fire-trap"打败进攻的食人魔。
while True:
enemy = hero.findNearestEnemy()
if enemy:
# 如果敌人在英雄的左侧:
if enemy.pos.x < hero.pos.x:
# 如果敌人从左边进攻,在左边建一个"fire-trap"。
pass
# 如果敌人在英雄的右侧:
elif enemy.pos.x > hero.pos.x:
# 如果敌人从右边进攻,在右边建一个"fire-trap"。
pass
# 如果敌人在英雄下面。
elif enemy.pos.y < hero.pos.y:
# 如果敌人从下边进攻,在下边建一个"fire-trap"。
pass
# 如果敌人在英雄上面。
elif enemy.pos.y > hero.pos.y:
# 如果敌人从上边进攻,在上边建一个"fire-trap"。
pass
# 移动回中心。
hero.moveXY(40, 34)
概览
兽人从四方进攻,你要拦截他们!
使用 < 和 > 操作符获得他们的来向。 记得 < 就是 less-than 小于 的意思,而 > 就是 greater-than 大于 的意思。
有时大声说出这些挺有用。
enemy = hero.findNearestEnemy()
if hero.pos.x > enemy.pos.x:
或者直白点, if 如果(if) 英雄的 x 坐标 greater-than 大于 敌人的 x 坐标. 因为最小的 x 坐标在左边,所以你的英雄在食人兽的右边。
十字路口 解法
# 使用 "fire-trap"打败进攻的食人魔。
while True:
enemy = hero.findNearestEnemy()
if enemy:
if enemy.pos.x < hero.pos.x:
# 如果敌人从左边进攻,在左边建一个"fire-trap"。
hero.buildXY("fire-trap", 25, 34)
elif enemy.pos.x > hero.pos.x:
# 如果敌人从右边进攻,在右边建一个"fire-trap"。
hero.buildXY("fire-trap", 55, 34)
elif enemy.pos.y < hero.pos.y:
# 如果敌人从下边进攻,在下边建一个"fire-trap"。
hero.buildXY("fire-trap", 40, 19)
elif enemy.pos.y > hero.pos.y:
# 如果敌人从上边进攻,在上边建一个"fire-trap"。
hero.buildXY("fire-trap", 40, 49)
hero.moveXY(40, 34)
本攻略发于极客战记官方教学栏目,原文地址为:
https://codecombat.163.com/news/jikezhanji-shizilukou
极客战记——学编程,用玩的