26

» WarCraft 3 / Триггер

пик юнитов через таймер? Можно например через событие атаки самим "целителем".
Если рядом с юнитом будет раненый союзник, то отдать приказ юзать в него хил.
Если хил с баффом, то можно заставить игнорировать юнитов с этим баффом.
Ещё лучше было бы забить кд, что бы пикк происходил только при атаках когда нету кд на скилле.
Например заносить "целителя" в группу на 10 сек (если кд равно 10 сек), и потом выгонять, а при атаке проверять что он НЕ находится в группе...
Так же можно сделать дополнительную фишку с приказом-вызовом хила (как у лунных колодцев).
При получении приказа смарт/мув/патруль на целителя, проверять сколько хп у инициатора, и самое главное - друг ли он ему (точнее считает ли сам целитеть этого юнита другом), тогда отдавать приказ использовать хилку.
Таким образом можно будет заставить хилить себя даже если это юнит другого игрока (союзника).
+ к этому было бы полезно сравнивать дистанцию получения приказа, а то если глобально клинкнуть - то он побежит к тебе через всю карту напролом, что не очень хорошо (достаточно думаю будет дистанции каста).
26

» WarCraft 3 / Вопрос насчет "бессмертия" с EventDamage

в неуязвимости есть непредвиденный "баг"
например лайф_дрэйн прервётся
а юниты которые пытались атаковать цель - потеряют приказ (на него)
лучше юзать повышение хп
вариант стабильный, у меня юнит с 5/5 хп принимал 10000 урона (сила тьмы, перезарядка атаки 0.05), и не умирал
старая пассивка воида, без бага на привышение хп работает по сути так же (если шанс выпадает)
Загруженные файлы
26

» WarCraft 3 / Как сделать мульти скил из этого заклинания?

Принятый ответ
не шарят в одних костылях, пытаются обозначить другие, типа мол лучше ... позорненько
Триггер переделать с нуля - всё неправильно.
Событие, условие - пойдёт.
А вот действия... и эти "ничего не делать"... кто вас учит его юзать вообще? это секта?
Пикаешь всех юнитов, записываешь каждого, угол и дистанцию
Таймером проходишься по всем записанным юнитам, и двигаешь каждого
Загруженные файлы
26

» WarCraft 3 / Как сохраняются строки РО при компиляции?

Чисто из опыта в работе с .slk-таблицами
могу сказать что новые абилки имеют ссылку на то, из чего они изначально скопированны (равкод оригинала)
дальше есть все поля для данных
но заполнены только те их них - которые редактировались (отличаются от стандарта)
таким образом если ты поставить в поле число 0, то в таблице будет стоять 0
а если ничего не трогал - ничего не будет
по факту, если создать юнита и обнулись ему ВСЕ возможные параметры, в таблице все эти столбики будут изменить некие значения, тем самым давая движку понять что этот юнит основывается на стандартном, но все эти поля имеют иные значения
логика подсказывает что если у юнита/скилла есть лишние значения, которые тебе не нужно редактировать - то и трогать их не нужно, пусть будут как будут...
с другой стороны - есть какое-то упоминание о том что все иконки/модельки/тексты всё же стоит затирать, т.к. они пишутся в отдельном файлике... но вот про тексты я не уверен
Нужно просто взять и проверить
26

» WarCraft 3 / Как убрать тень?

Поэтапно очищайте карту до нуля... если пропадёт - ищите что именно привело к решению.
А так вообще да, очень странная штука у них там с этим делом в центре карты.
Например есть непонятная подсветка координат 0;0 при выборе юнитов (освещение портрета)
26

» WarCraft 3 / Триггер предмета.

Ige:
Extremator, widgetevent ни в одной функции не используется. А если добавить EVENT_WIDGET_DEATH в функцию TriggerRegisterUnitEvent, то выдаст что-то типа "невозможно конвертировать widgetevent в unitevent"
Да, я знаю... сам только что проверял
Ивент я видел, а вот то что он НИГДЕ не задействован - не знал...
Ну тогда остаётся только проверять хп итема по какому-либо событию, из-вне
26

