Unreal Engine 4 https://uengine.ru/forum/ |
|
как спавнить много AI при смерти последнего. https://uengine.ru/forum/viewtopic.php?f=3&t=40571 |
Страница 1 из 1 |
Автор: | Totaljerkdace [ 19 авг 2019, 07:39 ] |
Заголовок сообщения: | как спавнить много AI при смерти последнего. |
Что имеем: Есть арена, на арене есть герой (он же ГГ). Через некоторое время после старта уровня появляется волна противников. После убийства последнего противника должна спавниться следующая волна. Есть MainCharacter и AIcharacter. На данный момент разместил одного AIcharacter на поле для тестов. Собственно что хотелось бы получить в ответ: - как спавнить, к примеру, 10 персонажей из одного AIcharacter; - как спавнить AIcharacter после смерти последнего на поле. Буду благодарен вам за объяснение, а не отправку в "ссылку" (если только не с объяснением). Я как демку доделаю покажу тут результат своих трудов. |
Автор: | Agny [ 19 авг 2019, 17:47 ] |
Заголовок сообщения: | |
Сначала должен вроде спавнится AIController, потом Character. Два персонажа не может управляться одним AIController. Вроде так. Ну можно проверку сделать есть ли на карте персонаж или нет с помощью ноды Is Valid, например. Или можно использовать ноду Get All Actors With Tag. Врагов обозначить тэгом. Нода будет выдавать массив. По длине массива можно будет определить сколько акторов с таким тэгом на карте. |
Автор: | Totaljerkdace [ 29 авг 2019, 02:47 ] |
Заголовок сообщения: | |
разобрался со своей проблемой. делаю спавн врагов через кнопку на сцене. сперва ИИ не делал ничего, кроме ожидания. решение нашел в pawn класса character своего ии. нужно было установить в графе "auto posses AI" значение "placed in world or spawned". работать ии может и от одного контроллера, если это ии одного класса (из наблюдений) |
Автор: | Totaljerkdace [ 29 авг 2019, 03:04 ] |
Заголовок сообщения: | |
может кому понадобится действия ИИ в БП, оставлю здесь. Ai State - переменная типа Enum, в моем случае я назвал свой Enum "EAIstates". тут указывал состояния ИИ: Default, roam, chasing player, patrol. RadiusRoamMove - добавил для изменения радиуса возможного движения врага в случайном направлении. изменял скорость патрулирования и преследования: 150 и 450 соответственно (ЗЫ: скорость моего персонажа 600) |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |