Цикл по нэймплейтам или определение кастов без выбора таргетов (гайд)

Ответить
noname123
Сообщения: 193
Зарегистрирован: 19 мар 2020, 09:15

Цикл по нэймплейтам или определение кастов без выбора таргетов (гайд)

Сообщение noname123 » 16 ноя 2024, 09:45

Сразу скажу что выбирать таргет через нэймплейты или кастовать в них спеллы нельзя по механике игры, поэтому когда будете выбирать спелл который будет использоваться не выбирайте ForeachUnit в качестве цели для заклинания.

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

1. Создаём в самом низу своей сборки (для удобства поиска кода) цикл "Цели союзников+игрока" и в блоках делаем условия для определения нужных нам кастов и соответственно выбираем сами спелы которые нужно будет прожимать. Сохраняем сборку.
Изображение

2. Нажимаем вверху в боте кнопку "LUA код" и прокручиваем открывшееся окно в самый низ.
Находим там строчку

Код: Выделить всё

for _, ForeachUnit in ipairs( { "party1target", "party2target", "party3target", "party4target", "target" }) do
и копируем всё вместе с нижней строчкой Всё что между этими строчками это наши сгенерированные условия.

3. Создаём Lua блок в боте (в нужном нам месте для приоритета) и вставляем туда скопированный нами код из предыдущего пункта.
Изображение

4. Заменяем в коде цели для проверки

Код: Выделить всё

"party1target", "party2target", "party3target", "party4target", "target"
заменяем на

Код: Выделить всё

"nameplate1", "nameplate2", "nameplate3", "nameplate4", "nameplate5", "nameplate6", "nameplate7", "nameplate8", "nameplate9", "nameplate10" ,"nameplate11", "nameplate12", "nameplate13", "nameplate14", "nameplate15", "nameplate16", "nameplate17", "nameplate18", "nameplate19", "nameplate20" ,"nameplate21", "nameplate22", "nameplate23", "nameplate24", "nameplate25", "nameplate26", "nameplate27", "nameplate28", "nameplate29", "nameplate30" ,"nameplate31", "nameplate32", "nameplate33", "nameplate34", "nameplate35", "nameplate36", "nameplate37", "nameplate38", "nameplate39", "nameplate40"
Получается в итоге такой луа блок по которому бот будет нажимать выбранные спеллы из п.1 основываясь на проверках нэймплейтов.
Изображение
Сохраняем сборку и пользуемся.

Несколько важных моментов.
Чтобы данный способ работал у вас в сборке должен присутствовать спелл который вы пытаетесь использовать через луа код. Если бот не найдёт его в вашей сборке, то не сможет его у себя зарегистрировать и соответственно не сможет его прожимать через наш луа код.
Так что советую оставлять в сборке цикл "Цели союзников+игрока" который мы создавали в п.1 для генерации кода. Как минимум он пригодится для дальнейшего корректирования списка нужных вам спеллов (чтобы по новой этот список не выдёргивать каждый раз из луа блока).
Если в вашей сборке уже присутствует какой либо цикл, то не перемещайте в него луа блок который делали по этому гайду. Из-за того что у вас получится цикл в цикле будет сильно лагать. Расположите его в любом другом месте за пределами цикла.

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость