codecombat极客战记森林(JavaScript)21-40关卡
PS:JavaScript编写,存在自定义类偷懒,如果你的自定义类和我不同是正常的
21-强攻ATETH塔
// 食人魔藏在他们的营地里。
// 用一个有计划的进攻,来突破他们的防御!hero.moveXY(55, 14);
hero.moveXY(94, 19);// 在红色的 X 位置建造一个火焰陷阱"fire-trap"。
hero.buildXY("fire-trap", 94, 19);
// 撤退到木质的 X 位置,来避免爆炸伤害。
hero.moveXY(55, 14);
// 等火炮手来调查闪亮的火焰陷阱。
// 进入营地,放置火焰陷阱在每一个红色的 X 位置上。
hero.moveXY(90, 53);
hero.buildXY("fire-trap", 90, 53);hero.moveXY(60, 62);
hero.buildXY("fire-trap", 60, 62);
// 使用 say 方法告诉部队 "retreat"(撤退)。
hero.say("retreat");
// 逃回到最左边的木质的X集结点。
hero.moveXY(11, 28);
22-森林劈砍者
// 尽可能多地使用你的新技能"cleave"。hero.moveXY(23, 23);
while(true) {var enemy = hero.findNearestEnemy();if (hero.isReady("cleave")) {// 用“Cleave”干掉敌人!hero.cleave(enemy);}else {// 否则(如果“cleave”还没准备好),就用普通攻击。hero.attack(enemy);}
}
23-盾冲
// 用盾防和劈斩在两波攻击中存活下来。
// 如果"cleave"没有准备好,就用你的盾防技能。
// 你需要至少142点生命值来保证存活下来。while(true) {var enemy = hero.findNearestEnemy();if (hero.isReady("cleave")) {hero.cleave(enemy);}else {hero.shield();}
}
24-BURL和布尔
// 一个布尔值要么是真,要么是假。
// ==符号表示 "是否等于?"
// 因此, A == B 是在问:"A是否等于B?"
// 答案是一个布尔值!
// 如果没懂,请点"Hints"按钮来获得提示!// 问题: 2 == 3
// 说出正确的答案:
hero.say(false);// 问题: 3 == 3
// 回答 true 或者 false 2:
hero.say(true);// 问题: "Three" == 3
// 回答 true 或者 false 3:
hero.say(false);// 问题: "Three" == "Three"
// 回答 true 或者 false 4:
hero.say(true);// 问题: 1 + 2 == 3
// 回答 true 或者 false 5:
hero.say(true);
25-奥术盟友
// 拿下那些食人魔!while(true) {var sb = hero.findNearestEnemy();if (hero.isReady("cleave")) {hero.cleave(sb);}else {hero.shield();}
}
26-死亡之触
// 短距离情况下,施放"drain-life"法术。
// 远距离使用魔杖攻击。while(true) {var enemy = hero.findNearestEnemy();if (enemy) {var distance = hero.distanceTo(enemy);if (distance < 15) {// 对敌人施放 "drain-life" 法术。hero.cast("drain-life", enemy);}else {// 用魔杖攻击敌人。hero.attack(enemy);}}
}
27-修骨者
// 治疗盟友士兵来突围。
while(true) {if (hero.canCast("regen")) {var bernardDistance = hero.distanceTo("Bernard");if(bernardDistance < 10) {// "Bernard"需要治疗!hero.cast("regen", "Bernard");}// 使用"if"和"distanceTo"来治疗"Chandra"// 如果她距离小于10米。var bernardDistance = hero.distanceTo("Chandra");if (bernardDistance < 10) {hero.cast("regen", "Chandra");}}else {// 如果你没有执行 "regen",使用"if" 和"distanceTo"// 来攻击距离小于下面值的敌人 hero.attackRange.var enemy = hero.findNearestEnemy();if (enemy) {hero.attack(enemy);}}}
28-矮人蜂拥而至
while(true) {// 检查与最近敌人的距离。var enemy = hero.findNearestEnemy();var distance = hero.distanceTo(enemy);// 如果它接近到10m以内,使用cleave!if (distance < 10) {hero.cleave(enemy);}// 否则,根据名字攻击"Chest"(宝箱)。else {hero.attack("Chest");}
}
29-边地僵局
// 矮人正在攻击!
// 攻击会有规律的一波波袭来。
// 可以的话,使用劈斩来清理大量敌人。while(true) {var enemy = hero.findNearestEnemy();var skill = hero.isReady("cleave");// 使用带有‘isReady’的if语句来检查 "cleave":if (skill) {hero.cleave(enemy);}// 劈斩!else {hero.attack(enemy);}// 否则,如果 cleave 还没准备好的话:// 攻击最近的食人魔!}
30-测距仪
// 食人魔正在森林中巡视!
// 使用distanceTo方法找到敌人在哪。
// 说出与每个敌人的距离,告诉大炮向哪开火!var enemy1 = "Gort";
var distance1 = hero.distanceTo(enemy1);
hero.say(distance1);var enemy2 = "Smasher";
var distance2 = hero.distanceTo(enemy2);
// 说出distance2变量!
hero.say(distance2);
// 不要攻击友方!
var friend3 = "Charles";// 最后的食人魔。
var enemy4 = "Gorgnub";
// 确定并说出与enemy4之间的距离:
var distance3 = hero.distanceTo(enemy4);
hero.say(distance3);
31-eise之战
// 劈斩正在10秒冷却中。
// 使用 else 语句在恢复时防守。while(true) {var enemy = hero.findNearestEnemy();if(hero.isReady("cleave")) {hero.cleave();}// 写个 else: 当"cleave"没有准备好时做点别的什么。else {hero.attack(enemy);}// 确保攻击敌人:}//不清楚为什么报错,但是可以过关
32-边地僵局A
// 矮人正在攻击!
// 攻击会有规律的一波波袭来。
// 可以的话,使用劈斩来清理大量敌人。while(true) {var enemy = hero.findNearestEnemy();// 使用带有‘isReady’的if语句来检查 "cleave":if(hero.isReady("cleave")){hero.cleave(enemy);}// 劈斩!// 否则,如果 cleave 还没准备好的话:else {hero.attack(enemy);}// 攻击最近的食人魔。}
33-边地僵局B
// 矮人正在攻击!
// 攻击会有规律的一波波袭来。
// 可以的话,使用劈斩来清理大量敌人。while(true) {var enemy = hero.findNearestEnemy();// 使用带有‘isReady’的if语句来检查 "cleave":if (hero.isReady("cleave")) {hero.cleave(enemy);}// 劈斩!else {hero.attack(enemy);}// 否则,如果 cleave 还没准备好的话:// 攻击最近的食人魔!}
34-矮人收割
// 铲除所有矮人以存活!
// 确保你有足够的护甲。while(true) {var xz = hero.findNearestEnemy();if (hero.isReady("cleave")) {hero.cleave(xz);}else {hero.shield();}
}
35- 飞刀
// 长距离用你的弓,短距离用匕首while(true) {var enemy = hero.findNearestEnemy();if (enemy) {var distance = hero.distanceTo(enemy);if (distance < hero.throwRange) {// 一旦"throw"技能准备就绪,就可向敌人扔出匕首。hero.distanceTo(target);}else {// 用你的弓攻击敌人hero.attack(enemy);}}
}
36-弹片
// 使用投弹干掉大批食人魔。
// 然后用你的弓干掉他们。while(true) {var enemy = hero.findNearestEnemy();if (enemy) {if (hero.isReady("throw")) {var distance = hero.distanceTo(enemy);// 只在食人魔距离大于15米的时候投掷炸弹。// 使用"if"将距离和15进行对比。if (distance > 15) {hero.throw(enemy);}// 使用"else"在不投弹的情况下进行普通攻击。}else {hero.attack(enemy);}}
}
37-远程除法
// 摧毁雷区!
// 用`say`说出雷区的射程距离。
// 使用除法计算射程距离。var enemy = hero.findNearestEnemy();
var distanceToEnemy = hero.distanceTo(enemy);
// 说第一个射程距离:distanceToEnemy除以3hero.say(distanceToEnemy / 3);// 说第二个射程距离:distanceToEnemy除以1.5hero.say(distanceToEnemy / 1.5);// 说说这些事的动机。真的。相信我们。
hero.say("哇哦!");
hero.say("我们来了!");
hero.say("冲锋!!");
hero.say("哇哦!");
hero.say("我们来了!");
hero.say("冲锋!!");
// 现在,使用一个while-true循环来攻击敌人。
while(true) {var enemy = hero.findNearestEnemy();hero.attack(enemy);}
38-贴身护卫
while(true) {var enemy = hero.findNearestEnemy();var distance = hero.distanceTo(enemy);if (distance < 10) {// 如果他们与农民太近,就攻击他们hero.attack(enemy);}// 否则的话,呆在农民旁边!使用elseelse {hero.moveXY(40, 37);}}
39-矮人蜂拥而至
while(true) {// 检查与最近敌人的距离。var enemy = hero.findNearestEnemy();var distance = hero.distanceTo(enemy);// 如果它接近到10m以内,使用cleave!if (distance < 10) {hero.cleave(enemy);}// 否则,根据名字攻击"Chest"(宝箱)。else {hero.attack("Chest");}
}
40-跃火林中
// 在这关,别碰恶魔石!往其他方向移动避开它们!
while (true) {var evilstone = hero.findNearestItem();if (evilstone) {var pos = evilstone.pos;if (pos.x == 34) { // ==的意思是"is equal to""(等于)// 如果恶魔石在左边,走到右边。hero.moveXY(46,22);} else {// 如果恶魔石在右边,走到左边。hero.moveXY(34, 23);}} else {// 如果没有恶魔石,那就去到中间。hero.moveXY(40, 22);}
}
codecombat极客战记森林(JavaScript)21-40关卡相关推荐
- codecombat极客战记森林(JavaScript)41-60关卡
PS:JavaScript版本,方便和我一样的前端小白,找不到攻略卡关卡的EMO! 41-以静制动 // 你可以将一个if语句放到另一个if语句当中. // 你必须注意这些if语句是如何互相影响的. ...
- codecombat极客战记森林(JavaScript)1-20关卡
PS:若已经通关游戏开发01,前两关会被系统略过,从第三关开始. 01-碎天裂地 // 使用你的buildXY之锤在大门附近建造两个"fire-trap". // 当你退到安全距离 ...
- codecombat极客战记森林21-40通关代码
codecombat极客战记森林21-40通关代码 所有代码均使用python编写 21.强攻ATETH塔 hero.moveXY(55, 14) hero.moveXY(92, 18)# 在红色的 ...
- codecombat极客战记森林41-60通关代码
codecombat极客战记森林41-60通关代码 所有代码均使用python编写. 41.以静制动 # 你可以将一个if语句放到另一个if语句当中. # 你必须注意这些if语句是如何互相影响的. # ...
- codecombat极客战记森林1-20关
所有代码均使用python编写 1.裂天碎地 # 当你退到安全距离以外他们就会引爆. # 然后,奔跑吧少年! hero.moveRight(2) hero.buildXY("fire-tra ...
- createprocess失败代码2_极客战记[森林]:边地之叉-通关代码及讲解
本栏目为极客战记关卡通关讲解栏目,将会从地牢-森林-沙漠-山峰-冰川,按用户的正常过关顺序,挑出难度较大或有教学意义的关卡进行讲解,长期更新. 森林 地牢里的关卡主要是偏向锻炼用户的基本语法结构和计算 ...
- 极客战记[森林]CHALLENGE:MAGIC EXAM
极客战记[森林]CHALLENGE:magic exam 过关思路仅提供参考: 移动到对应的红叉点,然后门打开,判断是敌是友: 如果是朋友释放对应技能,可能是治疗,可能是把朋友放大: 如果是敌人释放相 ...
- 极客战记 森林入侵_本周极客历史:史蒂夫·乔布斯演示了第一台Mac,神话破坏者登上了电波,奇异博士入侵了大众文化
极客战记 森林入侵 It was quite a wild ride for this week in Geek History: Steve Jobs gave a demonstration of ...
- 极客战记攻略java第一张_极客战记[森林]:平常的一天 - 通关代码及讲解
本栏目为极客战记关卡通关讲解栏目,将会从地牢-森林-沙漠-山峰-冰川,按用户的正常过关顺序,挑出难度较大或有教学意义的关卡进行讲解,长期更新. 森林 地牢里的关卡主要是偏向锻炼用户的基本语法结构和计算 ...
最新文章
- UIImage 各种处理(分类)
- pandas基于日期信息(time or date)生成季度信息(quarter)实战:pandas基于日期信息列生成季度信息列、dt.quarter生成季度信息、dt.to_period生成季度信息
- C++ fscanf函数分割读取文本文件
- Linux查看进程的线程信息
- ​Python 3 新特性:类型注解——类似注释吧,反正解释器又不做校验
- Visual Studio附加到进程调试
- 清除Console口和Telnet密码教程
- 中国乙二醇型汽车防冻液市场运营能力分析与投资战略规划研究报告2022-2028年版
- python 注释含注释_Python注释
- 如何做到行业顶尖位置?
- 笔记︱风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)
- Vm虚拟化连不上存储服务器,VMware服务器虚拟化、虚拟桌面应该选择什么存储品牌最好--我们有软硬方案...
- N个鸡蛋放进M个篮子问题
- 什么是逻辑主键和业务主键
- 源发行版 8 需要目标发行版 1.8
- python输出希腊字母
- 换个姿势做运维!GOPS 2022 · 深圳站精彩内容抢先看
- 名家专栏 况杰 主动下架比被动下架要好
- Python数据分析实战【第三章】2.5-Pandas数据结构Dataframe:基本概念及创建【python】
- 【Pytorch】带注释的Transformer (各个部件的实现及应用实例)
热门文章
- 一个人窝在摇椅里乘凉 我承认这样真的很安详 和楼下老爷爷一样
- 关于策略优化的一些简单想法
- 初雨CPPHelper使用说明
- 以太猫合约之基础合约分析(一)
- 查mysql连接密码是什么意思_查询mysql下的数据库密码是什么意思
- java函数加不加static有何不同
- 密码错误频繁登录引发的“library cache lock”或“row cache lock”等待
- 一年中重要的节日列表_一年中最重要的节日分别是?
- 看看成功例子 四款iPhone音乐APP应用赏析
- 说一点学习python的心得