zoukankan      html  css  js  c++  java
  • 「网易官方」极客战记(codecombat)攻略-网页开发2-JavaScript: 疯狂的小矮人-javascript-maniac-munchkins

    (点击图片进入关卡)

    在小矮人攻击你时保卫自己! 打开箱子,拿走战利品。

    简介

    在被小矮人和某些特别愤怒的小矮人攻击的同时打破箱子。

    默认代码

    // 攻击箱子,使其打开。
    // 当小矮人太靠近自己是,要会保卫自己。
    while(true) {
        var enemy = hero.findNearestEnemy();
        var distance = hero.distanceTo(enemy);
        if(hero.isReady("cleave")) {
            // 如果准备就绪,首要任务是切割:

     

        } else if(distance < 5) {
            // 在小矮靠的太近的时候,攻击最近的。

     

        } else {
            // 否则,尝试打开他们的胸膛:
            hero.attack("Chest");
        }
    }

    概览

    这一关里,矮人会发起周期性攻击,而不等待支援!

    使用 cleave 打败任何靠近的矮人队伍,不过 cleave 需要冷却完毕才能用。 isReady 可以帮你确认技能是否就绪。

    if(hero.isReady("cleave")) {
        // 这只在英雄的"cleave"就绪时发生。
    }

    用 distanceTo 方法检查矮人是否足够靠近。 distanceTo 会返回英雄和对手之间的一个 数字 。

    注意 小于 号 < 只在对比两个 数字 时有用! hero.findNearestEnemy() 返回的是敌人,而不是数字!hero.isReady() 返回 true 或 false 值,也不是数字! < 务必只能用于对比两个数字,例如 5 和hero.distanceTo(enemy) 。

    var enemy = hero.findNearestEnemy()
    var distance = hero.distanceTo(enemy)
    if(hero.isReady("cleave") {
    // else if是一个特殊语句!它告诉英雄前面if成立时不执行这个,前面if不成立时才考虑这里。
    } else if(distance < 5) {
        // 这只会发生在敌人距离小于5米且cleave未就绪时。
    }

    最后,如果cleave未就绪且最近敌人距离大于5米,你就有闲工夫攻击宝箱了!

    # 记住,else只在其他if语句条件全部为假时运行。
    else {
        # 这只会发生在距离小于5米内没有敌人且cleave未就绪时。
    }

    JavaScript: 疯狂的小矮人 解法

    // 攻击箱子,使其打开。
    // 当小矮人太靠近自己是,要会保卫自己。
    while(true) {
        var enemy = hero.findNearestEnemy();
        var distance = hero.distanceTo(enemy);
        if(hero.isReady("cleave")) {
            // 如果准备就绪,首要任务是切割:
            hero.cleave();
        } else if(distance < 5) {
            // 在小矮靠的太近的时候,攻击最近的。
            hero.attack(enemy);
        } else {
            // 否则,尝试打开他们的胸膛:
            hero.attack("Chest");
        }
    }
     

    本攻略发于极客战记官方教学栏目,原文地址为:

    https://codecombat.163.com/news/jikezhanji-fengkuangdexiaoairen

    极客战记——学编程,用玩的!

  • 相关阅读:
    RTT startup.c 代码学习
    [RTT例程练习] 1.2 静态线程除初始化与脱离
    linux 下生成核心文件
    [RTT例程练习] 2.3 信号量检测按键(同步) (信号量互斥)
    [RTT例程练习] 1.6 线程优先级反转原理
    [RTT例程练习] 1.7 优先级翻转之优先级继承
    extern int Image$$RW_IRAM1$$ZI$$Limit
    [RTT例程练习] 1.1 动态线程创建,删除
    [RTT例程练习] 1.3 线程让出
    Linux操作系统下三种配置环境变量的方法
  • 原文地址:https://www.cnblogs.com/codecombat/p/12890372.html
Copyright © 2011-2022 走看看