Коллеги, не могу понять, почему карта (см. приложение) после 10-15 итераций ломается и крестьяне стоят.
В кратце - я заставляю бегать крестьян к самому ближнему кусту звездолиста, но после нескольких кустов они наотрез отказываются продолжать движение дальше.
Следующим этапом будет добавление чуточку рандома и генерация случайных свойств дистабилизирующих или улучшающих выживание крестьян в этом тяжелом мире.

Naadir, мне почему-то кажется, что у тебя проблема в том, что есть цветок 1 и 10 работников. И у тебя получаются записи типа:
цветок 1 - работник 10.
цветок 1 - работник 8.
цветок 1 - работник 7.
В общем, массив не отчищается при удалении предмета с карты. А ещё может быть такое, что функция pick предметов на карте, каждый раз выдает разные id предметам.
Добавил БД-индификтор предметам в первую версию поиска.
Получить ID любого предмета можно стандартной гуи-фцией valueitem. Пока что в раздумьях, как сделать адекватную матрицу, адекватно расширяемую? Или возможно её чем-то заменить?
Можно ли как-то обыграть такую структуру в war3?
За неимением мысли о матрице, сделал пока что генерацию "родства" до 4х поколений. Теперь Вы вполне можете узнать, кто был отцом, дедом и прадедом отдельно взятого юнита. См. приложенный файл. по ссылке.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
19
Есть ещё небольшая проблема, которую я пока не знаю как решить. Эти дебилы бегают толпой, т.к самый ближний куст - самый ближний для всех. И в общем один охватывает добычу, другие дохнут.
13
Посмотрел карту, вспомнилась моя проблема с циклами. Возможно, по мере увеличения количества объектов на карте (звездолистов и самих крестьян) цикл убивает поток выполнения.
16
DemonoiD, протестировал. Есть такое.
По поводу бегания толпой... Не всегда. Если их много, то образуется несколько групп. А в принципе -- так и должно быть, это логичное поведение каких-нибудь, ну скажем, рыбок.
Если ты хочешь, чтобы каждый крестьянин таргетился на куст, до которого сможет убежать, тебе нужно знать скорость юнита, его текущее здоровье и его убыль.
Если [Расстояние/Скорость] меньше или равно [Текущее здоровье/Убыль здоровья], то можно таргетиться на куст. Это один из примеров реализации разбиения отрядов на группы или даже на одиночек.
19
Naadir, только тут не один крестьянин, и их снова затаргетится толпа.
16
При этом твоё кастом вэлью принимает довольно физическое значение: время жизни.
DemonoiD, сейчас проверю.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.