bOrissko, нее, вообще можно просто одну модель иметь и одного юнита. Каждый раз приписываешь разные тэги. Тогда должна модель иметь разные вариации/формы и весить будет больше. Однако, если будешь делать улучшение здания, то не будет отображаться полоска улучшения и прочее.
можно трем разным юнитам дать три разные модельки (вырежи из модели сначала одну форму, потом вторую, третью). или трем типам-юнитов с одинаковой моделькой в РО прописываешь тэги, как у Иллидана в форме демона
хотя мне все равно, только зачем так делать сложно. Можно по-разному сделать, но у тебя модель с разными формами. Тогда создай в РО трех одинаковых юнитов, и пропиши разные тэги и добавь в улучшение здание улучшенной формы.
Если тэги не помогают (короче в модели не прописано это), то попробуй тогда проверять по событию "юнит завершает строительство" проверяешь тип и проигрываешь анимацию
анимацию апгрейда можно проиграть
а чтоб постоянная была. то прописыают триггером тэг анимации. или видел как у Иллидана? там два юнита: охотник и демон. Посмотри как у демона сделано. там есть прописано alternate
с null видимо всех добавляет
можно юзать локалки вместо set filterGetUnitsOfTypeIdAll = Condition(function XXX). просто не уверен, что будет ли работать с filterGetUnitsOfTypeIdAll так
попробуй использовать переменную типа filterGetUnitsOfTypeIdAll
function XXX takes nothing returns boolean
return( GetUnitTypeId(GetFilterUnit()) == 'hfoo' )
endfunction
set filterGetUnitsOfTypeIdAll = Condition(function XXX)
или вообще filterGetUnitsOfTypeIdAll = null
видимо связана эта переменная с bj_groupEnumTypeId. В переменную bj_groupEnumTypeId вбивают id-тип/равкод юнита
Но в jngp не могу увидеть что за переменная, сшита внутри
filterGetUnitsOfTypeIdAll - фильтр, вместо него должно быть написано либо null или Condition( function XXX) Короче зачем нужен фильтр? Фильтр при выборе всех юнитов сразу отсеивает не нужных, если по условию не подходит, то выкидывает.. Вам сразу достается готовая группа с нужными юнитами
А в качестве переменных используй GetFilterUnit, GetFilterPlayer. На гуи по-другому называют MatchingUnit
где XXX - название функции, эта функция возвращает boolean (то есть истину или ложь)
вбей в поиск названии функции, может найдешь ответ
например выделяем все здания UNIT_TYPE_STRUCTURE, а те, кто не является зданием отсеиваем
function XXX takes nothing returns boolean
return IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE)
endfunction
насчет статьи не видел, это придет с пониманием. Главное начать. Сначала тупо конверт, и оптимизация. А дальше можешь сам
что у тебя там не работает скидывай сюда
меняешь ид, не должно конфликтовать. Канал легко меняет ид-приказ, можно создать много таких, но с разными приказами, и они не будут конфликтовать. Вроде еще можно всякие фишки с каналом сделать (каналу можно приказ "attack" сделать, и когда юнит побежит атаковать, то сработает абилка - это пример. Сам не пробовал)
В то же время станд. абилки, например молот бурь, возьми создай две на его основе, ии поменяй приказ. То все равно этот приказ может не изменить.
У героя не должно быть абилок с одинаковыми приказами (юзай поиск).
у канала
Изображение указателя цели. Если установить эту галку, то сам еще понадобится установить "Характеристики: Область воздействия" на не-нулевую величину. (например, 200). Когда вы будете прицеливаться заклинанием, на карте будет круг такого радиуса, которого вы установили в "Характеристики: Область воздействия". Круг будет выглядеть, как например при заклинании "Огненный столб": Когда целишся им, видна область воздействия. Если этой галки нет, то прицеливать заклинание нужно будет обычным варкрафтским курсором (как например когда целишся заклинанием "Волна силы")
НЕзаяЦ, используй в качестве пустышки канал. это в канале можно настроить, чтобы был прицел АОЕ. Например, область действия 600. Ловишь триггером А в триггере когда выбираешь вокруг точки, то можно указать радиус. Вот радиус будет 300.
выбираешь всех юнитов в отряд (группу), и через for group на каждого юнита приказом заставляешь юзать дамми абилку. У абилки должно быть снята перезарядка (поставлена на ноль)
чтобы dummy-юнит мог быстро кастовать цель, ставим:
РО - Юнит - Графика - Анимация: Точка броска = 0.00
РО - Юнит - Графика - Анимация: Обратный ход броска = 0.00
или вокруг кастера или вокруг цели или вокрун кастуемой точки
еще лучше будет если будешь проверять всех, кто является вражеской нежитью, то урон будет триггерным. Иначе, если союзник, то хилим
раскрыть
Как проверить кто враг? это нужно смотреть в условии в разделе boolean (юнит является вражеском для игрока А). Игрок А - владелец кастера
как проверить является ли нежитью? смотреть в условии в разделе boolean там где классификация
Vitalik8, читай в комментариях, что нужно делать.
И скачай jngp + pjass.exe. Если выскакивают ошибки даже с этим. То нужно, как пишут в комментах, еще выключить cJass. Мне помогло это.
И уметь правильно сохраняться (дважды и путь и название карты не дожно содержать кириллицы).
quq_CCCP, мб быть, автор не знает об этом. или мб хочет одновременно с этим еще и сохранить эффекты от пассивки (защита, атака, ауры и прочее), но сама пассивка спрятана, но в то же время видна в панеле изучения. а так канал лишь пустышка, нужно триггерами тогда доделывать (при изучении делать что-то)
кстати у тебя там может не работать. Потому что у тебя разные события и могут иметь разные переменные. В условии ты можешь понаставить переменные. Например, юнит умирает и нужно выяснить является ли убийца из тех самых избранных. TriggerUnit не равно KillingUnit, KillingUnit - убийца. Смотри не ошибись так. А то по скрину у тебя и PickedUnit и TriggerUnit вместе намешаны
он наверное хочет чтобы условие использовалось для всех триггеров.
раскрыть
Starman2222, это в гуи не очень удобно. Можно конвертировать в текст, и взять то условие, переделать норм. И скинуть в шапку. А в тех условиях прописывать через CS функцию.
ну например, в РО пехотинец. Даем ему класс "древо". Когда нужно проверять, используй это условие, вместо длиннющих переборов типов юнитов.
скачиваете JNGP, устанавливаете его, открываете редактор jngp. открываете или создаете карту и работаете. короче снимает лимит. Однако, если сохраните в jngp и попробуете открыть обычным редактором. возможно карта не откроется, так как карта вышла за пределами лимита
» WarCraft 3 / Система зеленого урона
Ред. MpW
» WarCraft 3 / Мигалка у баффов перед исчезновением
» WarCraft 3 / Система зеленого урона
setAttribute_v1.3
equipment system
» WarCraft 3 / Возможность кликать и ходить под декорацией
Ред. MpW
» WarCraft 3 / Анимация здания
Ред. MpW
» WarCraft 3 / Анимация здания
а чтоб постоянная была. то прописыают триггером тэг анимации. или видел как у Иллидана? там два юнита: охотник и демон. Посмотри как у демона сделано. там есть прописано alternate
Ред. MpW
» WarCraft 3 / Есть ли где-нибудь статейки, где BJ функции упрощают?
можно юзать локалки вместо set filterGetUnitsOfTypeIdAll = Condition(function XXX). просто не уверен, что будет ли работать с filterGetUnitsOfTypeIdAll так
Ред. MpW
» WarCraft 3 / Есть ли где-нибудь статейки, где BJ функции упрощают?
или вообще filterGetUnitsOfTypeIdAll = nullвидимо связана эта переменная с bj_groupEnumTypeId. В переменную bj_groupEnumTypeId вбивают id-тип/равкод юнита
Но в jngp не могу увидеть что за переменная, сшита внутри
» WarCraft 3 / Есть ли где-нибудь статейки, где BJ функции упрощают?
Ред. MpW
» WarCraft 3 / Есть ли где-нибудь статейки, где BJ функции упрощают?
вбей в поиск названии функции, может найдешь ответ
например выделяем все здания UNIT_TYPE_STRUCTURE, а те, кто не является зданием отсеиваем
что у тебя там не работает скидывай сюда
Ред. MpW
» WarCraft 3 / "благодать для всех"
» WarCraft 3 / Как сделать массовую способность
Ред. MpW
» WarCraft 3 / "благодать для всех"
Ред. MpW
» WarCraft 3 / "благодать для всех"
чтобы dummy-юнит мог быстро кастовать цель, ставим:
РО - Юнит - Графика - Анимация: Точка броска = 0.00
РО - Юнит - Графика - Анимация: Обратный ход броска = 0.00
как проверить является ли нежитью? смотреть в условии в разделе boolean там где классификация
Ред. MpW
» WarCraft 3 / Хак на память Warcraft3
И скачай jngp + pjass.exe. Если выскакивают ошибки даже с этим. То нужно, как пишут в комментах, еще выключить cJass. Мне помогло это.
И уметь правильно сохраняться (дважды и путь и название карты не дожно содержать кириллицы).
Ред. MpW
» WarCraft 3 / Невидимость скилла
Ред. MpW
» WarCraft 3 / Невидимость скилла
https://www.xgm.guru/forum/showthread.php?t=32732
Ред. MpW
» WarCraft 3 / Расприделение работы тригеров
https://www.xgm.guru/p/wc3/wc3targets
Ред. MpW
» WarCraft 3 / Расприделение работы тригеров
Ред. MpW
» WarCraft 3 / Ограничение на расстановку декораций, войск и предметов.
Однако, если сохраните в jngp и попробуете открыть обычным редактором. возможно карта не откроется, так как карта вышла за пределами лимита
» WarCraft 3 / Расприделение работы тригеров
» WarCraft 3 / Расприделение работы тригеров
» WarCraft 3 / Ограничение на расстановку декораций, войск и предметов.
» WarCraft 3 / Движение декорации или альтернатива
» WarCraft 3 / Увеличилось ли значение памяти для мультиплеерных карт?