Пожалуйста, вставьте соответствующую часть кода сюда и покажите нам, что вы уже пробовали.
Я предполагаю, что у вас есть основная пигмейма l oop, работающая с определенной частотой. Когда у вас есть функция, вычисляющая вещи в главном l oop, которая занимает значительное время, это приведет к зависанию окна игры. Это потому, что он не может достичь других вещей (например, вашей функции события) одновременно с вычислением пути.
С алгоритмом A * вы можете сделать его лучше, рисуя прогресс (рисуете соседей и проверяете клетки например). Ранее я делал такой проект, который прекрасно работает. Затем вы вызываете свою функцию рисования в функции A * в соответствующих местах, и вы не получите проблему замораживания.