Кстати зачем такие сложности в вычислениях?
Пример Dune2 спайса много, харвестер один, пускаем волновую заливку во все стороны пока не наткнемся на спайс.
|
Я бы сделал так:
1. Пробежался бы по всей карте и разделил спайс на зоны.
2. Посчитал расстояние до каждой зоны от каждого сборочного пункта.
3. При отправке харвестера собирать спайс нашел бы ближайшую зону и проложил путь.
Вообще харвестер должен запоминать место своего сбора (зона), если например игрок указал сам где собирать, и возвращаться туда, если в зоне остался спайс.