» WarCraft 3 / Триггер предмета.

есть такое понятие как виджеты
это и юниты, и декорации, и предметы (условно говоря)
а есть такой ивент (событие) как смерть виджета
constant widgetevent EVENT_WIDGET_DEATH = ConvertWidgetEvent(89)
с подписью
// For use with TriggerRegisterUnitEvent
Думаю надо в этом направлении попробовать что-то сделать
26

» WarCraft 3 / Jass или стандартные триггеры?

AlexSan:
Сам вопрос из серии "Чем лучше шурупы закручивать: шуруповертом или отверткой"?
quq_CCCP:
То что вам по силам...
Молотком
26

» WarCraft 3 / Проблема с поворотом башни

Думаю вряд ли ты сделаешь так, что бы юнит не поворачиваясь к цели атаковал её, при этом поворачивая часть свое модели в сторону атакованной цели... не так варик работает
А вот если на юнита прицепить ещё одного, то там уже мб можно как это провернуть
  • один юнит это само тело, оно ездиет, имеет приказ атаки, но само не атакует
  • второй юнит это башня/турель, она прикреплена в телу, и может атаковать разворачиваясь
Как-то так
26

» WarCraft 3 / Проблемы с добавлением новой модели в MPQ Архив WarCraft 3

Точнее текстуры расположить правильно, относительно модели.
У модельки есть данные по используемым ей текстурам.
Если текстуры импортированы не правильно - они не будут отрисовываться на модели.
26

» WarCraft 3 / Как записать квесты и ресурсы в кампании

Ну ты хп записать смог... так?
Ну вот так же запиши и золото игрока
А потом тогда же когда хп восстанавливаешь, ставь и нужное количество золота
26

» WarCraft 3 / Перенос персонажа на другую карту

Во-первых: тебе нужно осознать что такое кампания, и что он тоже имеет свои нестандартные данные...
И все такие данные из неё - доступны в картах, которые в неё включены.
Но данные самой карты - только для самой карты.
Во-вторых: для того что бы в новой карте загрузить героя из предыдущей (его уровень, скиллы, предметы, что-то ещё), тебе нужно их предварительно записать вне карты (буфер). Для этого можно полистать триггеры каких-нибудь путных доп.компаний где это есть...
В-третьих: все триггеры, а это - триггерные скиллы и прочее в этом духе, будут висеть на конкретной карте.
Я не знаю есть ли методы выгрузки конкретных блоков кода из вне, но судя по имеющимся примерам - триггерные скиллы копируются и переносятся на все следующие карты, что бы они работал в них.
26

» WarCraft 3 / Stun на не заданное изначально время.PauseUnit вместо оглушения?

Принятый ответ
Я для этого сделал свою системку поддержания эффекта оглушения.
Создаётся на карте даммик, с молотом бурь, 1 уровень, без маны, ренж 99999, время оглушения - 0.00
В нужный момент отдаёт приказ застанить юнита, и записываем нужное нам время (например 2.50 сек)
когда время истекает - снимает бафф
Если пытаемся станить юнита у которого уже есть стан - ищем его время и обновляем на новое
Если новое меньше старого - ничего не делаем. Если новое больше старого - пишем новое.
26

» WarCraft 3 / Вечная ночь в JNGP так и не поправлена?

Пушистый:
А какую сборку используешь?
exp2
TripleKor:
Ночь и день багается если использовать измененный файл "MiscData" в папочке UI.
Папка есть, но в ней нет ничего такого.
Один лишь файлик "0_TriggerData.txt", который не работает (т.к. в названии есть 0_)
И даже если папку снести нифиг - всё равно там ночь...
26

» WarCraft 3 / Странности с молниями (триггер)

