ClojureX — Клёвый код https://coolcode.ru Скриптописание и кодинг Thu, 31 Mar 2016 04:19:18 +0000 ru-RU hourly 1 https://wordpress.org/?v=5.8.13 https://coolcode.ru/wp-content/uploads/2015/10/YO1-150x150.png ClojureX — Клёвый код https://coolcode.ru 32 32 CodeCombat. Лес Темнодрев. Самоцветы или смерть (Gems or Death) https://coolcode.ru/code-combat-les-temnodrev-samotsvetyi-ili-smert/ https://coolcode.ru/code-combat-les-temnodrev-samotsvetyi-ili-smert/#respond Tue, 29 Mar 2016 10:09:03 +0000 http://coolcode.ru/?p=6927

ccForest5

Тема:

Базовый синтаксис

Аргументы

Условные операторы

Арифметика

Переменные

Цели:

Соберите все самоцветы.

Руководство:

Информация

ccForest5b

Сделать конструкцию if-true для команд, которые вы хотите выполнить, и if-false для команд, которые вы не хотите выполнять.

Помните, что оператор == означает «равно?»

1 + 2 == 3 верно

3 + 3 ==5 ложно.

В Clojure оператор «равно?» выглядит как «=»

(= (1+2) 3) верно.

(= (3+3) 5) ложно.

Обзор

Этот уровень это всё операторы если. В самом деле, вы вообще не должны писать код. Ваша работа отладка.

Всё, что вам нужно сделать, это исправить if выражение так, чтобы ваш герой выполнял те действия, которые вы хотите. И не выполнял, те что вы не хотите, что бы он делал.

Блок кода внутри управляемого блока (тело ) будет выполнятся только если условие отрабатывает, как истина.

Возьмём например первый if:

Python:
if 1 + 1 + 1 == 3:
    self.moveXY(5, 15)  # Идите к первой группе мин.

JavaScript:
if(1 + 1 + 1 == 3) {
    this.moveXY(5, 15)  # Идите к первой группе мин.
}

CoffeScript:
if 1 + 1 + 1 is 3
    @moveXY(5, 15)  # Идите к первой группе мин.

Clojure:
(if (= (+ 1 1 1) 3)  ;; ∆ Make this false.
    (.moveXY this 5 15))  ;; Идите к первой группе мин.

LUA:
if 1 + 1 + 1 == 3 then
    self:moveXY(5, 15)  # Move to the first mines.
end
 Так как 1+1+1 равно 3, то это правда. Поэтому мы идём к первой группе мин.
Если вы не хотите умирать, измените либо «1+1+1» либо «3», так что бы неравенство больше не являлось бы истинным (далее в коде вы так же увидите, что вы можете изменить)
Затем продолжайте изменять условие в операторе, и делайте его истинным или ложным в зависимости от того хотите ли вы, что бы действие внутри блока случалось.

 

Награда:

34xccXP 40xccCrystal

Бонус за чистый код:

17xccXP 20xccCrystal

Самоцветы или смерть, прохождение:

Python:

# Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся только если условие будет выполнено.
# Исправьте все if-операторы для прохождения уровня.

# == значит "равно ли", т.е. сравнение.
if 1 + 1 + 1 == 4:  # ∆ Make this false.
    self.moveXY(5, 15)  # Идите к первой группе мин.

if 2 + 2 == 4:  # ∆ Make this true.
	self.moveXY(15, 40)  # Идите к первому самоцвету.

# != значит "не равно".
if 2 + 2 != 3:  # ∆ Make this true.
	self.moveXY(25, 15)  # Идите ко второму самоцвету.
	
# < значит "меньше чем".
if 2 + 2 < 5:  # ∆ Make this true.
    enemy = self.findNearestEnemy()
    self.attack(enemy)

if 2 < 1:  # ∆ Make this false.
	self.moveXY(40, 55)

if False:  # ∆ Make this false.
	self.moveXY(50, 10)

if True:  # ∆ Make this true.
	self.moveXY(55, 25)

JavaScript:

// Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся только если условие будет выполнено.
// Исправьте все if-операторы для прохождения уровня.

