26

» WarCraft 3 / Как отслеживать призыв фабрики и порождения магмы

Принятый ответ
Ну раз через саммон не детектится, то видимо через "вход юнита на карту".
И дальше можно бафф проверить ещё, что б от покупных отличить (если такие есть).
26

» WarCraft 3 / Как ограничить покупку героев в таверне?

DanielRahov:
Это же действует только на меня? Т.е если я выберу героя другие же смогут выбрать его?
Это ограничивает лимит героем для каждого из игроков до 1.
Если ты УДАЛИШЬ героя у игрока (типа как -repick), то у него появится возможность снова его нанять.
Так что можешь убрать лимит еды и её требование, оно больше не нужно.
26

» WarCraft 3 / Триггер на много событий

Принятый ответ
Вариант 1
Можно сделать в одном триггере 5 событий
Боевая единица - умирает "Здание 1"
Боевая единица - умирает "Здание 2"
Боевая единица - умирает "Здание 3"
Боевая единица - умирает "Здание 4"
Боевая единица - умирает "Здание 5"
А дальше добавить условие через И:
Юнит "Здание 1" мёртв == ДА
Юнит "Здание 2" мёртв == ДА
Юнит "Здание 3" мёртв == ДА
Юнит "Здание 4" мёртв == ДА
Юнит "Здание 5" мёртв == ДА
В итоге твой триггер сработает тогда когда умрёт одно из зданий, и в этот момент мертвы будут все 5 (т.е. в момент разрушения последнего из них).
Вариант 2
Общее событие смерти для всех юнитов.
В условии проверяешь ТИП юнита, если он равен твоему зданию (напр. Ферма), тогда проверяешь через И что все здания мертвы, как в предыдущем варианте.
Это подходит если у тебя все 5 зданий одного типа, а не разные, и нет иных условий.
26

» WarCraft 3 / Как ограничить покупку героев в таверне?

Принятый ответ
Найди у себя в триггерах папку "Инициализация".
В ней триггер "HeroLimit".
Поставь у него галочки на "Включен" и "Изначально включен".
Добавить в этот триггер событие "Инициализация карты" (самое первое из всех).
Удали действие "Режим сражения - Установить лимит героев для всех игроков".
Закрой окно редактора триггеров.
Вверху найди вкладку "Дополнительно".
В ней пункт "Игровые константы".
Найди "Технологии - Зависимости (эквиваленты) - Герой".
Открой этот пункт, и через кнопку "Добавить" укажи своих НЕСТАНДАРТНЫХ героев.
Men, Women,
Нажми "ОК", внизу ещё раз "ОК", сохрани карту и проверяй.
26

» WarCraft 3 / Как запретить воскрешать героев в таверне.

izelor:
ПС. тригер будет нормально работать, если у тебя всего один герой НА КАРТЕ, если же их например 2, и они оба умрут, то этим тригером ты воскресишь только последнего.
Нет. Воскрешаться будет КАЖДЫЙ умирающий, кто прошёл проверку. А вот окно таймера будет багаться, т.к. "последний созданный" после ожидания может быть уже другое совсем.
DanielRahov:
Тогда какой тригер чтобы это работало на всех героев.
Любой, с событием "юнит умирает" и действием "воскресить (юнита триггера)".
Это будет работать лишь потому, что "юнит-триггера" почти никогда не теряется, даже после вэйтов (ожиданий) как у тебя.
А вот что ты наставишь между, до и после - уже может по-своему повлиять на общую работу.
Твой триггер должен работать за исключением того, что окно таймера будет корявым.
И условие содержащие "оживляемого юнита" при таком событии не должно работать, т.к. в этот момент у тебя нет такового юнита вообще (либо "юнит-инициатор триггера", либо "умирающий юнит", так же тут будет работать "убивающий юнит", но это уже совсем другой юнит, если конечно он не нанёс урон самому себе, от чего и умер).
DanielRahov:
Да и я почему то не могу указать что умирающая боевая единица это герой
Там есть проверка классификации юнита, а в ней есть выбор является ли юнит - зданием, героем, минотавром, техникой, великаном, самоубийцей, и т.д.
DanielRahov:
Спасибо тогда но чето я не хочу разбиратся в таких общирных способах. Непроще просто своровать у какойто рпг карты если она конечно взломанное а такие сложно найти.
Тогда сведи всё к простому событию "юнит умер", условию "(юнит-инициатор) является (героем) == ДА", и действиям "ждать 40 секунд игрового времени" + "восскресить (юнита-инициатора) в центре области (Men 1)".
Вот и всё.
26

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

Принятый ответ
Событие - регион/область - юнит входит в область X
Условие - сравнение целых чисел (уровень героя (юнит-инициатор триггера)) >= 10
Действия - боевая единица - переместить мгновенно (юнит-инициатор триггера) в точку (центр области Y)
Вот вся суть.
А если же ты говоришь проьстандартный портал - то никак.
26

» WarCraft 3 / Свечение героя или Hero Glow

Принятый ответ
Нет её. Но умельцы сделали её уже очень давно.
Поищи на хайве именно с этим запросом.
26

» WarCraft 3 / Как триггерно юниту ДАТЬ манны а не СЕТНУТЬ?

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

» WarCraft 3 / Способность (Тёмный ритуал)

