32

» WarCraft 3 / Опять они

Alexey103:
Hate, я его давно устанавливал, и вообще не помню была ли там инструкция. Кинь ссылку на то место откуда ты свой брал.
В теме с JNGP полным поно инструкций, постов с проблемами и постов с решеним проблем, утилите очень много лет, так что вы особенный, у всех остальных все работает.
32

» WarCraft 3 / Тригерное похищение жизни

Araders, похищение жизни - это эффект молнии, это анимированный спрайт, а не модель, он всегда поворачивается к камере так чтобы нельзя было увидеть что он плоский. Лежать они в мпк архивах игры, можно заменить стандартные на свои или дописать свои в слк таблицу, тогда её нужно воткнуть в карту.
Что вы хотите сделать из похищения жизни? Что именно, по подробнее.
32

» WarCraft 3 / Накопившиеся ошибки и юниты в течение долгих лет, что делать?

Принятый ответ
Переделывайте юнитов, с нуля. Как и код подправьте, ид юнитов\предметов (да всего) это числа от N и до хрен знает сколько, это все данные в таблице, когда удаляете эти обьекты остаются незанятые ячейки, ну из 250 юнитов, осталось только 150, 100 ячеек пустые вот и багует редактор.
32

» WarCraft 3 / Куда деваются герои нейтрально враждебного?

Принятый ответ
Alexey103:
Бордер, Вопрос не в этом, вопрос остаются ли данные после их смерти.
Разумеется, герои не разлагаются как крипы, а сидят в неком подземном мире (на самом деле адресном пространстве) на карте их нет, но все данные хранятся в памяти и их можно оживить.
32

» WarCraft 3 / Как автоматически убрать все утечки в триггерах?

Нет, от кривых рук никакой софт не спасет. Учитесь писать без утечек, читайте статьи, смотрите примеры. У вас обязательно получится избавится от утечек.
32

» WarCraft 3 / Как сделать ауру активной?

Нельзя поменять механику дефолтных способностей, уже какой раз говорю... Ауры могут быть только аурами, для вампиризма есть аналог - зелье вампиризма, бафф, рассеивается диспелами и так далее.
Если что - ауры ничем не снимаются с Юнита, в отличии от баффов способностей вроде ледяного щита или леденяшего крика. Так что делаем триггерный аналог.
32

» WarCraft 3 / Где утечка и как её убрать?

В принципе вампиризм не шибко сложно сделать, но не на гуи. Детектить физический урон + что он с руки а не от клиф атаки или сплеша..
Так что изучайте jass, там кстати есть готовые системы детекта физического урона.
32

» WarCraft 3 / Где утечка и как её убрать?

Тут вроде все нормально, без утечек. Условие кривое, орб вампиризма вручай всем Юнита в группе А не при замахе. То что не складываются зелья вампиризма никак не пофиксить, пробуй вампирика ауру для мили героев. Можно так же сделать фулл триггерный вампиризм, но это не для ГУИ задачка.
32

» WarCraft 3 / Хак на память Warcraft3

Аатака и перемещение это такие способности а не просто настройки в РО. не удивительно что фаталило, код ищет абилку атаки у юнита чтобы сменить урон (а атаки то нету), по этому проверяй есть ли 'Aatk' у юнита или 'Amov' если собрался что то менять в перемещении юнита.
32

» WarCraft 3 / Опять они

В гуях полным полно утечек, чему тут удивлятся. Гуи не создано для таких динамических действий, мили карты и кампании - вот для чего нужен гуи, остальное jass.
Что думайте близзарды пилили бомбардировщиков и гранпри азерота на jass еще и юзали массивы как в vjass структуры. Дураки что-ли были?
Хотите что то лучше кампании, мили или небольшой аркады - переходите на jass.
32

» WarCraft 3 / Способность с атакой

PUVer:
quq_CCCP, инвентаря у юнитов нет.
biridius, спасибо за условие. Пришлось сделать много ифов. Но всё работает.
Им его можно вручить вместе с руной а затем удалить. В статье написано как...
32

» WarCraft 3 / Add event DamageTaken создаёт утечку, как исправить?

А зачем тебе плодить ивенты? Это события - юнит получает урон, события никак не удаляются, можно удалить лишь триггер, да и то не в гуи.
Вовсе не надо в гуи делать все что связано с детектом урона, это сложно для уровня гуи и стоит явно переходить на jass.
32

» WarCraft 3 / Способность с атакой

Эмм есть такая книга, повышает белую атаку владельцу - работает как руна. Ну вручаеш её герою при каждом убийстве, если бонус не планируется снимать. То сделать книжками очень изи, как вручать руны и прочее можно почитать в моей статье по предметам
32

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