// == значит "равно ли", т.е. сравнение.
if (1 + 1 + 1 == 4) {  // ∆ Make this false.
    this.moveXY(5, 15);  // Идите к первой группе мин.
}
if (2 + 2 == 4) {  // ∆ Make this true.
	this.moveXY(15, 40);  // Идите к первому самоцвету.
}
// != значит "не равно".
if (2 + 2 != 3) {  // ∆ Make this true.
	this.moveXY(25, 15);  // Идите ко второму самоцвету.
}
// < значит "меньше чем".
if (2 + 2 < 5) {  // ∆ Make this true.
    var enemy = this.findNearestEnemy();
    this.attack(enemy);
}
if (2 < 1) {  // ∆ Make this false.
	this.moveXY(40, 55);
}
if (false) {  // ∆ Make this false.
	this.moveXY(50, 10);
}
if (true) {  // ∆ Make this true.
	this.moveXY(55, 25);
}

CoffeScript:

# Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся только если условие будет выполнено.
# Исправьте все if-операторы для прохождения уровня.

if 1 + 1 + 1 is 4  # ∆ Make this false.
    @moveXY 5, 15  # Идите к первой группе мин.

if 2 + 2 is 4  # ∆ Make this true.
	@moveXY 15, 40  # Идите к первому самоцвету.

if 2 + 2 isnt 3  # ∆ Make this true.
	@moveXY 25, 15  # Идите ко второму самоцвету.
	
# < значит "меньше чем".
if 2 + 2 < 5  # ∆ Make this true.
    enemy = @findNearestEnemy()
    @attack enemy

if 2 < 1  # ∆ Make this false.
	@moveXY 40, 55

if false  # ∆ Make this false.
	@moveXY 50, 10

if true  # ∆ Make this true.
	@moveXY 55, 25

Clojure:

;; Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся только если условие будет выполнено.
;; Исправьте все if-операторы для прохождения уровня.

;; = значит "равно".
(if (= (+ 1 1 1) 4)  ;; ∆ Make this false.
    (.moveXY this 5 15))  ;; Идите к первой группе мин.

(if (= (+ 2 2) 4)  ;; ∆ Make this true.
	(.moveXY this 15 40))  ;; Идите к первому самоцвету.

;; not= значит "не равно".
(if (not= (+ 2 2) 5)  ;; ∆ Make this true.
	(.moveXY this 25 15))  ;; Идите ко второму самоцвету.
	
;; < значит "меньше чем".
(def enemy (.findNearestEnemy this))
(if (< (+ 2 2) 5)  ;; ∆ Make this true.
    (.attack this enemy))

(if (< 2 1)  ;; ∆ Make this false.
	(.moveXY this 40 55))

(if false  ;; ∆ Make this false.
	(.moveXY this 50 10))

(if true  ;; ∆ Make this true.
	(.moveXY this 55 25))

LUA:

-- Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся только если условие будет выполнено.
-- Исправьте все if-операторы для прохождения уровня.

-- == значит "равно ли", т.е. сравнение.
if 1 + 1 + 1 == 4 then  -- ∆ Make this false.
    self:moveXY(5, 15)  -- Идите к первой группе мин.
end

if 2 + 2 == 4 then  -- ∆ Make this true.
	self:moveXY(15, 40)  -- Идите к первому самоцвету.
end

-- ~= значит "не равно".
if 2 + 2 ~= 3 then  -- ∆ Make this true.
	self:moveXY(25, 15)  -- Идите ко второму самоцвету.
end
	
-- < значит "меньше чем".
if 2 + 2 < 5 then  -- ∆ Make this true.
    local enemy = self:findNearestEnemy()
    self:attack(enemy)
end

if 2 < 1 then  -- ∆ Make this false.
	self:moveXY(40, 55)
end

if false then  -- ∆ Make this false.
	self:moveXY(50, 10)
end

if true then  -- ∆ Make this true.
	self:moveXY(55, 25)
end

Прохождение Code Combat

]]>
https://coolcode.ru/code-combat-les-temnodrev-samotsvetyi-ili-smert/feed/ 0
CodeCombat. Лес Темнодрев. Бурл бьётся с Булем (Burls Beets Booleans) https://coolcode.ru/code-combat-les-temnodrev-burl-byotsya-s-bulem/ https://coolcode.ru/code-combat-les-temnodrev-burl-byotsya-s-bulem/#respond Mon, 28 Mar 2016 09:47:24 +0000 http://coolcode.ru/?p=6924

ccForest4

Тема:

Базовый синтаксис

Аргументы

Строки

 

Цели:

Ответьте правильно на все вопросы.

Руководство:

Заметки

Что такое булев тип (Boolean)?

Булев тип это тип данных, такойже, как и String (Строка) или Number (Число)

