codecombat之Sarven沙漠1-12关代码分享

codecombat中国游戏网址:http://www.codecombat.cn/

所有代码为javascript代码分享

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1、沙丘

// 收集硬币,忽略砂耗牛和树榴。和投掷者,食人魔战斗。

loop {

enemy = this.findNearestEnemy();

item = this.findNearestItem();

flag = this.findFlag();

if (flag) {

this.pickUpFlag(flag);

}

if (enemy) {

if (enemy.type == "sand-yak" || enemy.type == "burl") {

// 别和砂耗牛,树榴打!赶紧收集硬币。

if (item) {

// 收集钱币。

var itemp = item.pos ;

var x = itemp.x ;

var y = itemp.y ;

this.moveXY(x, y);

}

}

// 但如果敌人的类型是『投掷者』或者『食人魔』,攻击他们

else {

if (this.isReady("cleave")) {

this.cleave(enemy);

}

if (this.isReady("bash")) {

this.bash(enemy);

}

else {

this.attack(enemy);

}

}

} else if (item) {

// 收集钱币。

var itempos = item.pos ;

var x1 = itempos.x ;

var y1 = itempos.y ;

this.moveXY(x1, y1);

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2、强壮的沙牦牛

// 当牦牛靠近时向右移动10米来躲避

// 躲避4头牦牛完成此关

loop {

// 使用 if 仅仅当牦牛少于10米距离的时候。

var enemy = this.findNearestEnemy();

var distance = this.distanceTo(enemy);

if (distance < 10) {

var x = this.pos.x + 10;

var y = this.pos.y;

this.moveXY(x, y);

}

// 向右移动加上你当前的 X 坐标

// 使用的灵石来感知 this.pos.

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

3、绿洲

// 向绿洲移动

// but move left to avoid nearby yaks.

loop {

var enemy = this.findNearestEnemy();

if (enemy && this.distanceTo(enemy) < 10) {

// 通过在你的X坐标上减去10来移动到左边

var x =this.pos.x - 10 ;

var y =this.pos.y ;

this.moveXY(x, y);

} else {

// 通过在你的X坐标上加上10来移动到右边

var x1 = this.pos.x + 10 ;

var y1 = this.pos.y ;

this.moveXY(x1, y1);

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

4、萨文路

// 到达绿洲。小心新的敌人:食人魔侦察兵!

// 通过添加你当前的X位置和Y位置以向上向右走

loop {

// 攻击任何你看到的敌人,或者一直向上向右走

var enemy = this.findNearestEnemy();

if (enemy) {

if (this.isReady("cleave")) {

this.cleave(enemy);

}

if (this.isReady("bash")) {

this.bash(enemy);

}

else {

this.attack(enemy);

}

}

else {

var x = this.pos.x + 10;

var y = this.pos.y + 10;

this.moveXY(x, y);

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

5、Sarven 的距离

// 每次向下移动10米,来走到绿洲。

// 在每个食人魔左边20米的位置建造栅栏。

loop {

enemy = this.findNearestEnemy();

if (enemy) {

// 在敌人左边建造20个单位的栅栏。

var  buildpos = enemy.pos ;

var x = buildpos.x - 20 ;

var y = buildpos.y ;

this.buildXY("fence", x, y);

} else {

// 每次向下移动10个单位。

var mypos = this.pos ;

var myx = mypos.x ;

var myy = mypos.y - 10;

this.moveXY(myx, myy);

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

6、雷蹄

// 到达绿洲,

// 用栅栏引导砂牦牛到你去的地方

loop {

var yak = this.findNearestEnemy();

if (yak) {

// 如果它的 y 值大于你的,那么耗牛在你前面

// 如果耗牛在你前面,在它后面10米建立一个栅栏

var x = yak.pos.x ;

var y = yak.pos.y ;

if (yak.pos.y > this.pos.y) {

y -= 10 ;

this.buildXY("fence", x, y);

}

// 如果耗牛在你后面,在它前面10m 建立一个栅栏

else {

y += 10 ;

this.buildXY("fence", x, y);

}

} else {

// 向右移动10走向绿洲

this.moveXY(this.pos.x + 10, this.pos.y);

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

7、医疗注意

// 向救助者求救,当你的生命低于1/3的时候

loop {

var currentHealth = this.health;

var healingThreshold = this.maxHealth / 3;

var enemy = this.findNearestEnemy();

// 如果你当前的健康值少于下限,

// 移动到治疗点说『heal me』

// 否则的话,攻击。你需要战斗的更狠点!

if (currentHealth < healingThreshold) {

this.moveXY(65, 46);

this.say("『heal me』");

}

else {

if (this.isReady("bash")) {

this.bash(enemy);

}

if (this.isReady("cleave")) {

this.cleave(enemy);

}

else {

this.attack(enemy);

}

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

8、大量牦牛受惊事件

// 通过挡住野兽们来的路来保护村庄。

// 移动到更近的红色 X 位置

// 建造一个栅栏

this.moveXY(70, 26);

this.moveXY(55, 17);

this.moveXY(12, 30);

this.moveXY(31, 51);

this.buildXY("fence", 38, 53);

this.moveXY(14, 29);

this.moveXY(71, 27);

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

9、扫雷

// 让农民和他们的拯救者通过雷区。

// 移动金币,触发火焰陷阱。

// The mines are randomized, so use findItems.

// 向后移动十米,然后喊『heal』 如果你的生命值低了。

loop {

var items = this.findNearestItem();

if (items) {

var item = items.pos;

var x = item.x ;

var y = item.y ;

this.moveXY(x, y);

}

if (this.health < this.maxHealth / 2) {

this.moveXY(this.pos.x - 10, this.pos.y);

this.say("heal");

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

10、Sarven 哨兵

// 使用不同的颜色旗子来执行不同的任务。

loop {

var flagGreen = this.findFlag("green");

var flagBlack = this.findFlag("black");

var flagViolet = this.findFlag("violet");

// 如果是绿色旗子,就建立一个栅栏。

if (flagGreen) {

var flagpos = flagGreen.pos;

var x = flagpos.x ;

var y = flagpos.y ;

this.pickUpFlag(flagGreen);

this.buildXY("fence", x, y);

}

// 如果是黑色旗子,就建立一个火焰陷阱

if (flagBlack) {

var flagpos1 = flagBlack.pos;

var x1 = flagpos1.x ;

var y1 = flagpos1.y ;

this.pickUpFlag(flagBlack);

this.buildXY("fire-trap", x1, y1);

}

// 如果是紫罗兰色的旗子,就移动到目标位置。

if (flagViolet) {

this.pickUpFlag(flagViolet);

}

// 记住要捡起旗子,在你都完成之后!

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

11、节约时间

// 使用你的新技能来选择你要做什么 this.now()

loop {

// 如果是头十秒,进攻。

var enemy =this.findNearestEnemy();

if (this.now() < 10) {

if (enemy) {

if (this.isReady("cleave")) {

this.cleave(enemy);

}

else {

this.attack(enemy);

}

}

}

else if (this.now() < 30) {

var item = this.findNearestItem();

var x = item.pos.x ;

var y = item.pos.y ;

this.moveXY(x, y);

}

// 否则的话,如果是前30秒,收集金币。

// 后30秒,加入救助。

else if (enemy) {

if (this.isReady("bash")) {

this.bash(enemy);

}

if (this.isReady("cleave")) {

this.cleave(enemy);

}

else {

this.attack(enemy);

}

}

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

12、囤积黄金

// 收集25金币,然后告诉 Naria 总数

// 使用 break 来停止收集金币当金币总数大于25.

var totalGold = 0;

loop {

var coin = this.findNearestItem();

// 捡起金币

var x = coin.pos.x ;

var y = coin.pos.y ;

this.moveXY(x, y);

// 将金币的价值加进 totalGold.(查看帮助了解更多.)

// 得到它的价值用:  coin.value

totalGold += coin.value;

if (totalGold >= 25) {

// >=意思是总金币数大于等于25

// 这会中断循环并且执行循环下面的语句

break;

}

}

// 完成收集金币!

this.moveXY(58, 33);

// 去找 Naria 告诉他你收集了多少金币

this.say(totalGold);

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

版权声明:本文为博主原创文章,喜欢就拿去吧!^-^

时间: 2024-10-19 07:38:46

codecombat之Sarven沙漠1-12关代码分享的相关文章

codecombat安息之云山峰41关代码分享

codecombat中国游戏网址: http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 41.Summit's Gate //需要一个好的操作 // Fight your way into the Inner Sanctum of the ogre chieftain, and kill her. this.flags = function(){ var flagg = this.findFlag

codecombat安息之云山峰22-31关代码分享

codecombat中国游戏网址: http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 22.躁动的死亡 // 这个关卡应该是非常难的!你也许需要一个很棒的战略与或装置去完成它! // 找到然后杀死雪人,为了仪式去收集他的血液. // 你也许想收集雪人遗留下的金币,你需要他们去召唤一只军队. // 站在召唤石旁(红色X),开始召唤. // this.flags = function(){ var 

codecombat之Sarven沙漠13-24关及森林45/46关代码分享

codecombat中国游戏网址:http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13.诱饵钻 // 我们在测试一个新的战斗单位:诱饵. // 创建4个诱饵,然后汇报给 Naria var decoysBuilt = 0; loop { var item = this.findNearest(this.findItems()); // 掠夺金币! var x = item.pos

codecombat之Sarven沙漠25-37关代码分享

codecombat中国游戏网址:http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 25.捡闪亮东西的人 // 很快的获取最多的金币 loop { var coins = this.findItems(); var coinIndex = 0; while (coinIndex < coins.length) { // 把这个封装进循环里枚举所有的硬币 var coin = coi

codecombat安息之云山峰11-21关及沙漠38关代码分享

codecombat中国游戏网址: http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 11.零和 // 在两分钟内击败敌方英雄. loop { var enemies = this.findEnemies(); var nearestEnemy = this.findNearest(enemies); var item = this.findNearest(this.findIte

codecombat之边远地区的森林31-44关代码分享

codecombat中国游戏网址: http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 31.为援兵坚持住 // 食人魔正在爬悬崖 // 为集结民兵组织保护足够长时间的农民. loop { var flag = this.findFlag(); var enemy = this.findNearestEnemy(); if (flag) { // 捡旗子 this.pickUpFla

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.atta

codecombat安息之云山峰32-36关及森林49关代码分享

codecombat中国游戏网址: http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 32.Sowing Fire // Goal: build three rows of nine fire-traps. // Returns "retreat", "attack", "start-next-trap-column", or "bui

codecombat之边远地区的森林23-30关及地牢40\41关代码分享

codecombat中国游戏网址: http://www.codecombat.cn/ 所有代码为javascript代码分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 23.Agrippa防守 loop { var enemy = this.findNearestEnemy(); if(enemy) { // 用 distanceTo 获取与敌人的距离. var distance = this.distanceTo(enemy); // 如果距离小于5米...