• 「网易官方」极客战记(codecombat)攻略-沙漠-吸引牦牛-yakstraction


    (点击图片进入关卡)

    口渴的牦牛蜂拥向绿洲上晒太阳的可怜农民,你必须用诱饵干扰牦牛,让其偏离轨道。

    简介

    结合flag、 hero.gold 和 "decoy" 来保护农民!

    默认代码

    # 保护 brandy 避免那些冲来的口渴的耗牛!
    # 收集金币来建造诱饵干扰耗牛。
    # 使用旗子来决定什么时候在哪里建造诱饵。

    概览

    在你的循环里,第一件要做的事情是使用 findFlag 来检查是否有flag(旗标)已经被放置。

    如果有flag 并且 你有 25 以上的金币,那么使用 buildXY 在flag的 pos.x 和 pos.y 上建造一个诱饵。别忘了到达那里的时候使用 pickUpFlag !

    提示: 首先检查flag,这样你就不会在你移动到另一枚金币时耽误建造诱饵的时机。

    下一步,使用 findNearestItem 找到一枚金币并且向它移动。

    吸引牦牛 解法

    # 保护 brandy 避免那些冲来的口渴的耗牛!
    # 收集金币来建造诱饵干扰耗牛。
    # 使用旗子来决定什么时候在哪里建造诱饵。

     

    while True:
        flag = hero.findFlag()
        item = hero.findNearestItem()
        if item:
            hero.moveXY(item.pos.x,item.pos.y)
        if flag:
            hero.buildXY("decoy", flag.pos.x, flag.pos.y)
            hero.pickUpFlag(flag)

     

    # 把 munchkins赶往Omarn Brewstone提制出来的水!
    # 使用 `continue`验证丛林中的条件。
    while True:
        enemy = hero.findNearestEnemy()
        item = hero.findNearestItem()

     

        # 如果没有敌人,跳出循环继续。
        if not enemy:
            continue

     

        # 如果有敌人却没物品,要一瓶药,跳到下次循环。
        if not item:
            hero.say("把喝的拿来!")
            continue

     

        # 使用 if 语句检查物品的类型。如果类型是 "poison",跳出循环继续运行。
        if item.type is "poison":
            continue
        # 如果不是,那瓶子里装的是水,所以走向它,返回出发点!
        # 所以把XY移到魔药,然后回到开始!
        hero.moveXY(44, 35)
        hero.moveXY(34, 47)
     
    本攻略发于极客战记官方教学栏目,原文地址为:
     
  • 相关阅读:
    设计模式:观察者模式
    设计模式:享元模式
    面试题:redis主从数据库不一致如何解决?
    面试题:Object obj = new Object()这句话在内存里占用了多少字节
    面试题:AtomicInteger和LongAdder区别
    @PrePersist 注解
    树莓派 zero w 添加微雪墨水屏 显示天气
    数据仓库项目中的数据建模和ETL日志体系
    TO B业务的发展
    Kylin、Druid、ClickHouse核心技术对比
  • 原文地址:https://www.cnblogs.com/codecombat/p/13272509.html
Copyright © 2020-2023  润新知