Строка это текст, как правило записываемый в двойных кавычках. Например,

"Это строка."

Булев тип принимает значения ИСТИНА или ЛОЖЬ. В зависимости от используемого языка программирования написание значений может различаться.

В языке Python эти значения

True
и
False
(обратите внимание на первые заглавные буквы).

Для языков JavaScript и CoffeeScript булев тип принимает значения 

true
или
false
(все буквы строчные!).

Зачем используется булев тип? Отвечаем на вопросы.

Иногда бывает полезным определить, является ли ответ на вопрос истиным или ложным!

Один из самых задаваемых вопросов это РАВЕНСТВО: «A равняется B?»

Чтобы задать такой вопрос в коде, мы используем оператор равенства, который записывается как

==
.

Об операторе «==» можно думать как о вопросе «это равно тому?». Так, чтобы спросить «A равняется B?» нужно написать

A == B
.

Важные замечания:

Помните, как мы присваивали переменным значения, используя код вроде

enemy = self.findNearestEnemy()
?

Обратите внимание, что оператор присвоения это одиночный знак равенства:

=
.

Тогда как оператор равенства использует два знака:

==
.

Программисты пролили моря слез, пытаясь найти баг, вызванный использованием одного знака

=
вместо двух!

Кроме того, следует заметить, что строка

"true"
это не тоже самое, что и булево значение
true
! Хотя, в данном уровне, Бурл примет ваш ответ, если вы скажите так. Бурлы в этом плане хорошие.

Награда:

48xccXP 32xccCrystal

 

Большой кусака, прохождение:

Python:

# Булев тип принимает значения True или False
# Символ == означает "это равно тому?"
# Так, строка "А == B" задает вопрос "A равняется B?"
# Ответ должен быть булевым значением!
# Нажмите кнопку "Помощь", если Вы запутались!

# Вопрос: 2 == 3 
# Произнесите правильный ответ:
self.say(False)

# Вопрос: 3 == 3
# Ответьте ложь или истина на вопрос 2:
self.say(True)

# Вопрос: "Three" == 3
# Ответьте ложь или истина на вопрос 3:
self.say(False)

# Вопрос: "Three" == "Three"
# Ответьте ложь или истина на вопрос 4:
self.say(True)

# Вопрос: 1 + 2 == 3
# Ответьте ложь или истина на вопрос 5:
self.say(True)

JavaScript:

// Значением булева типа могут быть либо истина, либо ложь
// Символ == означает "это равно тому?"
// Так, строка "А == B" задает вопрос "A равняется B?"
// Ответ должен быть булевым значением!
// Нажмите кнопку "Помощь", если Вы запутались!

// Вопрос: 2 == 3 
// Произнесите правильный ответ:
this.say(false);

// Вопрос: 3 == 3
// Ответьте ложь или истина на вопрос 2:
this.say(true);

// Вопрос: "Three" == 3
// Ответьте ложь или истина на вопрос 3:
this.say(false);

// Вопрос: "Three" == "Three"
// Ответьте ложь или истина на вопрос 4:
this.say(true);

// Вопрос: 1 + 2 == 3
// Ответьте ложь или истина на вопрос 5:
this.say(true);

CoffeScript:

# Значением булева типа могут быть либо истина, либо ложь
# Символ == означает "это равно тому?"
# Так, строка "А == B" задает вопрос "A равняется B?"
# Ответ должен быть булевым значением!
# Нажмите кнопку "Помощь", если Вы запутались!

# Вопрос: 2 == 3 
# Произнесите правильный ответ:
@say false

# Вопрос: 3 == 3
# Ответьте ложь или истина на вопрос 2:
@say true

# Вопрос: "Three" == 3
# Ответьте ложь или истина на вопрос 3:
@say false

# Вопрос: "Three" == "Three"
# Ответьте ложь или истина на вопрос 4:
@say true

# Вопрос: 1 + 2 == 3
# Ответьте ложь или истина на вопрос 5:
@say true

Clojure:

;; Булев тип принимает значения True или False
;; Символ == означает "это равно тому?"
;; Так, строка "А == B" задает вопрос "A равняется B?"
;; Ответ должен быть булевым значением!
;; Нажмите кнопку "Помощь", если Вы запутались!

;; Вопрос: 2 == 3 
;; Произнесите правильный ответ:
(.say this false)

;; Вопрос: 3 == 3
;; Ответьте ложь или истина на вопрос 2:
(.say this true)

