@Banan44
Full Stack

Очень непонятная проблема с условиями, что делать?

Иногда не проходит условие 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";
        }
    }

Сам скрипт на хостинге
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
@Banan44 Автор вопроса
Full Stack
Решил, проблема была в том что goblinPosX и goldX воспринимались как строки
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы