Не знаю, возможно ли это реализовать в варкрафте, но мне нужно сделать такую систему, чтобы были способности с зарядами. Например есть способность и у нее есть три заряда, которые можно использовать без кулдауна. Каждый заряд восстанавливается со временем. Может кто знает, как реализовать эту идею. Буду благодарен.

Принятый ответ

Можно сделать через разные способности и уровни способности.
Способность 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, запустить таймер.
0
19
7 лет назад
0
Похожие вопросы:

ответ
задержался немног
вобщем там в разделе глобалс указываешь равкоды и время,скил лучше скопируй
триггер скопируешь в свою мапу
и код лучше не читай(вредит зрению)
ответ
Идеальный вариант чтобы игрок сам мог решать, нужно ли ему это. Сделай, если будет смотреться неплохо. И каким то образом запилить возможность выключения этой фичи.
ответ
Урон настраивается через уровень способности, или как было сказано unit - damage target
команда для использования нестандартной способности берется от той способности, на основе которой ты её сделал, и если это цепь тралла - Unit - issue order with targetign a unit - orc - chain lighting
ответ
У нас 3 абилки могут отображать счетчик зарядов, совы охотницы, ракеты у осадных гномов и баг с техникой (подходит для пассивок)
Далее тока куча абилок с разными иконками..
ответ
Очень просто, проверяем каст по приказу юза предмета и если цель неподходящая то дропаем предмет юниту под ноги, а потом заставляем подобрать его.

0
27
7 лет назад
Отредактирован MpW
0
можно (удалить и добавить заново) точно не уверен.надо посмотреть на сайте/на форуме. поищите на слова осветительный заряд, сторожевая сова. но это будет гемор с бд (одинаковые абилки, но с разными зарядами)
можно сделать еще продажу предмета самому себе xgm.guru/forum/showthread.php?t=45020
лучше бы напрямую как-то влиять, но к не счастью нет таких нативок. Есть у нас не стандартное решение - взлом памяти - memort hack. Ждем вездесущего драколича, мб он даст интересный ответ. ну ничего подожди немного. сейчас он спит
5
18
7 лет назад
Отредактирован Maniac_91
5
Можно сделать через разные способности и уровни способности.
Способность 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, запустить таймер.
Принятый ответ
0
12
7 лет назад
0
У меня в мапе есть такие. Правда для изображения зарядов и их перезарядки я использую плавающий текст над героем) В основе способность без кд. Если зарядов нет то я стоплю её каст и пишу сообщение об ошибки "Не осталось зарядов". Так что реализовать можно причем разными способами)
Кстати с удалением добавлением способности можно попробовать думаю должно получится...
1
32
7 лет назад
1
Есть только 2 стандартные способности с зарядами, это осветительный заряд и совы охотницы, обе цель точка... Не подходит, реализуем иначе.
Способов много, от кривых как у айсфрога меняя описания, до нормальных. Можно менять иконки с помощью 'ANeg'.
0
12
7 лет назад
Отредактирован EvilPenguin
0
quq_CCCP, а у этих способностей можно какой-то функцией динамически менять заряды?
0
32
7 лет назад
0
EvilPenguin:
quq_CCCP, а у этих способностей можно какой-то функцией динамически менять заряды?
Молча, меняя уровни или юзая 'ANeg'
А кстати лич же сделал функцию смены зарядов на мемхаке, но только для осветительной ракеты.
0
15
7 лет назад
0
Имхо, маньяк предложил самый годный вариант, только немного подредактировтаь
2 абилки. Одна пустышка пассивная с иконкой твоей абилки (ну чтобы не нажималась)
Вторая твоя активная (имеет 3 уровня= 3 заряда) и каждый раз сбрасывать на 1.Если игрок юзанул эту абилку первого уровня, значит удалить абилку и добавить заместо нее ту пустышку пассивную.
0
6
7 лет назад
0
Когда я задумывался на эту тему я пошел другим путем. У меня нужно 4 раза скастовать спелл, а на 5 раз абилка становится кд 1 сек и 0 маны и в течение короткого времени можно ей спамить (там мини-стан с расстояния и прыжок к врагу)
2
19
7 лет назад
2
Был уже похожий вопрос:
quq_CCCP:
У нас 3 абилки могут отображать счетчик зарядов, совы охотницы, ракеты у осадных гномов и баг с техникой (подходит для пассивок)
Далее тока куча абилок с разными иконками..
0
7
7 лет назад
0
Я недавно делал такое, не самый лучший пример, но такое можно сделать, 3 скилл на мапе, посмотри
Загруженные файлы
0
18
7 лет назад
0
EnergyFrost, именно так я и предложил)
Этот комментарий удален
0
11
7 лет назад
0
Maniac_91:
ваш вариант вполне пригоден, но как проделать это с учетом того, что такие способности будут у 5 разных игроков. это же нужно создавать очень много триггеров, таймеров и прочее.
0
32
7 лет назад
0
Dragonear:
Maniac_91:
ваш вариант вполне пригоден, но как проделать это с учетом того, что такие способности будут у 5 разных игроков. это же нужно создавать очень много триггеров, таймеров и прочее.
Ну делайте из осветительной ракеты, если вам нужна цель точка. Иначе канал с разными иконками, для смены иконок много триггеров ненужно, просто переодически таймером меняем абилку техникой, проверив что юнит жив.
0
18
7 лет назад
Отредактирован Maniac_91
0
Dragonear, для нескольких игроков можно использовать массивы и цикл.
Вот карта. xgm.guru/files/100/184209/comments/344447/Ability_Charges.w3x
Тебе нужно скопировать триггеры и переменные себе в карту.
В карте устанавливай переменную Hero[1...5] = герой игрока 1...5.
Способности - тоже выбери какие нужно. Главное, чтобы не геройские были, а то когда уровень меньше максимального, в скиллменю она высветится для изучения.
Это можно обойти. Если нужна геройская способность, то при изучении запрети её для игрока или удали у героя (не знаю, сработает ли) и добавь активную способность с уровнем 3.
Не нашёл в триггерах условие сравнения таймера (Таймер = Х), поэтому количество триггеров получилось на 4 больше.
Загруженные файлы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.