「网易官方」极客战记(codecombat)攻略-森林-罪与罚-reward-and-ruination

我的梦境 提交于 2020-08-11 14:53:10
(点击图片进入关卡)

证明自己价值的时刻到了,事实上,一举两得的办法是有的。

简介

把敌人和火炮的位置连贯成容易阅读和理解的字符串以便于火炮部队攻击。

enemy = hero.findNearestEnemy()
enemyPos = enemy.pos.x + " " + enemy.pos.y #字符串拼接结果是: "43 20"
hero.say("Enemy at: " + enemyPos) # 这样会说出这样的字符串: "Enemy at: 43 20"

默认代码

# 看起来食人魔酋长正在偷你的宝石啊!
# 指挥两门火炮攻击敌人达成目标。
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        enemyPos = enemy.pos.x + " " + enemy.pos.y
        hero.say("敌人的位置是在: " + enemyPos)

 

    # 现在你遇到糖衣炮弹了
    # 为什么不把糖衣也吃掉呢?
    # 找到道具的位置并且
    # 说出火炮将要攻击的目标。

概览

就像前面关卡尝试的那样,字符串拼接可以在同一行中拼接多个字符串。 "Hello" + " " + "World" + "!" 结果等价于 "Hello World!" .

为了通过这一关,你需要把敌人和宝石的位置拼接成容易理解的字符串,以便于火炮部队的攻击。

enemy = hero.findNearestEnemy()
enemyPos = enemy.pos.x + " " + enemy.pos.y # 字符串拼接结果是: "43 20"
hero.say("Enemy at: " + enemyPos) # 这样会说出这样的字符串: "Enemy at: 43 20"

罪与罚 解法

# 看起来食人魔酋长正在偷你的宝石啊!
# 指挥两门火炮攻击敌人达成目标。
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        enemyPos = enemy.pos.x + " " + enemy.pos.y
        hero.say("敌人的位置是在: " + enemyPos)

 

    # 现在你遇到糖衣炮弹了
    # 为什么不把糖衣也吃掉呢?
    # 找到道具的位置并且
    # 说出火炮将要攻击的目标。
    item = hero.findNearestItem()
    if item:
        itemPos = item.pos.x + " " + item.pos.y
        hero.say("Item at " + itemPos)
 

本攻略发于极客战记官方教学栏目,原文地址为:
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!