极客战记-小心陷阱
1、选择英雄和编程语言

2、选择装备

3、写中文注释

1、写代码
# 如果你试图攻击一个远处的敌人,你的英雄会忽略掉所有的旗子而朝它冲过去。
# 你需要确保你只攻击靠近自己的敌人!
while True:
flag = hero.findFlag()
enemy = hero.findNearestEnemy()
if flag:
# 去拔旗子。
hero.pickUpFlag(flag)
hero.say("我应该去把旗子拔起来。")
elif enemy:
# 仅当敌人的距离小于10米时才攻击。
if hero.distanceTo(enemy)<10:
if hero.isReady("cleave"):
hero.cleave(enemy)
else:
hero.attack(enemy)

2、运行

1、写代码
// 如果你试图攻击一个远处的敌人,你的英雄会忽略掉所有的旗子而朝它冲过去。
// 你需要确保你只攻击靠近自己的敌人!
while (true) {
var flag = hero.findFlag();
var enemy = hero.findNearestEnemy();
if (flag) {
// 去拔旗子。
hero.pickUpFlag(flag);
} else if (enemy) {
// 仅当敌人的距离小于10米时才攻击。
var distance = hero.distanceTo(enemy);
if (distance < 10) {
var ready = hero.isReady("cleave");
if (ready) {
hero.cleave(enemy);
} else {
hero.attack(enemy);
}
}
}
}

2、运行

1、写代码
# 如果你试图攻击一个远处的敌人,你的英雄会忽略掉所有的旗子而朝它冲过去。
# 你需要确保你只攻击靠近自己的敌人!
loop
flag = @findFlag()
enemy = @findNearestEnemy()
if flag
# 去拔旗子。
@pickUpFlag(flag)
@say "我应该去把旗子拔起来。"
else if enemy
# 仅当敌人的距离小于10米时才攻击。
distance = @distanceTo(enemy)
if distance<10
ready = hero.isReady "cleave"
if ready
@cleave enemy
else
@attack enemy

2、运行

1、写代码
-- 如果你试图攻击一个远处的敌人,你的英雄会忽略掉所有的旗子而朝它冲过去。
-- 你需要确保你只攻击靠近自己的敌人!
while true do
local flag = hero:findFlag()
local enemy = hero:findNearestEnemy()
if flag then
-- 去拔旗子。
hero:pickUpFlag(flag)
hero:say("我应该去把旗子拔起来。")
elseif enemy then
-- 仅当敌人的距离小于10米时才攻击。
if hero:distanceTo(enemy)<10 then
if hero:isReady("cleave") then
hero:cleave(enemy)
else
hero:attack(enemy)
end
end
end
end

2、运行
