Ghostly, тогда способность можно дать на время удара.
Триггер 1:
Событие - Начало применения способности
Условие - Способность = Твоя способность(она не должна наносить урона)
Действия:
Добавить герою способность "Боевой марш"
Приказать герою атаковать цель применяемой способности
Триггер 2:
Событие - Юнит получает урон
Условие - Уровень способности "Боевой марш" у источника урона > 0
Действие - Удалить способность у источника урона
Из альтернативных вариантов - использование мемхака, но это сложнее.
Ghostly, если способности не стакаются, можно попробовать вместо предметов со способностями использовать пустышки, а способности от них запихнуть в скрытый спеллбук и увеличить количество уровней. При подборе/выбрасывании делать проверку на наличие предметов и заносить в переменную. Например, те же ботинки +5, перчатки +10 - в сумме 15. Значит, скрытой способности нужно установить уровень 15.
Но это в теории. Я не пробовал такое. У спеллбука есть несколько неприятных особенностей вроде сбрасывания уровня способностей при загрузке сохранённой игры, но можно делать проверку во время этой загрузки.
Может. Нужно в целях заклинания галочку поставить. Применяется только в своём инвентаре, другие-то не видно. Я сделал способность, направленную на предмет, чтобы делить его заряды. Сработало.
Если количества текстур в наборе карты будет мало, можно триггерно менять текстуру земли в точке, выбирая радиус (Окружение - Change Terrain Type).
Но на мини-карте будет отображаться цвет текстуры, которая была изначально на карте.
Есть ещё статья по импорту(где-то была более подробная, но не могу найти).
Dragonear, для нескольких игроков можно использовать массивы и цикл.
Вот карта. xgm.guru/files/100/184209/comments/344447/Ability_Charges.w3x
Тебе нужно скопировать триггеры и переменные себе в карту.
В карте устанавливай переменную Hero[1...5] = герой игрока 1...5.
Способности - тоже выбери какие нужно. Главное, чтобы не геройские были, а то когда уровень меньше максимального, в скиллменю она высветится для изучения. Это можно обойти. Если нужна геройская способность, то при изучении запрети её для игрока или удали у героя (не знаю, сработает ли) и добавь активную способность с уровнем 3. Не нашёл в триггерах условие сравнения таймера (Таймер = Х), поэтому количество триггеров получилось на 4 больше.
Можно сделать через разные способности и уровни способности. Способность 1 - уровни 1, 2, 3 - с описанием: "..осталось [1, 2, 3] заряда". Способность 2 - уровень 1 - неактивная способность.
Логическая переменная (назовём её Cooldown).
Таймер - время = времени восстановления заряда
Триггер 1 Событие - Применение способности. Условие - Применяемая способность = Способность 1 Действие - Установить применившему уровень Способности 1 = уровень Способности 1 минус 1.
Если Cooldown = false, то
Запустить таймер
Установить Cooldown = true
Если уровень Способности 1 = 0, то
Удалить Способность 1 и добавить Способность 2
Триггер 2 Событие - Время - таймер истекает. Действие - Если уровень Способности 1 больше нуля, то
Установить уровень Способности 1 = уровень Способности 1 плюс 1;
Если уровень Способности 1 = 3, то установить Cooldown = false
. . . . . . . . Иначе - запустить таймер
Иначе - удалить герою Способность 2, добавить Способность 1, запустить таймер.
Да, версия взята из форума, не из проекта. Но там тоже защиты не должно быть по идее.
Может быть)
Ну мне всего лишь нужно движение стрелками + система снарядов Движение стрелками, впрочем, я своё сделал, только анимации надо будет проигрывать - xgm.guru/files/100/184107/comments/344150/Shooter_0.03_.w3x. Интересно посмотреть, как оно в другой карте сделано)
То же, что и в №3 - нужна лишь пара наработок. Остальное - сам. Например, чтобы патроны заканчивались - это я уже делал раньше (через мультиборд / заряды предметов). Сложение зарядов делается тоже легко, через цикл. Респаун противников - это вообще чуть ли не основы редактора))
Дело в том, что UnRes - это, по сути, арена. А можно сделать из неё шутер. С заданиями, сюжетом подлиннее, дополнительными RPG-элементами и прочими наворотами. Ну Alien Shooter все же знают - клёвая игрушка.
Ещё можно без склона повысить землю, как вот тут.
У склона вроде как только 2 текстуры можно использовать в карте. Может, через JNGP можно как-то это ограничение обойти? Или Zepir map editor?
Sergey105, каждый раз, когда здоровье юнита уменьшается, нужно обновить информацию. Иначе триггер сработает только тогда, когда здоровье юнита, к примеру, упадёт меньше 100. А если здоровье уже меньше 100, то событие не сработает же. Придётся создать событие "здоровье меньше 95 (или сколько там осталось после нанесения урона)".
У триггера уже 2 события.
Допустим, юнит восстановил здоровье до 100. Ему нанесли урон 10. В итоге срабатывает событие "здоровье меньше 100" И "здоровье меньше 95", то есть два раза. Вот что я имел в виду.
А при каждом обновлении события будут прибавляться, заставляя триггер срабатывать несколько раз.
Поэтому такой способ не подходит.
Действие: добавить событие в триггер: Юнит - здоровье становится меньше Х.ХХ.
Попробуй это. А когда жизнь убавится, обнови информацию. (Это и есть обновление информации).
Я ошибся! Не учёл того, что события будут копиться, и каждое из них будет запускать триггер, из-за чего он сработает несколько раз подряд. Не знаю, есть ли способ удалить событие из триггера, но если нет - то мой ответ неправильный. Извиняюсь.
» WarCraft 3 / Урон от оружия
» WarCraft 3 / Урон от оружия
Триггер 1:
Событие - Начало применения способности
Условие - Способность = Твоя способность (она не должна наносить урона)
Действия:
Событие - Юнит получает урон
Условие - Уровень способности "Боевой марш" у источника урона > 0
Действие - Удалить способность у источника урона
» WarCraft 3 / Урон от оружия
» WarCraft 3 / Стаки статов
Но это в теории. Я не пробовал такое.
У спеллбука есть несколько неприятных особенностей вроде сбрасывания уровня способностей при загрузке сохранённой игры, но можно делать проверку во время этой загрузки.
» WarCraft 3 / Как определить минимальное число из данных?
» WarCraft 3 / цель заклинания: предмет
» WarCraft 3 / цель заклинания: предмет
Я сделал способность, направленную на предмет, чтобы делить его заряды. Сработало.
Ред. Maniac_91
» WarCraft 3 / Добавление типов рельефа в редакторе
Но на мини-карте будет отображаться цвет текстуры, которая была изначально на карте.
Есть ещё статья по импорту (где-то была более подробная, но не могу найти).
Ред. Maniac_91
» WarCraft 3 / Стандартные модели
Ссылка на полезные программы.
Ред. Maniac_91
» WarCraft 3 / Способность с зарядами.
Вот карта. xgm.guru/files/100/184209/comments/344447/Ability_Charges.w3x
Тебе нужно скопировать триггеры и переменные себе в карту.
В карте устанавливай переменную Hero[1...5] = герой игрока 1...5.
Способности - тоже выбери какие нужно. Главное, чтобы не геройские были, а то когда уровень меньше максимального, в скиллменю она высветится для изучения.
Это можно обойти. Если нужна геройская способность, то при изучении запрети её для игрока или удали у героя (не знаю, сработает ли) и добавь активную способность с уровнем 3.
Не нашёл в триггерах условие сравнения таймера (Таймер = Х), поэтому количество триггеров получилось на 4 больше.
» WarCraft 3 / Способность с зарядами.
Ред. Maniac_91
» WarCraft 3 / Способность с зарядами.
Способность 1 - уровни 1, 2, 3 - с описанием: "..осталось [1, 2, 3] заряда".
Способность 2 - уровень 1 - неактивная способность.
Логическая переменная (назовём её Cooldown).
Таймер - время = времени восстановления заряда
Событие - Применение способности.
Условие - Применяемая способность = Способность 1
Действие - Установить применившему уровень Способности 1 = уровень Способности 1 минус 1.
Если Cooldown = false, то
Событие - Время - таймер истекает.
Действие - Если уровень Способности 1 больше нуля, то
» WarCraft 3 / Проблема с освещением
Удалил на фиг - и всё стало показывать правильно.
» WarCraft 3 / Старая карта не открывается в новом редакторе
» WarCraft 3 / Старая карта не открывается в новом редакторе
» WarCraft 3 / war3mapImported
» WarCraft 3 / Текстура склона
У склона вроде как только 2 текстуры можно использовать в карте.
Может, через JNGP можно как-то это ограничение обойти? Или Zepir map editor?
» WarCraft 3 / Событие на получение урона
Ред. Maniac_91
» WarCraft 3 / Событие на получение урона
У триггера уже 2 события.
Допустим, юнит восстановил здоровье до 100. Ему нанесли урон 10. В итоге срабатывает событие "здоровье меньше 100" И "здоровье меньше 95", то есть два раза. Вот что я имел в виду.
А при каждом обновлении события будут прибавляться, заставляя триггер срабатывать несколько раз.
Поэтому такой способ не подходит.
Ред. Maniac_91
» WarCraft 3 / Событие на получение урона
» WarCraft 3 / Нужна модель? - Вам сюда!
Не будем забивать тему перепиской ))
» WarCraft 3 / Нужна модель? - Вам сюда!
» WarCraft 3 / Нужна модель? - Вам сюда!
» WarCraft 3 / Проблема с освещением