codecombat之边远地区的森林12-22关及地牢39关代码分享
codecombat中国游戏网址:http://www.codecombat.cn/
全部代码为javascript代码分享
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12、兽人营地
// 假设有敌人。则攻击之
// 假设没有敌人,则攻击財宝箱
loop {
// 使用if/else语句
var enemy = this.findNearestEnemy();
if (enemy) {
this.attack(enemy);
}
else {
this.attack("Chest");
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13、强攻 Areth 塔
this.moveXY(55, 14);
this.moveXY(92, 9);
// 在红色的 X 位置建造一个火焰陷阱
// 撤退到木的 X 位置。来避免伤害。
// 等雇佣兵发现闪亮的火焰陷阱
// 进入营地。放置火焰陷阱在红色的 X 位置
// 冲你的部队喊撤退(提示:使用 say 命令, "Retreat!")
// 逃回到左边的木的 X 位置
this.buildXY("fire-trap", 94, 19);
this.moveXY(79, 6);
this.moveXY(55, 9);
this.moveXY(79, 6);
this.moveXY(90, 53);
this.buildXY("fire-trap", 90, 53);
this.moveXY(60, 63);
this.buildXY("fire-trap", 60, 63);
this.moveXY(83, 56);
this.say("Retreat");
this.moveXY(79, 6);
this.moveXY(55, 14);
this.moveXY(11, 28);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14、森林劈裂者
// 尽可能常常使用你的新技能“cleave”
this.moveXY(23, 23);
loop {
var enemy = this.findNearestEnemy();
if (this.isReady("cleave")) {
// “Cleave”掉敌人。
this.cleave(enemy);
}
else {
// 否则(假设“cleave”还没准备好),就用你的普通攻击
this.attack(enemy);
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15、盾击
// 用shield盾牌和cleave顺势斩在两波进攻中活下来
// 假设cleave顺势斩没有准备好,就用你的shield盾牌技能。
// 你将会须要至少142健康值来保证活下来
loop {
var enemy = this.findNearestEnemy();
if (this.isReady("cleave")) {
this.cleave(enemy);
}
else {
this.shield();
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16、竞技场
// 在决斗中击败敌人的英雄。
loop {
// 在一个循环中找到并攻击敌人
// 当你完毕的时候,提交到多人天梯系统中!
var enemy = this.findNearestEnemy();
if (enemy) {
if (this.isReady("cleave")) {
this.cleave(enemy);
}
else {
this.attack(enemy);
}
}
else {
this.say("Hi Guy ! Come here !");
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17、保护农民
loop {
var enemy = this.findNearestEnemy();
var distance = this.distanceTo(enemy);
if (distance < 10) {
// 假设他们与农民太近,就攻击他们
if (this.isReady("cleave")) {
this.cleave(enemy);
}
else {
this.attack(enemy);
}
}
// 否则的话。呆在农民旁边!
else {
this.moveXY(40, 37);
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18、奥法盟友
// 拿下那些兽人
//注意提升装备
loop {
var enemy = this.findNearestEnemy();
if (enemy) {
this.attack(enemy);
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
19、收割小食人魔
// 铲除全部遗留的小食人魔
// 确保你有足够的护甲。
loop {
var enemy = this.findNearestEnemy();
if (enemy) {
if (this.isReady("cleave")) {
this.cleave(enemy);
}
else {
this.attack(enemy);
}
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20、測距仪
var enemy1 = "Gort";
var enemy2 = "Smasher";
var enemy3 = "Charles";
var enemy4 = "Gorgnub";
var distance1 = this.distanceTo(enemy1);
this.say(distance1);
// 大炮会毁掉 Gort!
// 找到另外两个食人魔的距离
var distance2 = this.distanceTo(enemy2);
this.say(distance2);
var distance3 = this.distanceTo(enemy4);
this.say(distance3);
// 说出距离,下指令开炮。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21、一大群小食人魔
loop {
// 检查与近期敌人的距离
var enemy = this.findNearestEnemy();
var distance = this.distanceTo(enemy);
// 假设它接近到10m以内,cleave掉它!
if (distance < 10) {
if (this.isReady("cleave")) {
this.cleave(enemy);
}
else {
this.attack(enemy);
}
}
// 否则,通过名字攻击宝箱(“Chest”)
else {
this.attack("Chest");
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22、移动中的精巧
// 你能够将一个if语句放到还有一个if语句其中。
// 可是。这样语句会变得非常复杂。因此你必须注意这些if语句是怎样互相影响的。
// 用凝视来描写叙述你的代码逻辑
// 在一个if/else语句中,对其里面的if/else进行凝视将会非常有帮助。例如以下所看到的:
loop {
var enemy = this.findNearestEnemy();
// 假设这是一名敌人,就...
if(enemy) {
// 声明一个名为distanceTo的变量来代表距离
var distance = this.distanceTo(enemy);
// 假设这名敌人小于5米的距离。那么attack()
if (distance < 5) {
this.attack(enemy);
}
// 否则(这名敌人还离非常远),就shield()
else {
this.shield();
}
// 否则(没有敌人...)
}
else {
// ...回到位置X
this.moveXY(40, 34);
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
番外篇:地牢39关~Kithgard斗殴
No、1
// 在一波波的食人魔攻击中活下来。
// 假设你赢了,本关会变得更难,但给很多其它的奖励。
// 假设你输了,你必须等一天之后才干又一次提交。
// 每次提交都会获得新的随机种子。
loop {
var enemy = this.findNearestEnemy();
if (enemy) {
this.attack(enemy);
}
}
No、2
//假设你的装备足够好
// 在一波波的食人魔攻击中活下来。
// 假设你赢了,本关会变得更难,但给很多其它的奖励。
// 假设你输了,你必须等一天之后才干又一次提交。
// 每次提交都会获得新的随机种子。
loop {
var enemy = this.findNearestEnemy();
if (enemy) {
if (this.isReady("cleave")) {
this.cleave(enemy);
}
else {
if (this.isReady("bash")) {
this.bash(enemy);
}
else {
this.attack(enemy);
}
}
}
var item = this.findNearestItem();
if (item) {
var pos = item.pos;
var x = pos.x;
var y = pos.y;
this.moveXY(x, y);
}
}
codecombat之边远地区的森林12-22关及地牢39关代码分享的更多相关文章
- codecombat之边远地区的森林1-11关及地牢38关代码分享
codecombat中国游戏网址:http://www.codecombat.cn/ 全部代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...
- CodeCombat地牢关卡Python代码
最近迷上了玩CodeCombat,特将地牢关卡的Python代码整理如下,供有兴趣的人学习交流探讨 1,Kithgard地牢 hero.moveRight() hero.moveDown() hero ...
- codecombat之KithGard地牢19-37关代码分享
codecombat中国游戏网址:http://www.codecombat.cn/ 全部代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 19 ...
- js 日期2015/12/22/16/45替换2015-12-22 16:45格式
js 日期2015/12/22/16/45替换2015-12-22 16:45格式 利用正则分组: function toChange(date) { var reg = /(\d+)\/(\d+)\ ...
- 12.22笔记(关于CALayer//Attributes//CALayer绘制图层//CALayer代理绘图//CALayer动画属性//CALayer自定义子图层//绘图pdf文件//绘图渐变效果)
12.22笔记 pdf下载文件:https://www.evernote.com/shard/s227/sh/f81ba498-41aa-443b-81c1-9b569fcc34c5/f033b89a ...
- (转)协议森林12 天下为公 (TCP堵塞控制)
协议森林12 天下为公 (TCP堵塞控制) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在TCP协议中,我们使用连接记录TCP ...
- 12.22 大湾区.NET Meet 大会
今年的 Connect(); 主题更加聚焦开发者工具生产力.开源,以及无服务器(Serverless)云服务. Visual Studio 2019 AI 智能加持的 IntelliCode.实时代码 ...
- 学习WindowsPhone 2013/12/22
菜鸟一枚,只能边看别人的博客变学习来提升自己,参考博客内容:http://blog.csdn.net/column/details/wp-comming.html?page=3 ,稍微看了一下,写的还 ...
- 2016/12/22 dplの课练
1.sort -nk 1 -t - 3 2.sort -nk 1 -t - 2 3.sort -nk 2 -t - 1 3./etc/passwd根据用户id的大小排序,从小到大的排序输出 sort ...
随机推荐
- ifsta---统计网络接口活动状态
ifstat命令就像iostat/vmstat描述其它的系统状况一样,是一个统计网络接口活动状态的工具.ifstat工具系统中并不默认安装,需要自己下载源码包,重新编译安装,使用过程相对比较简单. 下 ...
- Spring配置方式
Spring配置方式 第一阶段:xml配置 在spring 1.x时代,使用spring开发满眼都是xml配置的bean,随着项目的扩大, 我们需要把xml配置文件分放到不同的配置文件中,那时 ...
- HDU 4917 Permutation 拓扑排序的计数
题意: 一个有n个数的排列,给你一些位置上数字的大小关系.求合法的排列有多少种. 思路: 数字的大小关系可以看做是一条有向边,这样以每个位置当点,就可以把整个排列当做一张有向图.而且题目保证有解,所以 ...
- Java基础学习总结(26)——JNDI入门简介
JNDI是 Java 命名与目录接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之一,不少专家认为,没有透彻理解JNDI的意义和作用,就没有 ...
- ORA-12514: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
不指定数据库能够正常连接: 指定数据库和使用PL/SQL Developer都出现错误: 在此说明一下我的环境:Oralce装的是64位的在使用PL/SQL Developer时曾出现过初始化错误,解 ...
- Swift的闭包,枚举,类和结构体
闭包(Closures) 使用过其它语言的应该对代码块并不陌生,Swift中的闭包与C,OC中的Block相似. 表示自包括的函数代码块.能够在代码中传递和使用. 而且能够捕获和存储上下文的变量以及常 ...
- apiCloud如何打开新页面的同时,关掉当前页
方法很多,只要不同时open.close都可行.给你一个简单的方式: api.addEventListener({ name:'viewdisappear' },function(){ api.clo ...
- 创建带有IN类型参数的存储过程(四十八)
创建带有IN类型参数的存储过程 我们经常要从数据表中删除记录,一般情况我们删除记录都是根据id来删除的,比如我们通常要输入DELETE FROM 表名 WHERE 后面跟上我们的条件,因为我们要经常写 ...
- 消息推送学习一、原生Socket的使用
消息推送也是客户端和服务器连接然后进行交互的一种形式,但是不同于HTTP的连接,这种连接需要长时间的进行,当有消息时可以及时推送到客户端.除此之外还有多个用户,可能需要针对其身份进行不同的推送等等要求 ...
- CentOS 源设置
安装完CentOS后,系统默认的源可能有限满,这时我们需要添加国内比较好的源. 一.国内比较好的源https://opsx.alibaba.com/mirror #阿 ...