написал код корректно, но уровень не выигрывается, т.к. не набирает нужного количества монет
// Собирай монеты, разгоняя мародёрствующих огров.
function findMostHealth(enemies) {
var target = null;
var targetHealth = 0;
var enemyIndex = 0;
while(enemyIndex < enemies.length) {
var enemy = enemies[enemyIndex];
if(enemy.health > targetHealth) {
target = enemy;
targetHealth = enemy.health;
}
enemyIndex += 1;
}
return target;
}
function valueOverDistance(item) {
return item.value / hero.distanceTo(item);
}
// Возврати предмет с наибольшим значением `valueOverDistance(item)`.
function findBestItem(items) {
var bestItem = null;
var bestValue = 0;
var itemsIndex = 0;
while(itemsIndex < items.length) {
// Перебери массив предметов.
// Найди предмет с наибольшим значением `valueOverDistance()`.
var item = items[itemsIndex];
if(item.value > bestValue) {
bestItem = item;
bestValue = valueOverDistance;
}
itemsIndex +=1;
}
return bestItem;
}
while(true) {
var enemies = hero.findEnemies();
var enemy = findMostHealth(enemies);
if(enemy && enemy.health > 15) {
while(enemy.health > 0) {
hero.attack(enemy);
}
} else {
var coins = hero.findItems();
var coin = null;
coin = findBestItem(coins);
if(coin) {
hero.moveXY(coin.pos.x, coin.pos.y);
}
}
}
Собирает, но упорно не побеждает