Обратите внимание, я придумываю это, но оно должно работать нормально.
Учитывая координату источника и пункта назначения, просто "нарисуйте линию" между двумя точками и двигайте транспортное средство вдоль этой линии.
Когда транспортное средство движется по более детализированной графической поверхности, вы можете определить, в каком квадрате «действительно» находится единица (например, с помощью простого сопоставления координат).
Если важно, чтобы юнит находился в одном квадрате, то, когда юнит «останавливается», он может перейти к следующему квадрату, он может полностью его вместить (т. Е. Если он уже покинул квадрат А, он продолжает двигаться к Б транспортное средство "остановлено").
Рассчитайте курс между двумя точками, чтобы определить направление движения транспортного средства.
Если ваше транспортное средство имеет только 8 направлений, то вы можете указать их в следующем дополнительном квадрате, а не в конечном пункте назначения. Это будет выглядеть хорошо для медленно движущихся транспортных средств, но будет довольно забавно для быстрых.
Обратитесь к этому алгоритму рисования линий , чтобы помочь вычислить квадраты. Имейте в виду, конечно, это никак не связано с поиском пути.