Добавлен Sozidar
Собсно, - как? Пробовал через проверку каста самой способности добычи, всячески через айди приказов и т.д., но всё без толку.
Принятый ответ
Урон по дереву можно отследить с помощью хеша и дерева с 1 хп. Каждому дереву на карте поставить в соответствие n единиц жизней. При смерти дерева проигрывать анимацию получения урона и немедленно возрождать, загружать их хеша значение хп, перезаписывать его и сохранять.
Чтоб проверить что урон нанёс именно рабочий - нужно проверять наличие юнитов определённого типа вокруг дерева с соответствующим приказом, цель которого - это дерево. Для отлова цели приказа также юзается система на всё том же хеше. Нужна бд всем абилкам лесорубов.
Насчёт золота сказать трудно. Нужно посмотреть какие есть состояния юнита и какие из них связаны с пребыванием в руднике, приказы и прочее. Подозреваю что юниты вроде рабочих альянса покидают карту когда заходят в рудник. Но это нужно тестить и костылить. Чистого способа нету.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
harvest = 852018 resumeharvesting=852017 returnresources=852020
smart = 851971 move=851986(пока у пеона такой приказ, невозможно определить, что он делает)
AImove=851988(бывает, когда пеон в числе атакующих, как вурдалак)
Если у пеона бывает 851971 и 851986, то придется потратиться на массив юнитов и событие с периодом. 852018, 852017, 852020 - занести в массив. Не 852018, 852017, 852020, 852021, 852022, 851971, 851986, 851988, - вычеркнуть.
Ancient, Надо это для того, чтобы остановить добычу. Вообще как бы я уже разобрался и сделал костыль небольшой, но хотелось бы узнать на будущее как же все же отследить это.
Есть 2 вида дерева > каждый рабочий может добывать соответственное. Весь смысл.
С золотом еще проще. Есть событие на выход рабочего из золотой шахты.