;; Вопрос: "Three" == 3
;; Ответьте ложь или истина на вопрос 3:
(.say this false)

;; Вопрос: "Three" == "Three"
;; Ответьте ложь или истина на вопрос 4:
(.say this true)

;; Вопрос: 1 + 2 == 3
;; Ответьте ложь или истина на вопрос 5:
(.say this true)

LUA:

-- Булев тип принимает значения True или False
-- Символ == означает "это равно тому?"
-- Так, строка "А == B" задает вопрос "A равняется B?"
-- Ответ должен быть булевым значением!
-- Нажмите кнопку "Помощь", если Вы запутались!

-- Вопрос: 2 == 3 
-- Произнесите правильный ответ:
self:say(false)

-- Вопрос: 3 == 3
-- Ответьте ложь или истина на вопрос 2:
self:say(true)

-- Вопрос: "Three" == 3
-- Ответьте ложь или истина на вопрос 3:
self:say(false)

-- Вопрос: "Three" == "Three"
-- Ответьте ложь или истина на вопрос 4:
self:say(true)

-- Вопрос: 1 + 2 == 3
-- Ответьте ложь или истина на вопрос 5:
self:say(true)

Прохождение Code Combat

]]>
https://coolcode.ru/code-combat-les-temnodrev-burl-byotsya-s-bulem/feed/ 0
CodeCombat. Лес Темнодрев. Большой кусака (Thumb Biter) https://coolcode.ru/code-combat-les-temnodrev-bolshoy-kusaka/ https://coolcode.ru/code-combat-les-temnodrev-bolshoy-kusaka/#respond Sun, 27 Mar 2016 06:58:08 +0000 http://coolcode.ru/?p=6919

ccForest3

Тема:

Базовый синтаксис

Аргументы

Строки

Условные операторы

Арифметика

Цели:

 

Примени огра к его погибели.

Руководство:

Информция:

 ccForest3b
Используй оператор сравнения (==) для проверки, что обе стороны неравенства совпадают.
 Python:
if 2 + 2 == 4:
    self.say("2 + 2 equals 4!") # Выполняется всегда, потому что 2 +2 это 4!
if 2 + 3 == 4:
    self.say("2 + 3 equals 4!") # Никогда не выполнится, потому что 2 + 3 это не 4!

