var coin=null; - строка присутствовала в изначальном коде,к тому же удаление этой строки ничего не дает кроме ошибки. В процессе выполнения мной была добавлена только функция findOptimalCoin().
В итоге оказалось что персонажу просто не хватало скорости добежать до нужного предмета.помогли более быстрые боты,кольцо к скорости и пришлось несколько раз сгенерировать уровень.
тоже прошел только раза с 5 и только с кольцом и сапогами… (хотя с такой скоростью герой иногда умудряется взять несколько коинов). так и не понял где ошибка возможно в самом уровне…
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);
}
// Return the item with the highest valueOverDistance(item)
function findBestItem(items) {
var bestItem = null;
var bestValue = 0;
var i = 0;
// Loop over the items array.
// Find the item with the highest valueOverDistance()
while(items.length > i) {
var item = items[i];
var value = valueOverDistance (item);