Play Home Contribute Github Join Us! Discourse Staff Members Github Contribution Guides Team

Не могу пройти Колодец желаний

#1


Что нужно сделать дальше?

#2

То, что вы должны сделать дальше, - собрать монеты после того, как goldAmount == requiredGold. Для этого вы создали функцию collectAllCoins (), но вы никогда не вызываете функцию, как только условие для этого выполняется. Кроме того, вам не нужно определять элемент дважды в функции collectAllCoins. В первый раз все, что вам нужно. Второй раз бесполезен.

#3

//Javascripts, ламерский код)

// Эта функция вычисляет суммарную стоимость монет.
function sumCoinValues(coins) {
var coinIndex = 0;
var totalValue = 0;
// Перебери все монеты.
while (coinIndex < coins.length) {
totalValue += coins[coinIndex].value;
coinIndex++;
}
return totalValue;
}

function collectAllCoins() {
var item = hero.findNearest(hero.findItems());
while (item) {
hero.moveXY(item.pos.x, item.pos.y);
item = hero.findNearest(hero.findItems());
}
}

while (true) {
var items = hero.findItems();
// Получи общую стоимость монет.
var goldAmount = sumCoinValues(items);
// Если есть монеты, то goldAmount не равно 0.
if (goldAmount !== 0) {
// Если goldAmount меньше, чем requiredGold
if ( goldAmount < requiredGold)
// То скажи “Non satis”
hero.say(“Non satis”);
// Если goldAmount больше, чем requiredGold
if ( goldAmount > requiredGold)
// То скажи “Nimis”.
hero.say(“Nimis”);
// Если goldAmount равно requiredGold
if ( goldAmount == requiredGold) // присвоение равенства переменных
// Если перед тобой ровно 104 золота - собирай все монеты.
collectAllCoins(104); // вызов функции сбора 104 монет. можно без 104 в скобках.
}
}

#4

Please learn to post your code correctly. The way it is now, we can’t see the structure. Help us help you. It’s very easy to do and just takes a tiny bit of effort. Please read this topic and format your code again correctly