【网易官方】极客战记(codecombat)攻略-森林-金币草地copper-meadows

简介

就像检查一个敌人的“类型”一样,你可以检查旗帜的位置或者位置。 你甚至可以找到标志'pos'的'x'和'y'坐标。

flag = hero.findFlag()
hero.say(flag.pos)
hero.say(flag.pos.x)
 
var flag = hero.findFlag()
hero.say(flag.pos)
hero.say(flag.pos.x)

使用你的 pickUpFlag 方法捡起你放置的旗子。你的新眼镜附带 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

提示: 点击提交后你才能放旗子。草地随机出现,所以地图每次都不一样。

XY坐标

游戏地图中表示位置的两个数字:x坐标和y坐标。

x是表示左右的横坐标。

y是表示上下的纵坐标。

运动时,x数值会增大。向运动时,x数值会减小

运动时,y数值会增大。向运动时,y数值会减小

地图的左下角坐标是0, 0(x和y皆为0)。

金币草地 解法

# 收集每片草地的所有金币。
# 使用旗子在草地间移动。
# 当你准备好放置旗子时点击“提交”
while True:
    flag = hero.findFlag()
    if flag:
        hero.pickUpFlag(flag)
        pass
    else:
        item = hero.findNearestItem()
        if item:
            position = item.pos
            x = position.x
            y = position.y
            hero.moveXY(x, y)
 
本攻略发于极客战记官方教学栏目,原文地址为:
原文地址:https://www.cnblogs.com/codecombat/p/12422439.html