JavaScript:
if(2 + 2 == 4) {
    this.say("2 + 2 equals 4!"); // Выполняется всегда, потому что 2 +2 это 4!
if(2 + 3 == 4) {
    this.say("2 + 3 equals 4!"); // Никогда не выполнится, потому что 2 + 3 это не 4!
}

CoffeScript:
# Coffeescript can use 'is' instead of '=='
if 2 + 2 == 4
    @say("2 + 2 equals 4!") # Выполняется всегда, потому что 2 +2 это 4!
if 2 + 3 == 4
    @say("2 + 3 equals 4!") # Никогда не выполнится, потому что 2 + 3 это не 4!

Clojure:
(if (= (+ 2 2) 4)
    (.say this "2 + 2 equals 4!")) ;;Выполняется всегда, потому что 2 +2 это 4!

(if (= (+ 2 2) 5)
    (.say this "2 + 3 equals 4!")) ;;Никогда не выполнится, потому что 2 + 3 это не 4!

LUA:
if 2 + 2 == 4 then
    self:say("2 + 2 equals 4!") -- Выполняется всегда, потому что 2 +2 это 4!
end
if 2 + 3 == 4 then
    self:say("2 + 3 equals 4!") -- Никогда не выполнится, потому что 2 + 3 это не 4!
end

Обзор:

Этот уровень вводит очень много новых понятий.

Для того, чтобы добиться успеха, вам нужно исправить условия оператора if так, чтобы ваш герой говорил с великаном, тем самым заманивая его в ловушку.
Блок Кода  в теле оператора if будут выполняться только тогда, когда выполняется условие (оно математическое), и оно истинно.
Достаточно истинных If и людоед попадёт в ловушку пытаясь добраться до вас!
Если это сбивает вас толку, то читайте дальше! Там рассказывается более подробно:
Boolean
Логическое значение означает, что чтолибо истинно или ложно.

Определять является ли что то Истинным или Ложным  является сложной темой  в программировании, но сейчас мы начнем с простого примера.
Знак сравнения: Равенство
Используйте операторы сравнения для сравнения двух значений. Результатом данного оператора будет истинна или лож.
Первый оператор сравнения мы будем использовать оператор равенства.

В Python, JavaScript, CoffeScript и LUA это записывается как: ==. В Clojure оператором сравнения является =.
Отметим, что в Python, JavaScript и LUA операторы «=» и «==» это два разных оператор «==» логический, в отличие от оператора «=» который является оператором присваивания и используется для присваивания значения переменной! Перепутать эти два оператора, это распространенная ошибка новичков в программировании!
Мы используем «==» следующим образом:
4 == 4 (это верно)
4 == 5 (это ложь)
Мы можем также совместить это с другими математическими операторами, например, с оператором сложения «+»:
2 + 2 == 4 (это верно)
2 + 2 == 5 (это ложь)

в CoffeScript оператором сравнения является оператор is

следовательно используя оператор is запишем предыдущие выражения:

4 is 4 (это верно)

4 is 5 (это ложь)

Можно так же совмещать данный оператор с другими операторами, например со сложением:

2 + 2 is 4 (это верно)

2 + 2 is 5 (это ложь)

В Clojure оператором сравнения является «=», и  используется следущим образом:

(= 4 4)  (это верно)

(= 4 5)  (это ложь)

Так же как и в других языках мы можем совместить эту запись с другими математическими операторами, например с «+»:

(= (+ 2 2) 4) (это верно)

(= (+ 2 2) 5) (это ложь)
Условный оператор: if
,Утверждение Если(if)  говорит: «Если(if) это правда, то(then) это сделать»

 Python:
if 2 + 2 == 4:
    self.say("2 + 2 equals 4!") # Выполняется всегда, потому что 2 +2 это 4!
if 2 + 3 == 4:
    self.say("2 + 3 equals 4!") # Никогда не выполнится, потому что 2 + 3 это не 4!

JavaScript:
if(2 + 2 == 4) {
    this.say("2 + 2 equals 4!"); // Выполняется всегда, потому что 2 +2 это 4!
}
if(2 + 3 == 4) {
    this.say("2 + 3 equals 4!"); // Никогда не выполнится, потому что 2 + 3 это не 4!
}

CoffeScript:
# Coffeescript can use 'is' instead of '=='
if 2 + 2 == 4
    @say("2 + 2 equals 4!") # Выполняется всегда, потому что 2 +2 это 4!
if 2 + 3 == 4
    @say("2 + 3 equals 4!") # Никогда не выполнится, потому что 2 + 3 это не 4!

Clojure:
(if (= (+ 2 2) 4)
    (.say this "2 + 2 equals 4!")) ;;Выполняется всегда, потому что 2 +2 это 4!

(if (= (+ 2 2) 5)
    (.say this "2 + 3 equals 4!")) ;;Никогда не выполнится, потому что 2 + 3 это не 4!

LUA:
if 2 + 2 == 4 then
    self:say("2 + 2 equals 4!") -- Выполняется всегда, потому что 2 +2 это 4!
end
if 2 + 3 == 4 then
    self:say("2 + 3 equals 4!") -- Никогда не выполнится, потому что 2 + 3 это не 4!
end

 

Награда:

32xccXP 39xccCrystal

Бонус за чистый код:

16xccXP 19xccCrystal

 

Большой кусака, прохождение:

Python:

# Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся ,только если условие в скобках будет выполнено.
# == обозначает "равно ли", т.е. сравнение.
if 2 + 2 == 4:
    self.say("Hey!")
if 2 + 2 == 4:
    self.say("Yes, you!")

# Измени оператор так , чтобы заставить твоего героя крикнуть: "Иди ко мне!"
if 3 + 3 == 6:  # ∆ Make this true.
    self.say("Come at me!")

if 2 == 2:  # ∆ Make this true.
    # Добавь еще одну насмешку чтобы приманить огра. Подойди к делу творчески!
    self.say("Do not go here, there is a trap!")

JavaScript:

// Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся ,только если условие в скобках будет выполнено.
// == обозначает "равно ли", т.е. сравнение.
if (2 + 2 == 4) {
    this.say("Hey!");
}
if (2 + 2 == 4) {
    this.say("Yes, you!");
}

// Измени оператор так , чтобы заставить твоего героя крикнуть: "Иди ко мне!"
if (3 + 3 == 6) {  // ∆ Make this true.
    this.say("Come at me!");
}

if (2 == 2) {  // ∆ Make this true.
    // Добавь еще одну насмешку чтобы приманить огра. Подойди к делу творчески!
    this.say("Do not go here, there is a trap!");
}

CoffeScript:

# Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся ,только если условие в скобках будет выполнено.

if 2 + 2 is 4
    @say "Hey!"
if 2 + 2 is 4
    @say "Yes, you!"

# Измени оператор так , чтобы заставить твоего героя крикнуть: "Иди ко мне!"
if 3 + 3 is 6  # ∆ Make this true.
    @say "Come at me!"

if 2 is 20  # ∆ Make this true.
    # Добавь еще одну насмешку чтобы приманить огра. Подойди к делу творчески!
    @say "Do not go here, there is a trap!"

Clojure:

;; Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся ,только если условие в скобках будет выполнено.
;; = обозначает "равно".
(if (= (+ 2 2) 4)
    (.say this "Hey!"))
(if (= (+ 2 2) 4)
    (.say this "Yes, you!"))

;; Измени оператор так , чтобы заставить твоего героя крикнуть: "Иди ко мне!"
(if (= (+ 3 3) 6)  ;; ∆ Make this true.
    (.say this "Come at me!"))

(if (= 2 2)  ;; ∆ Make this true.
    ;; Добавь еще одну насмешку чтобы приманить огра. Подойди к делу творчески!
    (.say this "Do not go here, there is a trap!")
)

LUA:

-- Команды, находящиеся в теле if-оператора, написанные ниже будут исполнятся ,только если условие в скобках будет выполнено.
-- == обозначает "равно ли", т.е. сравнение.
if 2 + 2 == 4 then
    self:say("Hey!")
end
if 2 + 2 == 4 then
    self:say("Yes, you!")
end

-- Измени оператор так , чтобы заставить твоего героя крикнуть: "Иди ко мне!"
if 3 + 3 == 6 then  -- ∆ Make this true.
    self:say("Come at me!")
end

if 2 == 2 then  -- ∆ Make this true.
    -- Добавь еще одну насмешку чтобы приманить огра. Подойди к делу творчески!
    self:say("Do not go here, there is a trap!")
end

Прохождение Code Combat

]]>
https://coolcode.ru/code-combat-les-temnodrev-bolshoy-kusaka/feed/ 0
CodeCombat. Лес Темнодрев. Извилистая тропа (Winding Trail) https://coolcode.ru/code-combat-les-temnodrev-izvilistaya-tropa/ https://coolcode.ru/code-combat-les-temnodrev-izvilistaya-tropa/#respond Sat, 26 Mar 2016 05:50:56 +0000 http://coolcode.ru/?p=6911

