Как можно сделать цепь молний больше 16
и чтобы она наносила урон врагам и лечила союзников
Как у shadow shaman в dota imba

Принятый ответ

идем читать статьи
и не п... врем что читали, потому что в противном случае имели бы представление про триггеры и что с ними делать
сверху есть кнопочка - нажимаем и читаем
если не понятен алгоритм - работаем с группой юнитов, союзников лечим, врагов - дамажим, делаем анимацию снаряда
а как превысить лимиты РО - shift + enter
и в поиске по вопросам это тоже есть
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
20
7 лет назад
2
идем читать статьи
и не п... врем что читали, потому что в противном случае имели бы представление про триггеры и что с ними делать
сверху есть кнопочка - нажимаем и читаем
если не понятен алгоритм - работаем с группой юнитов, союзников лечим, врагов - дамажим, делаем анимацию снаряда
а как превысить лимиты РО - shift + enter
и в поиске по вопросам это тоже есть
Принятый ответ
1
27
7 лет назад
Отредактирован MpW
1
Как можно сделать цепь молний больше 16
нельзя, сделай на триггерах. А лучше на jass.
Юнит - применяет способность
условие - тип абилки
Одно большое действие
Описание большого действия
1) выделяем всех юнитов вокруг кастера
2) есть спец. функции рандома юнита. Короче она перечитывает кол-во юнитов в группе. Там есть целочисленная глобальная переменная. В начале проставляем ноль. И перебираем всех с помощью ForGroup, короче это типа как цикл, только над юнитами. При действии на каждым юнитом к переменной прибавляем единицу. Так переберутся все юниты. Существует вторая целочисленная глобалка, в ней рандомится случайное число от 1 до общего кол-во юнитов. Снова перебираем через ForGroup или через цикл loop. Находим случайного юнита, группу чистим.

Можно еще и через настоящий цикл перебрать (loop), там используется функция FirstOfGroup (группа) - первый юнит из группы, в цикле складываем, удаляем этого юнита из группы, добавляем в другую группу. Условие цикла выполняется до тех пор, пока группа не будет считаться пустой. Вторая группа нужна чтобы добавить и запомнить всех юнитов, и использовать этих юнитов заново. Теперь так сосчитали общее кол-во юнитов. 
3) Смотрим, что за юнит нам попался. Обычно используются условия, так сказать фильтры при зачисления юнитов в группу. Они заранее отсеивают не нужных юнитов. Например, здания. Или нужно взять вражеских юнитов, или наоборот. Теперь, в данном случае, смотрим попался враг, или союзник. Запоминаем это.
4) создаем молнию. Если это враг - молния, если это союзник - целительная волна. Мне кажется не очень красиво смотрится смена молнии.
5) начинаем теперь двигать молнию. Сложность имеют два точки (начало и конец). Конец можно прицепить к кастеру, а начало двигаем как обычного даймика двигаешь. Когда кончик дойдет до цели, то лечим или наносим урон. Это происходит очень быстро, что не заметишь =)) красиво получится
6) теперь опять перебираем всех юнитов. Есть несколько вариантов. Можно ту группу юнитов в начале не чистить, а использовать заново, только теперь цель удаляем  из группе, как использованную. Или перебираем заново вокруг кастера. 
7) эффекты можно по-разному использовать. Можно несколько молнии проложить, типа от кастера все идет. А можно как будто-бы живая змейка движется. Короче как в стандартном, то есть там молния идет от кастера, удлиняется, здесь мы создаем молнию. Некрасиво получится, если была целительная волна, а потом сменяется на молнию. движется теперь к от цели к цели.
8) ну и так далее. Потом в конце все чистим. Мы сами можем задать макс. кол-во юнитов. Даже цели несколько раз лечит, или самого кастера также лечить.
Как у shadow shaman в dota imba
как у shadow shaman я не видел =((
0
32
7 лет назад
0
Talgar2, Никак! Только сделать свой скилл с молнией. Тут так или иначе понадобится jass ибо на гуи ты не высоту узнать не сможешь ни толком двигать молнию между юнитами.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.