Я создаю игру, в которой я хочу, чтобы враг проследил путь до игрока, который может двигаться в любом направлении на 2D-плоскости. Сначала я попробовал ...
self.bat_x += (player_rect.centerx - self.rect.centerx) / 60
self.bat_y += (player_rect.centery - self.rect.centery) / 60
Здесь отслеживание пути работает нормально. Я делю каждое значение на 60, чтобы враг не просто появлялся и приставал к моему игроку / чтобы замедлить движение врага вниз. Однако чем дальше враг, тем быстрее он. Чем ближе летучая мышь становится, тем медленнее летучая мышь становится. Это связано с тем, что, например, при использовании оси X, когда расстояние между игроком и противником меньше, player_rect.centerx - self.rect.centerx
меньше, поэтому к self.bat_x
добавляется меньше. Есть ли способ, чтобы поиск пути все еще работал, но скорость была постоянной? Или кто-нибудь знает другой метод поиска пути и как его реализовать?