Принятый ответ
set L = ( создать через JNGP-функцию молнию)
всё
и стандартная функция примерно так
set last_created_lightning_effect = создать молнию бла бла бла
вернуть last_created_lightning_effect
26

» WarCraft 3 / Редактирование бонуса за уровень.

Пункт "опыт" не влияет на получаемый за юнита опыт героями.
Проблема в том что это ошибка перевода, там стоит points - очки...
очки чего? - не знаю, но точно не опыта, проверялось
На опыт влияет уровень юнита, это ДА. Как именно? - не знаю, не проверял
Но чем выше он - большем опыта дают за одно и того же юнита
Можно сделать простое триггерное распределение опыта
юнит умер - дать всем вокруг опыта, кому и сколько - это уже считать надо
26

» WarCraft 3 / Множитель получаемых ресурсов

было же типа такого
Событие - ресурсы игрока стали больше 0
дальше сравнение с переменно и перезапись этой самой переменной...
в итоге ты получаешь доход/уход, при сравнении текущего золота с записанным
как-то так
я читал про это, в таком виде, но сам делать так не пробовал, нужды небыло
26

» WarCraft 3 / Юнит который не выбирается после москитов

darkowlom, это просто инвиз, на 4 сек.
Но вся суть этого гемороя в том, что его инвиз НЕЛЬЗЯ ничем пропалить...
он типа уникальный
А т.к. нельзя заставить инвиз-о-палящие скиллы палить всё кроме одного конкретного
вот они и делают имитацию...
26

» WarCraft 3 / Очистить очередь строительства(через шифт заданная)<...>

Кнопку СТОП попробуй
Хотя там смотря какой именно рабочий
И зачем оно тебе вообще? мешает?
26

» WarCraft 3 / Юнит который не выбирается после москитов

Принятый ответ
Ааа, ну тогда смотри
не_кликабельность Сларка делается так
а - его морфят в юнит без модельки
б - ему дают москитов и отбирают (что бы на него нельзя было кликнуть, но можно было выделить)
в - все события "атакован" приводятся к действию "стоп", если это Сларк
г - аура регена игнорирует то что Сларка видят
у тебя на пути стоит пункт Б, т.к. что бы умные люди не заменяли себе пустую модельку (пункт А) на нормальную и не могли на неё в итоге тыкать... Так что в итоге - ты можешь её заменить, но тыкнуть всё равно не сможешь... шах и мат
26

» WarCraft 3 / Баг или нет?

Кароче, есть одна истина для этих долбаных сфер - они не работают если приказ юнита равен null
Точнее даже не так, а так что у юнита НЕТ приказа в этот момент (не уверен что возвращаться будет именно null)
Что бы этого небыло - надо каждый раз при попытке юнита атаковать (если он имеет абилку сферы, и не имеет приказа) отдавать ему новый приказ атаки... по этой же цели... на игра это никак не отразится (визуально)
Но тут есть косяк - юнит получивший приказ атаковать цель будет её преследовать.
Например если взять такой подход для ДОТЫ, то герой имеющий Мёльнир и стоящий не далеко от крипов попытается их атаковать (сам, а потом онойдёт обрато, если крипов не станет), и получив приказ "атаковать" будет гоняться за ними куда бы те не пошли... (своего рода потеря контроля, но игрок всегда может противостоять этому).
Можно сделать простой фикс - для этого надо отдавать приказ "атаковать" не в атакованного юнита, а в землю под самим юнитом, тогда он сам выберет себе цель атаки около этого места, будет её атаковать с приказом "атака", но при этом не станет никого преследовать, если те уйдут.
В итоге имеет отличный выход из сложившейся ситуации со сферами...
26

» WarCraft 3 / Глюк редактора

ну да... попробуй ещё раз... ситуация честно говоря смешная )))
вот когда до тебя дойдёт - поймёшь же)
там где написано "Значение", левее потяни, вправо... как окна в винде растягивают