Ну, я не особо понимаю что там за механизм копирования, но...
Выбираешь всех юнитов в области и каждого создаёшь нового юниту в другой области, тип юнита определяешь как у выбранного, положение относительно центра области тоже можно подогнать как у выбранного (если это играет роль), и т.д.
Joma, событие у триггера какое?
Если там что-то про юнита - то игрока такого у тебя наверно не будет вообще
А если событие для игрока - то надо смотреть что дальше происходит
Замени это на "Owner of (unit)" и укажи там своего героя
"Triggering player" используется с событиями где упоминается ИГРОК А так же, иногда, отвечает "владелец юнита-иницитора", т.е. "Player-owner of (Triggering unit)"
Ты уверен что она всё ещё есть у героя?
Проверка уровня абилки должно показать её наличие, даже если она заблокирована.
Возможно ты ссылаешь не на того юнита. Проверь не так ли это.
Возможно игрок на которого ты ссылаешься для разблокировки это не тот который тебе нужно - проверь и это тоже.
Ну судя по ссылкам, задумка в отлове урона, через создание триггеров/ивентов, и это на карте где (видимо) они создаются для всего подряд в течении "4-5 часов игры" ... ахтунг )))
Находишь в РО (редактор объектов) этот самый Алтарь Бури, в нём будет перечень обучаемых героев, открыв его можно добавить/удалить нужного героя.
Что бы игра не давала тебе нанимать несколько таких новых героев, нужно внести его (твоего Громмаша) в список "стандартных" героев. Это находится в игровых константах, там будет список.
Ну раз через саммон не детектится, то видимо через "вход юнита на карту".
И дальше можно бафф проверить ещё, что б от покупных отличить (если такие есть).
Это же действует только на меня? Т.е если я выберу героя другие же смогут выбрать его?
Это ограничивает лимит героем для каждого из игроков до 1.
Если ты УДАЛИШЬ героя у игрока (типа как -repick), то у него появится возможность снова его нанять.
Так что можешь убрать лимит еды и её требование, оно больше не нужно.
Боевая единица - умирает "Здание 1"
Боевая единица - умирает "Здание 2"
Боевая единица - умирает "Здание 3"
Боевая единица - умирает "Здание 4"
Боевая единица - умирает "Здание 5"
А дальше добавить условие через И:
Юнит "Здание 1" мёртв == ДА
Юнит "Здание 2" мёртв == ДА
Юнит "Здание 3" мёртв == ДА
Юнит "Здание 4" мёртв == ДА
Юнит "Здание 5" мёртв == ДА
В итоге твой триггер сработает тогда когда умрёт одно из зданий, и в этот момент мертвы будут все 5 (т.е. в момент разрушения последнего из них).
Вариант 2
Общее событие смерти для всех юнитов.
В условии проверяешь ТИП юнита, если он равен твоему зданию (напр. Ферма), тогда проверяешь через И что все здания мертвы, как в предыдущем варианте. Это подходит если у тебя все 5 зданий одного типа, а не разные, и нет иных условий.
Найди у себя в триггерах папку "Инициализация".
В ней триггер "HeroLimit".
Поставь у него галочки на "Включен" и "Изначально включен".
Добавить в этот триггер событие "Инициализация карты" (самое первое из всех).
Удали действие "Режим сражения - Установить лимит героев для всех игроков".
Закрой окно редактора триггеров.
Вверху найди вкладку "Дополнительно".
В ней пункт "Игровые константы".
Найди "Технологии - Зависимости (эквиваленты) - Герой".
Открой этот пункт, и через кнопку "Добавить" укажи своих НЕСТАНДАРТНЫХ героев.
Men, Women,
Нажми "ОК", внизу ещё раз "ОК", сохрани карту и проверяй.
ПС. тригер будет нормально работать, если у тебя всего один герой НА КАРТЕ, если же их например 2, и они оба умрут, то этим тригером ты воскресишь только последнего.
Нет. Воскрешаться будет КАЖДЫЙ умирающий, кто прошёл проверку. А вот окно таймера будет багаться, т.к. "последний созданный" после ожидания может быть уже другое совсем.
Тогда какой тригер чтобы это работало на всех героев.
Любой, с событием "юнит умирает" и действием "воскресить (юнита триггера)".
Это будет работать лишь потому, что "юнит-триггера" почти никогда не теряется, даже после вэйтов (ожиданий) как у тебя. А вот что ты наставишь между, до и после - уже может по-своему повлиять на общую работу.
Твой триггер должен работать за исключением того, что окно таймера будет корявым. И условие содержащие "оживляемого юнита" при таком событии не должно работать, т.к. в этот момент у тебя нет такового юнита вообще (либо "юнит-инициатор триггера", либо "умирающий юнит", так же тут будет работать "убивающий юнит", но это уже совсем другой юнит, если конечно он не нанёс урон самому себе, от чего и умер).
Спасибо тогда но чето я не хочу разбиратся в таких общирных способах. Непроще просто своровать у какойто рпг карты если она конечно взломанное а такие сложно найти.
Тогда сведи всё к простому событию "юнит умер", условию "(юнит-инициатор) является (героем) == ДА", и действиям "ждать 40 секунд игрового времени" + "восскресить (юнита-инициатора) в центре области (Men 1)".
Событие - регион/область - юнит входит в область X
Условие - сравнение целых чисел (уровень героя (юнит-инициатор триггера)) >= 10
Действия - боевая единица - переместить мгновенно (юнит-инициатор триггера) в точку (центр области Y)
Вот вся суть.
А если же ты говоришь проьстандартный портал - то никак.
Юниту нельзя просто добавить/отнять здоровье или ману.
Вместо этого ты сразу устанавливаешь конкретное значение.
А этим конкретным значением может являться сумма его текущего здоровья и некоего числа. Может быть разность, или произведение/частное. В общем всё что угодно, ли бы ты мог это посчитать.
Конечно можно написать функцию, которая будет принимать в качестве аргумента конкретного юнита и число, и выполнять изменение его здоровья на это число. Но надо ли? Это с обеих сторон совсем не сложная задача.
. . .
Подобная ситуация с "толканием юнита". Его нельзя просто сдвинуть в нужную сторону под нужным углом с некоторой скоростью (что-то типа произвольного скольжения). Его можно мгновенно переместить. Если это делать 20-30 раз в секунду на небольшую дистанцию, то будет выглядеть как будто он непрерывно движется с небольшой скоростью...
AncientOverlord, тебе нужно установить текущую ману юнита как сумму двух зачений: его текущая мана + то сколько ты хочешь добавить.
Если у тебя было 500/2000 мана, и ты хочешь добавить 150
То устанавливаешь ману как "текущая мана юнита" + 150
В итоге у юнита будет 500+150=650 маны из 2000
Со здоровьем делают точно так же. Выше максимума не поднимешь, если что.
Общее событие для юнитов - Юнит приводит способность в действие
Условие - Использованная способность == (твоя_абилка)
Действия:
Боевая единица - Установить текущий уровень маны у (кастера) как ( текущая_мана_(кастера) + некоторое_число )
Боевая единица - Нанести урон от (кастера) по (цели_заклинания) в размере (твоё_число) типом урона (магический) и типом атаки (заклинание).
. . .
В качестве "некоторого числа" нужно использовать арифметический расчёт от "текущего здоровья цели" помноженного на некоторое число, например "0.50" будет равно 50% от текущего ХП юнита (это 150 маны от 300 хп цели).
Делай обычный инком.
За каждое построенное здание пиши игроку в переменную +1.
За каждое разрушенное (захваченное) делай -1.
Каждый N секунд выдавай конкретному юниту ману от переменной.
» WarCraft 3 / Триггер - копирование массово отряда
Выбираешь всех юнитов в области и каждого создаёшь нового юниту в другой области, тип юнита определяешь как у выбранного, положение относительно центра области тоже можно подогнать как у выбранного (если это играет роль), и т.д.
» WarCraft 3 / Не разблокируется способность.
Если там что-то про юнита - то игрока такого у тебя наверно не будет вообще
А если событие для игрока - то надо смотреть что дальше происходит
» WarCraft 3 / Не разблокируется способность.
А так же, иногда, отвечает "владелец юнита-иницитора", т.е. "Player-owner of (Triggering unit)"
» WarCraft 3 / Не разблокируется способность.
Проверка уровня абилки должно показать её наличие, даже если она заблокирована.
Возможно игрок на которого ты ссылаешься для разблокировки это не тот который тебе нужно - проверь и это тоже.
» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров
» WarCraft 3 / Как добавить созданного героя в Алтарь бури
» WarCraft 3 / Как добавить созданного героя в Алтарь бури
Но кажется ты хочешь добавить этого героя во все карты сражения, да?
» WarCraft 3 / IsUnitDeadBJ()
Почекай это.
» WarCraft 3 / Как отслеживать призыв фабрики и порождения магмы
» WarCraft 3 / Как отслеживать призыв фабрики и порождения магмы
И дальше можно бафф проверить ещё, что б от покупных отличить (если такие есть).
» WarCraft 3 / Как ограничить покупку героев в таверне?
Если ты УДАЛИШЬ героя у игрока (типа как -repick), то у него появится возможность снова его нанять.
» WarCraft 3 / Триггер на много событий
В условии проверяешь ТИП юнита, если он равен твоему зданию (напр. Ферма), тогда проверяешь через И что все здания мертвы, как в предыдущем варианте.
Это подходит если у тебя все 5 зданий одного типа, а не разные, и нет иных условий.
Ред. Extremator
» WarCraft 3 / Как ограничить покупку героев в таверне?
В ней триггер "HeroLimit".
Поставь у него галочки на "Включен" и "Изначально включен".
Добавить в этот триггер событие "Инициализация карты" (самое первое из всех).
Удали действие "Режим сражения - Установить лимит героев для всех игроков".
Закрой окно редактора триггеров.
В ней пункт "Игровые константы".
Найди "Технологии - Зависимости (эквиваленты) - Герой".
Открой этот пункт, и через кнопку "Добавить" укажи своих НЕСТАНДАРТНЫХ героев. Нажми "ОК", внизу ещё раз "ОК", сохрани карту и проверяй.
» WarCraft 3 / Как запретить воскрешать героев в таверне.
» WarCraft 3 / Как запретить воскрешать героев в таверне.
Это будет работать лишь потому, что "юнит-триггера" почти никогда не теряется, даже после вэйтов (ожиданий) как у тебя.
А вот что ты наставишь между, до и после - уже может по-своему повлиять на общую работу.
Твой триггер должен работать за исключением того, что окно таймера будет корявым.
И условие содержащие "оживляемого юнита" при таком событии не должно работать, т.к. в этот момент у тебя нет такового юнита вообще (либо "юнит-инициатор триггера", либо "умирающий юнит", так же тут будет работать "убивающий юнит", но это уже совсем другой юнит, если конечно он не нанёс урон самому себе, от чего и умер).
Ред. Extremator
» WarCraft 3 / Как сделать условие для вхождение в портал?
Условие - сравнение целых чисел (уровень героя (юнит-инициатор триггера)) >= 10
Действия - боевая единица - переместить мгновенно (юнит-инициатор триггера) в точку (центр области Y)
» WarCraft 3 / Свечение героя или Hero Glow
Поищи на хайве именно с этим запросом.
Ред. Extremator
» WarCraft 3 / Как триггерно юниту ДАТЬ манны а не СЕТНУТЬ?
Вместо этого ты сразу устанавливаешь конкретное значение.
А этим конкретным значением может являться сумма его текущего здоровья и некоего числа. Может быть разность, или произведение/частное. В общем всё что угодно, ли бы ты мог это посчитать.
Ред. Extremator
» WarCraft 3 / Способность (Тёмный ритуал)
То устанавливаешь ману как "текущая мана юнита" + 150
В итоге у юнита будет 500+150=650 маны из 2000
Выше максимума не поднимешь, если что.
» WarCraft 3 / Здания дающие манну юниту
» WarCraft 3 / Здания дающие манну юниту
Изучаешь как оно сделано.
Разбираешься что к чему.
Делаешь своё, но уже с маной вместо золота.
Ред. Extremator
» WarCraft 3 / Здания дающие манну юниту
» WarCraft 3 / Способность (Тёмный ритуал)
Условие - Использованная способность == (твоя_абилка)
Действия:
Боевая единица - Нанести урон от (кастера) по (цели_заклинания) в размере (твоё_число) типом урона (магический) и типом атаки (заклинание).
» WarCraft 3 / Здания дающие манну юниту
За каждое построенное здание пиши игроку в переменную +1.
За каждое разрушенное (захваченное) делай -1.
Каждый N секунд выдавай конкретному юниту ману от переменной.