Иногда не проходит условие If и гоблин багается , т.е идет вообще не туда и начинает ходить из стороны в сторону или заходить за границу, а такого быть не должно.
Часть кода с логикой гоблина:// direction это направление куда гоблин пойдет
// Логика гоблина
//Если золото и гоблин встретились на одной линии по вертикали
if(goblinPosX == goldPosX){
alert("гоблин по y:"+goblinPosY + " золото по y:" + goldPosY);
// Если золото выше по Y, то гоблин идет вверх
if(goblinPosY < goldPosY){
direction = "up";
}
// В противном случае вниз
else{
direction = "down";
}
}
// Если золото и гоблин не встретились по вертикали
else{
alert("гоблин по х:"+goblinPosX + " золото по х:" + goldPosX);
// Если гоблин по X дальше золота, то гоблин идёт налево
if(goblinPosX > goldPosX){
direction = "left";
}
// В противном случае направо
else{
direction = "right";
}
}
Сам скрипт на хостинге