zoukankan      html  css  js  c++  java
  • 「网易官方」极客战记(codecombat)攻略-沙漠-沙漠战役-desert-combat

    (点击图片进入关卡)

    为你的士兵讲上一段史诗般的讲话来激励他们对抗巨大的敌人。

    简介

    一定要增加'while'循环的条件,否则你将陷入无限循环!

    ordersGiven = 0
    while ordersGiven < 5:
        # If you don't do this, the loop will never end!
        ordersGiven += 1

    默认代码

    # while循环重复直到条件为否。
    ordersGiven = 0
    while ordersGiven < 5:
        # 在站场上移动和排列你的盟友。 (如果你是直接在他们面前,他们只能听到你的。)

     

        # 用hero.say命令你的盟友“进攻”!
        # 如果你在X上,他们只能听到你。
        hero.say("Attack!")
        # 请务必增加命令!

     

    while True:
        enemy = hero.findNearestEnemy()
        # 当你下达完命令,立即加入战斗!

    概览

    就像 if 语句一样,while 条件 循环需要制定一个 条件。 每次循环回到开头时,while 会检查 条件 是否为 真。 如果是,循环会继续执行。如果不是,循环停止,继续执行循环后面的代码。

    换句话说," 当 (While) 条件 成立时,一直循环。"

    注意,如果你的条件一直为真,有可能创建一个 死循环 (infinite loop) !

    在这关, while 循环有一个 ordersGiven < 5 的条件。别忘了在循环里增加 ordersGiven 的值,否则你会卡在 死循环 里。

    所以在你的 while 循环里:

    • 用 moveXY 往下移动 8 米。
    • 说出 ( say ) "Attack!"
    • 给 ordersGiven 加上 1

    在 ‘while' 循环结束之后(循环外面),寻找敌人,若存在就攻击。

    沙漠战役 解法

    # while循环重复直到条件为否。
    ordersGiven = 0
    while ordersGiven < 5:
        # 在站场上移动和排列你的盟友。 (如果你是直接在他们面前,他们只能听到你的。)
        hero.moveXY(hero.pos.x, hero.pos.y - 10)
        # 用hero.say命令你的盟友“进攻”!
        # 如果你在X上,他们只能听到你。
        hero.say("Attack!")
        # 请务必增加命令!
        ordersGiven += 1
    while True:
        enemy = hero.findNearestEnemy()
        # 当你下达完命令,立即加入战斗!
        if enemy:
            hero.attack(enemy)
     
    本攻略发于极客战记官方教学栏目,原文地址为:
  • 相关阅读:
    我的收藏:第一章:汇总
    实战:第二章:关于EZDML工具使用踩的坑
    Docker:第二章:部署项目,对镜像,容器的操作
    电商网站项目:第一章:进度
    多线程:第一章:我(线程)这一生
    性能优化:第一章:我们应该怎么优化
    关于EZDML数据库表结构制作设计工具使用踩的坑
    集群与分布的区别
    strip_tags--php
    关于html的一些杂技
  • 原文地址:https://www.cnblogs.com/codecombat/p/13291750.html
Copyright © 2011-2022 走看看