ccForest2

Тема:

Базовый синтаксис

Аргументы

Строки

Цели:

Ваш герой должен выжить.

Пройдите до конца тропы.

Бонус: собери 2 самоцвета

Руководство:

Заметки

Забудьте свои старые простые сапоги

moveRight
! Новые кожаные сапоги
<strong>moveXY</strong> 
позволяют передвигаться в любую точку. У них даже есть встроенный поиск пути. Круто, да?

Так же, как и при использовании

buildXY
, вы можете навести на любую точку уровня, и получить координаты
x
и
y
, для дальнейшего движения к ней.

Остановите огра, построив забор на месте, обозначенным Х. Выполните бонусные цели для получения дополнительных самоцветов, проявив смекалку.

Награда:

31xccXP 38xccCrystal ccprogrammatikonII

Бонус за 2 кристала:

12xccXP 15xccCrystal

Бонус за 6 кристалов:

12xccXP 15xccCrystal

Извилистая тропа, прохождение:

Python:

# Пройдите до конца тропы и постройте забор. Ну, или ловушечку, чтобы собрать больше самоцветов.
# Используйте функцию  moveXY(x, y) .

self.moveXY(36, 60)
self.moveXY(37, 13)
self.buildXY("fire-trap", 71, 25)
self.moveXY(72, 18)
self.moveXY(54, 23)
self.moveXY(73, 62)

JavaScript:

// Пройдите до конца тропы и постройте забор. Ну, или ловушечку, чтобы собрать больше самоцветов.
// Используйте функцию  moveXY(x, y) .

this.moveXY(34, 45);
this.moveXY(36, 60);
this.moveXY(37, 13);
this.buildXY("fire-trap", 71, 25);
this.moveXY(72, 18);
this.moveXY(54, 23);
this.moveXY(73, 62);

