Автосбор ресурсов единицей

Пользовательские карты и игротека
Ребзя! Такое дело. Я хочу сделать так, чтобы юнит добывал ресурсы, но не относил их к командному центру, а перечислял на счёт игрока сразу после добычи. И я, собственно, хотел спросить, как это сделать.
Примерно как в карте Probes vs Zealot.
И ещё вопросик: как сделать, чтобы у юнита была ещё одна анимация, например, того же сбора ресурсов, я понимаю, что это надо делать через агенты, но как?
1. глянь как сделана автодобыча газилок(там в persistent вложен modify player)

2. Создаешь агент типа "Model Animation Continious"(точно не помню как называется, континиус важен), там по дефолту нужные события уже есть, тебе нужно только завязать агент на нужные эффекты. В агенте выбираешь анимацию в поле model. добавляешь строки в Events
effect.имя persistent-a.Start
Create
(это создаст агент когда данный эффект начнется, агент создаст модель)
effect.имя persistent-a.Stop
Animation Bracket Stop BSD(это даст команду сыграть заключительную анимацию когда данный эффект удален)

но ты должен убедится что модель играется бесконечно(к примеру блики сбора ресов, или... оверчардж у аларака к примеру). Если она играется один раз, ну как взрывы, то анимация проиграется и закончится. Но если тебе понравилась именно такая и ты хочешь чтоб она игралась постоянно при добыче, нужно постоянно пересоздавать агент, тогда:
Создаешь агент типа "Model Animation Singleshot" завязываешь агент на modify player:
effect.имя modifyplayer.Start
Create
effect.имя modifyplayer.Stop
Destroy

Впринципе неважно какого типа создается агент, но у близов уже есть дефолтные настройки для разных ситуаций. Постоянные анимации для завершения требуют добавить событие Animbracket STOP(имя анимации), одиночные требуют убивать агент (событие Destroy) а в постоянных по умолчанию агент сам убивается когда анимация закрывается.

Со временем разберешься как управлять агентами, на самом деле это не так сложно. Но выглядит страшно)

обязательно убедись что Destroy присутствует, иначе анимация останется, она может быть невидимой на последнем кадре, однако будет присутствовать и жрать фпс. У меня такое однажды было, при стрельбе агент оставался неудаленным, и фпс за 15 минут просаживался вдвое.
Странно. написал сообщение, а оно не отправилось уже более чем час прошел...

10/11/2018 22:43Размещено mnzak
Ребзя! Такое дело. Я хочу сделать так, чтобы юнит добывал ресурсы, но не относил их к командному центру, а перечислял на счёт игрока сразу после добычи. И я, собственно, хотел спросить, как это сделать.
Примерно как в карте Probes vs Zealot.


В поле ксм найди Ресурсы: Сброс+ (если нажать Ctrl+D ResourceDropOff)

10/11/2018 22:43Размещено mnzak

И ещё вопросик: как сделать, чтобы у юнита была ещё одна анимация, например, того же сбора ресурсов, я понимаю, что это надо делать через агенты, но как?


Сложнее. в агентах найди модели -- ModelAnimationStyleContinuos
Заходишь в событие и при начале Способности КСМ-Gather создаешь анимацию.

Обсудить

К форуму