储存室堆满了宝藏,陷阱,和一个迅捷的兽人守卫。
简介
![](https://codecombat.163.com/news/img/coincrumbs2.b9985ee7.jpg)
你能否在没有被食人魔守卫抓住的情况下逃离储藏室? 跟随硬币的踪迹。
就像检查一个敌人的'类型'一样,你可以检查'item'的位置或'pos'。 你甚至可以找到'item 的 pos 的'x 和 y 坐标。
当点击 “提交” 时,迷宫发生变化。 使用项目的位置来代替硬编码坐标。
默认代码
# 跟随硬币的轨迹来到红色 X 标记的出口
while True:
# 这能找到最近的敌人。
item = hero.findNearestItem()
if item:
# 这将物品的 pos,就是坐标,存储在变量中。
itemPosition = item.pos
# 将物品的 X 和 Y 坐标放进变量。
itemX = itemPosition.x
itemY = itemPosition.y
# 现在,使用移动XY移动到项目X和项目Y:
概览
你的新眼镜附带 findNearestItem 方法,可以用它让你的英雄找到附近的金币 (宝石什么的也可以) 不过得在英雄视野中才行。
你可以像这样移动到物品的地方:
item = hero.findNearestItem()
if item:
position = item.pos
x = position.x
y = position.y
hero.moveXY(x, y)
每个物品都是一个 对象 (object),对象是一种数据类型, 就像字符串 或者 数字。对象包含了其他的数据,我们称之为 属性 (property).
每个物品 (以及单元) 对象都有一个 pos 属性,代表它的位置。 而每个 pos 本身也是一个对象,拥有 x 和 y 属性,这些可以用于 moveXY 和 buildXY 。
金币屑 解法
# 跟随硬币的轨迹来到红色 X 标记的出口
while True:
# 这能找到最近的敌人。
item = hero.findNearestItem()
if item:
# 这将物品的 pos,就是坐标,存储在变量中。
itemPosition = item.pos
# 将物品的 X 和 Y 坐标放进变量。
itemX = itemPosition.x
itemY = itemPosition.y
# 现在,使用移动XY移动到项目X和项目Y:
hero.moveXY(itemX, itemY)