Сделай задержку в триггере с событием Начинает применять способность. То есть будет это событие, в условии способность, в действиях Wait 0.1 сек. и проигрывание анимации. Если сработает, то следует Wait заменить на таймер, потому что меньше 0.1 секунды Wait быть не может.
Lotus101, чего-то странно, что у тебя не получается, наверное, где-то какой-то сбой. По идее должно быть так:
Цикл по А от 0 до размера массива Point
Если (х NewPoint)=(x Point[A]) и (y NewPoint)=(y Point[A])
То создать всплывающий текст в NewPoint
Иначе <пусто>
Про сделать последней в массиве в случае повторения не совсем понял.
Как они убрали нижнюю панель и поставили свою?
Вот что то типа такого вообще реально сделать?
У китайцев есть свои редакторы и инструменты, что позволяют подобное провернуть. У нас такое можно сделать с помощью RenderEdge, вот только он для 1.26, а с выходом новых патчей это стало неактуально, потому что появились нативные инструменты, но не GUI.
Домик должен быть уже, расстояние от окна в стене до двери сейчас большое, доски на стене, где находится дверь слишком широкие. По идее карта пути для домика должна быть квадратной, а сейчас она немного прямоугольная. Козырёк хорош, но в оригинале он более пологий. И до кучи было бы хорошо добавить анимацию для вечера, когда в окнах виден слабый свет от свечи.
И у оригинала окно спереди чуть меньше, чем окно сбоку.
Famouzy, варик в некоторых случаях чувствителен к длине пути к файлу, а у него путь длинный. Например, 1.26 карты не видит из-за длинного пути. Пусть перенесёт папку с вариком на диск С сперва.
Всем юнитам ставишь классификацию Рабочий, либо обнуляешь радиус реагирования, по-английски это acquisition range, нужно не только в РО это сделать, но и в игровых константах найти. Потом заносишь в триггеры всех юнитов с событием unit enters range, например, 600, и условием, что юнит видим игроку, а также приказ stop или <пусто>, в действиях приказ Атаковать или Атаковать однократно, не уверен, что после однократной атаки юнит продолжит атаковать, а вот если приказать просто Атаковать, то по всей карте будет носиться, пока не убьёт или не умрёт, посмотришь. Ещё один триггер с событием на приказ без цели и условием, что приказ stop или <пусто>, для случаев, когда юнит или юниты убивают цель, в действиях идёт поиск вражеских юнитов в радиусе 600, на одного из которых нападаешь. Тут надо придумать систему приоритетов, чтобы атаковал в первую очередь войска, а не здания, чтобы атаковал ближнего, а не дальнего, чтобы атаковал юнита с наименьшим здоровьем. Мне такого делать не приходилось, лишь что-то похожее давно, там многое надо будет учитывать.
Чтобы висп не исчезал, поменяй расу. Лик смерти отслеживать по получению урона, но не уверен, что это работает на Нежить, которой восстанавливаешь здоровье.
Да он про удобство. Есть ли смысл ставить udg_Caster=(Casting unit) в каждом триггере? Нет смысла, используй (Casting unit) и (Target of Ability being cast).
Либо блокировать приказ и смещать обратно при вхождении в область, либо делать блокираторы по типу движения. Так, если на карте нет глубокой воды, то можно поставить юнитам этого игрока земноводный тип движения и сделать зону только для земноводных.
newtone, во-первых, в конкретных числах дай данные про нагрузку от периодического таймера. Во-вторых, предложенный вариант с отловом приказа выглядит так:
Событие: 3 события Generic unit Отдал приказ цель-объект/цель-точка/без цели
Условие: Unit-type of (Triggering unit) равно Работник
Действие: If (Issued order) равно Стоп ИЛИ <пусто> и (Triggering unit) is in Unit group FREE_WORKERS равно Нет, Then Добавить спецэффект и внести в группу FREE_WORKERS, Else Ничего
If (Triggering unit) is in Unit group FREE_WORKERS равно Да и (Issued order) не равно Стоп ИЛИ <пусто> Then Убрать спецэффект и убрать из группы FREE_WORKERS, Else Ничего
Только какое-то удобное запоминание спецэффекта нужно сделать.
Например, через предложенную PT153 способность Atol, когда даёшь и удаляешь не эффект, а способность, что мне кажется оптимальным, ведь тогда и группа не нужна, достаточно проверять лишь уровень способности, либо через Custom value, когда юнит получает custom value, эффект сохраняется в переменную-массив с индексом [custom value of (Triggering unit)], а custom_value=custom_value+1, но так есть угроза превышения размера массива при длительной игре, либо можно новые переменные-массивы при превышении лимита массива подключать, либо проверять custom value работника на больше 0, если да, то давать его custom value, а не новый. Лимит массива 8191 на патчах до 1.29 и 32767 на новых, получить превышение лимита массива в таком случае теоретически возможно, если на старых патчах все 12 игроков создадут за всё время игры более 682 незанятых работников каждый, а если кто-то из 12 не создаст, то другим надо будет взять на себя его количество, а на новых патчах более 1365 работников каждому из 24 игроков. Мне трудно представить игру, в которой такое могло бы быть, но если для твоей карты такая угроза может быть актуальной, то можно отслеживать смерть работника с custom value и применять его для новых, так как одновременное нахождение на карте восьми тысяч юнитов не выдержит никакой патч, то есть мёртвых работников с custom value выше 0 заноси в группу, при появлении нового незанятого проверяй количество юнитов в группе больше 0, тогда давай новому работнику custom value трупа, которого из группы убирай. Есть ещё более извращённые варианты, но они нужны для специфических случаев.
Ах да, если незанятого работника мгновенно убьют, то спецэффект так на нём и останется, нужно убирать.
» WarCraft 3 / Анимация перед кастом
» WarCraft 3 / Анимация перед кастом
» WarCraft 3 / Отключение автоатаки по определённому юниту
» WarCraft 3 / Приключения Трилла 1.2beta
» WarCraft 3 / Сравнение точек в условии
Цикл по А от 0 до размера массива Point
Если (х NewPoint)=(x Point[A]) и (y NewPoint)=(y Point[A])
То создать всплывающий текст в NewPoint
Иначе <пусто>
Про сделать последней в массиве в случае повторения не совсем понял.
» WarCraft 3 / Сравнение точек в условии
» WarCraft 3 / Скриптовое проигрывание анимации при нажатии w,a,s,d
» WarCraft 3 / Городские дома из Townsmen
» WarCraft 3 / Подскажите, на что ссылается этот адрес в памяти?
» WarCraft 3 / Городские дома из Townsmen
» WarCraft 3 / World Editor старых версий запускается и сразу же закрывается
» WarCraft 3 / Отключение автоатаки по определённому юниту
Ред. 8gabriel8
» WarCraft 3 / Спасение виспа и отслеживание снаряда способности
» WarCraft 3 / Как изменить название карты в лобби
» Администрация XGM / комментарии отсуствуют
» WarCraft 3 / Отключение автоатаки по определённому юниту
» WarCraft 3 / Глобальные переменные и их количество
» WarCraft 3 / Труп из юнита
» WarCraft 3 / Глобальные переменные и их количество
» WarCraft 3 / Городские дома из Townsmen
» WarCraft 3 / Глобальные переменные и их количество
» WarCraft 3 / Зона
» Мастерская переводов | Кампании WC3 на русском / Рассвет Эльфов Крови 3.0
» WarCraft 3 / Городские дома из Townsmen
» WarCraft 3 / Возможно ли отследить незанятого работника?
Событие: 3 события Generic unit Отдал приказ цель-объект/цель-точка/без цели
Условие: Unit-type of (Triggering unit) равно Работник
Действие: If (Issued order) равно Стоп ИЛИ <пусто> и (Triggering unit) is in Unit group FREE_WORKERS равно Нет, Then Добавить спецэффект и внести в группу FREE_WORKERS, Else Ничего
If (Triggering unit) is in Unit group FREE_WORKERS равно Да и (Issued order) не равно Стоп ИЛИ <пусто> Then Убрать спецэффект и убрать из группы FREE_WORKERS, Else Ничего
Только какое-то удобное запоминание спецэффекта нужно сделать.