Steal nerves, мб пригодится?
function Is2cc takes real r, real cx, real cy, real px1, real py1, real px2, real py2 returns boolean
        local real dx = 0.00 
        local real dy =  0.00 
        local real a =  0.00 
        local real b = 0.00  
        local real c = 0.00 
        
        set px1 = px1 - cx
        set py1 = py1 - cy
        set px2 = px2 - cx
        set py2 = py2 - cy
        set dx = px2 - px1
        set dy = py2 - py1
        set a = dx * dx + dy * dy
        set b = 2.00 * ( px1 * dx + py1 * dy )
        set c = px1 * px1 + py1 * py1 - r * r
        
        if ( -b < 0.00 ) then
            return ( c < 0.00 )
        elseif ( -b < ( 2.00 * a ) ) then
            return ( ( 4.0 * a * c - b * b ) < 0 )
        endif
        return ( a + b + c < 0 )
    endfunction
Определяет пересекает ли вектор окружность или нет.
Юзал для ИИ чтобы определяет попадает ли путь юнита в зону агра врагов...
32

» WarCraft 3 / Смертельный удар игнорирует броню?

Криты при срабатывании заменяют обычную атаку, множеной, выводя цифры исходя из умножения текущей атаки Юнита на момент удара. Урон от крита, это такая же атака как и обычная, только увеличенная на множитель, разумеется она снижается защитой и на нее действует 100500 факторов,.
32

» WarCraft 3 / Выбивает из игры и за данного триггера

Принятый ответ
Что то ничего непонятно, ставьте дебаги и смотрите на каком действие крашится, мб рекурсия где?
32

» WarCraft 3 / Fervor, Critical, Evade (способности)

Ну как по мне - детект урона рунными браслетами самое то, если не юзать мемхак.
Правда на хайве автор сделал фигню - вроде б.д резистов, бред. Вручаем рунные браслеты и смотрим на урон, если урон выше 0 - это физический урон или клиф (клиф отлавливают точно так же как и ты атака+приказы), если урон ниже нуля - он будет хилить юнита, если у юнита фулл хп, тогда можно не парится и через 1 фрейм (таймер на 0.00 сек.), иначе нам нужно снизить юниту хп на кол-во отрец урона, чтобы избавится от хила, а потом умножаем наш урона на -1.34 если цель герой чтобы получить изначальное кол-во маг урона.
Удаляем у юнита резист, ставим флаг (глобалку как у тебя) чтобы триггер не сработал на этот урон и наносим урон, потом снова врубаем резист, таким образом мы не нарушаем систему дефольтных маг резистов и маг бонусов от благословения элуны и от атсрала.
Нет никаких баз данных и прочее, при дальнем бое лучше проверять что цель умерла -TriggerRegisterDeathEvent() именно этим событием, у цели может быть крест перерождения и аналоги, а только это событие срабатывает на смерть с крестом перерождения, особенно полезно для снятия дебафов - т.к это событие сработает при падении хп до нуля, за фрейм до того как юнит умрет и станет не выбираемым и не активным.
Это событие используется во внутриигровых триггерах (все баффы\дебафы такие триггеры) чтобы снимать к примеру оглушения.
Так же на детекте урона можно сделать удобную систему снарядов, двигать дамиков мутарно а сделать им норм анимацию и параболическую траекторию и вовсе куча кода, а так берем аксид бомбу и ждем её баффа с уроном на цели от лица кастера и все =)
Удачи в начинаниях.
32

» WarCraft 3 / В чём ошибка с локальными переменными?

Что за идиотия? Описано во всех статьях по jass локалки объявляются в начале функции, вейты - зло, и так далее.
32

» WarCraft 3 / triggeraction внутри triggercondition

ScopteRectuS, синхронизация локальных данных, обычно юзают при системах сейв лоада.
32

» WarCraft 3 / triggeraction внутри triggercondition

ScopteRectuS, там екзекут а не call, в кондишенах не работают вейты и синх, что то там еще. Лимит операций другой, особо тонкостей не помню, но писать можно как угодно, ваше дело, особо ничего не дает. Просто return GetSpelLAbilityId() == "A000' было бы проще. Ах да, можно сделать одно условие на все спеллы и не плодить их, уже писал это не раз, могу дать свою карту для изучения, как реально сделать все спеллы удобно и не забивать себе голову подобной ахинеей.
32

» WarCraft 3 / triggeraction внутри triggercondition

Принятый ответ
Нахрена вам это? Почувствовали себя IseFrog'ом, triggercondition и нужны чтобы не нагружать ненужными действиями движок, а так же разделить код, на частый и легкий и тяжелый и редкий, у фрога так реализованы всякие дебафы вроде уроны, в кондишене проверяется от чего сработал триггер, если это таймер то нанести урон, иначе если триггер сработал от любого другого события то удалить весь эффект и выполнить утилизацию триггера...