n06rin, если нет препятствий, последовательно рассчитать дальности до нескольких точек и выбрать наименьшую.
dark256 об этом говорил.
Если есть препятствия - включаем алгоритм поиска минимального пути, просто узнаем - какой путь будет оптимальный. Выбрав путь, отправляем героя.
Точнее, так - находим точку "золото", путь до которой будет минимальным.
Как это сделать - это ваш контекст. Либо, если есть препятствия, то есть если путь - не одна прямая, то А-star использовать (Вот уже
есть реализация) или другой алгоритм. Либо, если нет препятствий, теорему Пифагора.
После этого отправляем персонажа.