Тема:
Базовый синтаксис
Аргументы
Строки
Циклы
Условные операторы
Переменные
Цели:
Отразите все волны огров.
Руководство:
Информация
У вас есть новый меч с методом cleave() и солнечные часы с методом isReady().
cleave() — является специальной атакой, которая поражает всех врагов вокруге, но её нельзя часто использовать.
Перед тем как воспользоваться методом cleave() проверьте готов ли он.
1 2 3 4 |
if self.isReady("cleave"): self.cleave(enemy) else: self.attack(enemy) |
JavaScript:
1 2 3 4 5 |
if(this.isReady("cleave")) { this.cleave(enemy); } else { this.attack(enemy); } |
CoffeScript:
1 2 3 4 |
if @isReady("cleave") @cleave(enemy) else @attack(enemy) |
Clojure:
1 2 3 4 |
(if (.isReady this "cleave") (.cleave this enemy) (.attack this enemy) ) |
LUA:
1 2 3 4 5 |
if self:isReady("cleave") then self:cleave(enemy) else self:attack(enemy) end |
Обзор
Леса кишат ограми Жевунами, но у вас есть новый Длинный Меч, и его рассекательные (cleave) сделает работу по борьбе с ними короче! рассечение поражает всех врагов в пределах десяти метров от вашего героя.
Специальные способности, такие как рассечение(cleave) имеют время остывания, что означает, что вы не можете использовать их все время. (Вы можете рассекать только каждые десять секунд.) В первую очередь должны проверить, готовы ли они для использования. К счастью, ваши наручные солнечные часы дают метод isReady. Он показывает вам готовы ли специальные способности к использованию.
Сложив всё вместе, ваш код должен выполнятся по следующему пути:
loop
- find an enemy
- if
"cleave" is ready, then
- cleave the enemy
- else
- attack the enemy
Поместите курсор над isReady и Cleave на документации в нижнем правом углу, чтобы увидеть синтаксис для того, как их использовать.
Лесной рассекатель, прохождение:
Python:
1 2 3 4 5 6 7 8 9 10 11 12 |
# Используйте новую способность "cleave" как можно чаще. self.moveXY(23, 23) loop: enemy = self.findNearestEnemy() if self.isReady("cleave"): # Раскидайте врагов! self.cleave(enemy) pass else: # Иначе (если навык "cleave" не готов), просто атакуйте. self.attack(enemy) |
JavaScript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// Используйте новую способность "cleave" как можно чаще. this.moveXY(23, 23); loop { var enemy = this.findNearestEnemy(); if (this.isReady("cleave")) { // Раскидайте врагов! this.cleave(enemy); } else { // Иначе (если навык "cleave" не готов), просто атакуйте. this.attack(enemy); } } |
CoffeScript:
1 2 3 4 5 6 7 8 9 10 11 12 |
# Используйте новую способность "cleave" как можно чаще. @moveXY 23, 23 loop # @say "Delete this when your loop isn't infinite." enemy = @findNearestEnemy() if @isReady("cleave") # Раскидайте врагов! @cleave enemy else # Иначе (если навык "cleave" не готов), просто атакуйте. @attack enemy |
Clojure:
1 2 3 4 5 6 7 8 9 10 11 |
;; Используйте новую способность "cleave" как можно чаще. (.moveXY this 23 23) (dotimes [n 1000] (def enemy (.findNearestEnemy this)) (if (.isReady this "cleave") ;; Раскидайте врагов! (.cleave this enemy) ;; Иначе (если навык "cleave" не готов), просто атакуйте. (.attack this enemy) )) |
LUA:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
-- Используйте новую способность "cleave" как можно чаще. self:moveXY(23, 23) loop local enemy = self:findNearestEnemy() if self:isReady("cleave") then -- Раскидайте врагов! self:cleave(enemy) else -- Иначе (если навык "cleave" не готов), просто атакуйте. self:attack(enemy) end end |
Комментарии: