XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
icefrost

offline
Опыт: 259
Активность:
Замена близстоящих юнитов на клонов без мерцания
Я создаю скилл, который должен прятать от владельца цели всех юнитов в определённом радиусе и вместо них создавать клонов(которые наоборот видны игроку цели, и не видны остальным игрокам)
У меня появилось пара вопросов касательно спелла:
  1. Можно ли использовать GetLocalPlayer и Hide для того, чтобы спрятать юнитов для конкретного игрока, и не станет ли это мешать этим юнитам продолжать действовать ?
  2. Как можно спрятать юнитов и создать копии так, чтобы игрок не заметил подмены ?
Старый 09.11.2013, 20:11
DioD

offline
Опыт: 45,134
Активность:
собственные попытки?
а именно почему вы не проверили 1 сами?
что вы делали чтобы достигнуть результата по части 2?
Старый 09.11.2013, 21:04
icefrost

offline
Опыт: 259
Активность:
DioD, 1. не стал делать, т.к. многие говорили о том, что GetLocalPlayer может вызвать весьма неприятные последствия, я и решил что лучше посоветоваться ...
  1. а) триггерно прятал юнита, создавал нового того же типа какой у спрятанного, не мог отследить последний приказ у кастера, т.к. когда он использует спелл, приказ уже другой, а без этого он просто вдруг "останавливается" на месте ... к тому же сам спелл вызывает у кастера проигрывание анимации, из за чего видна разница в анимациях нового и строго юнитов...(первый проигрывает анимацию заклинания, второй - stand), так как анимация резко обрывается новой.
б) триггерно давал приказ новому юниту, просто идти на N расстояние в том направлении, куда смотрел кастер во время использования спелла - во первых юнит всё равно сначала останавливается, и через секунду только начинает движение, во вторых как-то не очень выглядит когда кастер например просто проходит мимо врагов, выполняя приказ движения в направлении взгляда кастера...
Старый 10.11.2013, 13:58
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,024
Активность:
icefrost, ну клонам локально через GetLocalPlayer() можно только изменить цвет и прозрачность, а сделать чтобы юнитов не били ближайшие враги можно с помощью невидимости, и через UnitShareVision делать юнитов видимыми для тех кому нужно...
Старый 10.11.2013, 14:35
icefrost

offline
Опыт: 259
Активность:
quq_CCCP, ок, попробую. А что насчёт того, чтобы как-то избавится от резкой смены анимации ?
На всякий случай попробую создавать клонов и изначально скрывать их, перехватывать приказ оригиналов, давать такой же клонам, и запустить таймер вызывающий функцию, где и буду показывать клонов и скрывать оригиналов. Таким образом они появятся когда анимация уже проигрывается => мб получится "незаметная" замена... хотя я думаю вероятность мала, т.к. всё равно анимация начинается не одновременно у клонов и оригиналов...
Старый 12.11.2013, 16:31
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,024
Активность:
icefrost, ну а какая может быть смена анимации, фантом лансер палится со скиллом DoppelWalk когда исчезают баффы (ну у иллюзии баффов нету, а у оригинала были)
Просто надо создать и тут же отдать приказ, а юнитам оригиналам (если это герои) то добавить руну со способностью (стремительность) ну а даже если не герои ( то добавить способность "Предметы герой"", дать руну а затем удалить эту способсность) то игрок сразу же увидит клонов, которые к примеру бегут или стоят...
quq_CCCP добавил:
ксати тебе сначала походу придётся добавить способность инвиза волков (Постоянная невидимость) а затем руну со Cтремительность, юлюзии создовать посохом иллюзий иза нейтрально пассивных чтобы ими не управляли и терригенно менять цвет и делать видимыми с помощью UnitShareVision...
Стремительность нужна чтобы у юнитов не было физ размера, иначе клоны и оригиналы будут толкатся или застрянут
Старый 12.11.2013, 16:47
icefrost

offline
Опыт: 259
Активность:
quq_CCCP:
ну а какая может быть смена анимации
ну когда я создаю клона, он изначально имеет анимацию stand, а оригинал к примеру в это время бежит, и у него соответственно другая, из за этого при создании видно как юнит вдруг сразу поменял анимацию на stand
quq_CCCP:
фантом лансер палится со скиллом DoppelWalk когда исчезают баффы (ну у иллюзии баффов нету, а у оригинала были)
Это тот персонаж из доты, который похож на обезьяну белую ? В последний раз в доту играл очень давно :)
quq_CCCP:
Просто надо создать и тут же отдать приказ, а юнитам оригиналам (если это герои) то добавить руну со способностью (стремительность) ну а даже если не герои ( то добавить способность "Предметы герой"", дать руну а затем удалить эту способсность) то игрок сразу же увидит клонов, которые к примеру бегут или стоят...
Для теста я прятал оригиналы, создавал клона и сразу же отдавал приказ идти на расстояние 200 в направлении взгляда оригинала. Клон начинал движение не сразу, а примерно через секунду :/ ... мб я как-то неправильно приказ отдаю ?
quq_CCCP:
юлюзии создовать посохом иллюзий иза нейтрально пассивных чтобы ими не управляли
немного не понял... зачем посохом иллюзий делать клонов ?
Старый 12.11.2013, 19:25
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 02:07.