CoffeScript:

# Пройдите до конца тропы и постройте забор. Ну, или ловушечку, чтобы собрать больше самоцветов.
# Используйте функцию  moveXY(x, y) .

@moveXY 34, 45
@moveXY 36, 60
@moveXY 37, 13
@buildXY "fire-trap", 71, 25
@moveXY 72, 18
@moveXY 54, 23
@moveXY 73, 62

Clojure:

;; Пройдите до конца тропы и постройте забор. Ну, или ловушечку, чтобы собрать больше самоцветов.
;; Используйте функцию  moveXY(x, y) .

(.moveXY this 34 45)
(.moveXY this 36 60)
(.moveXY this 37 13)
(.buildXY this "fire-trap" 71 25)
(.moveXY this 72 18)
(.moveXY this 54 23)
(.moveXY this 73 62)

LUA:

-- Пройдите до конца тропы и постройте забор. Ну, или ловушечку, чтобы собрать больше самоцветов.
-- Используйте функцию  moveXY(x, y) .

self:moveXY(36, 60)
self:moveXY(37, 13)
self:buildXY("fire-trap", 71, 25)
self:moveXY(72, 18)
self:moveXY(54, 23)
self:moveXY(73, 62)

Прохождение Code Combat

]]>
https://coolcode.ru/code-combat-les-temnodrev-izvilistaya-tropa/feed/ 0
CodeCombat. Лес Темнодрев. Защита Лесной Равнины(Defense of Plainswood) https://coolcode.ru/code-combat-les-temnodrev-zashhita-lesnoy-ravninyi/ https://coolcode.ru/code-combat-les-temnodrev-zashhita-lesnoy-ravninyi/#respond Fri, 25 Mar 2016 05:11:44 +0000 http://coolcode.ru/?p=6905

ccForest1

Тема:

Базовый синтаксис

Аргументы

Строки

Цели:

 

Жители деревни должны выжить.

Руководство:

 

Введение:

ccForest1b

Передвиньте курсор мыши на точку, чтобы определить

x
и
y
координаты.

Помните как строить:

Python:

self.buildXY("fence", 40, 52)

JavaScript:

this.buildXY("fence", 40, 52);

CoffeScript:

@buildXY("fence", 40, 52)

Clojure:

(.buildXY this "fence" 40 20)

LUA:

self:buildXY("fence", 40, 20)

Описание:

Используйте навык

buildXY
для строительства забора и защиты Plainswood от огров!

Не забудьте навести курсор на карту уровня, чтобы найти координаты 

x
и
y
для вашего метода
buildXY
. В данном случае необходимо строить на отметках X с координатами
40, 52
и
40, 20
.

Этот уровень гораздо легче пройти, используя

"fence"
, а не
"fire-trap"
. Если вы хотете убить всех огров, мы рекомендуем вернуться сюда позже. Пускай они свободно гуляют за пределеми деревни. Это гуманно.

Награда:

30xccXP 37xccCrystal ccleatherboots

Бонус за чистый код:

15xccXP 18xccCrystal

Защита Лесной Равнины, прохождение:

Python:

# Постройте два ограждения для защиты деревни!
# Наведите курсор мыши на любую точку на карте, чтобы получить ее координаты X,Y

self.buildXY("fence", 40, 52)
self.buildXY("fence", 40, 20)

JavaScript:

// Постройте два ограждения для защиты деревни!
// Наведите курсор мыши на любую точку на карте, чтобы получить ее координаты X,Y

this.buildXY("fence", 40, 52);
this.buildXY("fence", 40, 20);

CoffeScript:

# Постройте два ограждения для защиты деревни!
# Наведите курсор мыши на любую точку на карте, чтобы получить ее координаты X,Y

@buildXY "fence", 40, 52
@buildXY "fence", 40, 20

Clojure:

;; Постройте два ограждения для защиты деревни!
;; Наведите курсор мыши на любую точку на карте, чтобы получить ее координаты X,Y

(.buildXY this "fence" 40 52)
(.buildXY this "fence" 40 20)

LUA:

-- Постройте два ограждения для защиты деревни!
-- Наведите курсор мыши на любую точку на карте, чтобы получить ее координаты X,Y

self:buildXY("fence", 40, 52)
self:buildXY("fence", 40, 20)

Прохождение Code Combat

]]>
https://coolcode.ru/code-combat-les-temnodrev-zashhita-lesnoy-ravninyi/feed/ 0