AncientOverlord, тебе нужно установить текущую ману юнита как сумму двух зачений: его текущая мана + то сколько ты хочешь добавить.
Если у тебя было 500/2000 мана, и ты хочешь добавить 150
То устанавливаешь ману как "текущая мана юнита" + 150
В итоге у юнита будет 500+150=650 маны из 2000
Со здоровьем делают точно так же.
Выше максимума не поднимешь, если что.
26

» WarCraft 3 / Здания дающие манну юниту

С золотом полегче а как с манной не шарил же
Всё тоже самое, только вместо "дать N золота игроку" ты используешь "дать N маны юниту"
26

» WarCraft 3 / Здания дающие манну юниту

Так это же Золото А не мана
Что вы скидываете вечно про инком золота если нужна Мана
Берёшь то что дали.
Изучаешь как оно сделано.
Разбираешься что к чему.
Делаешь своё, но уже с маной вместо золота.
Не?
26

» WarCraft 3 / Способность (Тёмный ритуал)

AncientOverlord:
А как это в виде триггера
Общее событие для юнитов - Юнит приводит способность в действие
Условие - Использованная способность == (твоя_абилка)
Действия:
Боевая единица - Установить текущий уровень маны у (кастера) как ( текущая_мана_(кастера) + некоторое_число )
Боевая единица - Нанести урон от (кастера) по (цели_заклинания) в размере (твоё_число) типом урона (магический) и типом атаки (заклинание).
. . .
В качестве "некоторого числа" нужно использовать арифметический расчёт от "текущего здоровья цели" помноженного на некоторое число, например "0.50" будет равно 50% от текущего ХП юнита (это 150 маны от 300 хп цели).
26

» WarCraft 3 / Здания дающие манну юниту

Делай обычный инком.
За каждое построенное здание пиши игроку в переменную +1.
За каждое разрушенное (захваченное) делай -1.
Каждый N секунд выдавай конкретному юниту ману от переменной.
26

» WarCraft 3 / ворота по вертикале

Смотри в чём тут дело...
Ты, скорее всего, используешь стандартную модельку ворот.
По стандарту она развёрнута лицевой стороной на ЮГ, потому что все здания имеют стандартную ориентацию в 270°. Вот поэтому ты и получаешь свои "горизонтальные" ворота.
Стандартные разрушаемые ворота (разрушаемыми объекты) разворачиваются за счёт параметра fixedRot (Графика - Фиксированное вращение), которой нет у юнитов и зданий соотвественно.
Не особо понимаю зачем надо было создавать отдельно "Ворота З-В" / "Ворота С-Ю", когда установка значения "-1.00" в этом поле позволяет разворачивать ворота как угодно сохраняя правильную карту путей (как у разрушенных/открытых, так и у ещё целых ворот).
Для того что бы развернуть своё здание "ворота" тебе придётся либо:
Вариант А - использовать уже развёрнутую модель, и больше ничего не надо мудрить.
Вариант Б - триггерно разворачивать здание (да, здания можно вращать как юнитов).
Вариант В - имитировать отображение ворот через разрушаемый объект...
. . .
Я однажды решал такой вопрос за счёт превращения фермы (2х2) в круг силы (2х2) по средствам обычной способности "Превращение в друида-медведя". Это был максимально простой способ реализации, который позволял создавать непроходимость в нужной зоне по одной кнопке. Строишь 2-3 фермы рядом и потом вместе их "открываешь/закрываешь" (как бункер из StarCraft'a).
26

» WarCraft 3 / Почему предмет не использует 2 способности одновременно

Подтверждаю. Предмет не может активировать одновременно две абилки (активных). В лучшем случае - спеллбук с двумя разными абилками внутри, но это будет не то же самое.
Как вариант - добавить дамми-каст одной из абилок при использовании другой.
Применил молот бурь и в цель тут же кастуется увечье (на самом деле быстрее чем молот в неё попадёт и нанесёт урон).

Всякие талисманы защиты могут отлетать из-за того что по факту кастуется две абилки сместо одной (линкен сфера из доты).
26

» WarCraft 3 / Как через триггеры добавлять способности в книгу заклинаний

Принятый ответ
Нужно к его контейнеру абилок (спеллбуку) подкладывать другой контейнер с тем же полем воздействия (одинаковым ордером). Тогда содержимое контейнеров объединится в один список. Удалять так же - через удаление родительского контейнера.
26

» WarCraft 3 / Отнять золото у игрока в %

Принятый ответ
Дополню для душнил
текущее золото игрока * 0.15 = 15% от имеющегося золота у игрока

А дальше уже с этим значением можешь манипулировать как угодно:
Отнимать это число золота у игрока.
Давать это же самое число золота другому игроку.
Выводить текстовые сообщения на экран с эти числом.
А если же тебе нужно просто уменьшить текущее золото игрока и пни этом вообше бошьше ничего, то можно приравлять текущей запас золота игрока в его текущему щапасу золота помноженному на 0.85. Имея 1000 золота оно умножится на 0.85 и получится 850, что равно разнице между изначальным значением и -15% от него же.
26

» WarCraft 3 / Нападение крипов на героев

Дистанция получения приказа - 20000
И ещё, лучше открыть этому игроку всю карту.
Тогда юниты сами будут агриться на лббого видимого игрока.
В приоритете НЕздания.
26

» WarCraft 3 / Способность фуры из Доты

До мультеприменимости твой пример развить надо
Нет.
То что я описал и будет мультиприменяемым (если ты правильно воспроизведёшь описанное).