Есть способность, когда её активируешь герой получает 100% уклонение на несколько секунд, в триггерах я добавляю воину Змеиную ловкость со 100% уклонения на время действия способности. Подскажите как сделать, чтобы иконка Змеиной ловкости не появлялась? (Ну очень не красиво, когда включил способность и появляется другая, затем пропадает)

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

Засовываем змеиную ловкость в спелбук, а спелбук блокируем командой "Игрок - Enable/Disable Ability". В скрытый спелбук можно добавлять только пассиные способности. Ищи на тему как скрыть способность, иконку/кнопку способности. xgm.guru/forum/showthread.php?t=31722 И называйте норм тему
можно через хак, но требует определенные знания
function SetAbilityDisabled takes integer pAbility, integer count returns nothing
function GetAbilityDisabledCount takes integer pAbility returns integer
function SetAbilityHidden takes integer pAbility, integer count returns nothing
function SetAbilityDisabled2 takes integer pAbility, integer count returns nothing
function GetAbilityDisabled2 takes integer pAbility returns integer
function ShowAbilityById_Main takes integer ConvertedHandle, integer d returns nothing
function HideAbilityButton takes unit u, integer id, boolean hide returns nothing
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
19
7 лет назад
0
Похожие вопросы:

ответ
Nikita_Gamers, ну вот есть неплохая статья xgm.guru/p/wc3/movingsystem
ответ
но если ты не знаешь порядок выполнения и системные функции карты(которые редактор создаёт сам) то забудь про создание мода
Nikita_Gamers, инициализация
создание триггера,регистрация события,добавление действий и условий к триггеру
также лучше вынести все инициализации в другой поток(ибо лимит)
и нужно стартануть этот поток из начального потока
скорее всего ты ничерта не понял поэтому советую xgm.guru/p/wc3/code-flow-and-data-access
и вытащи из пустой мапы j файл чтобы глянуть какие там функции(начальный поток стартует из функции main)
и посмотри какие бж вызываются из main чтобы знать какую функцию редактировать в близард джи
ответ
Просто оставлю это и это здесь
ответ
импортируй этот файл в карту и пропиши ему путь "units\CommandFunc.txt"
Данным способом можно убрать "Патруль" у всех юнитов на карте без исключения

для тех кому интересно, как это сделано
[CmdPatrol]
Art=CommandPatrol
Buttonpos=0,-11
и ссылочка на статью на хайве
ответ
А касательно остальной части, если UnitUserData нигде не используется, создаешь массив юнитов и отрядов. Массив юнитов забиваешь своими капитанами. В UnitUserData капитана пихаешь его порядковый номер в массиве. Создаешь группу юнитов для этого капитана.
  1. Добавление через каст способности.
Я бы делал через 2 разные абилки с одной и той же позицией в интерфейсе. Пока нужный тебе юнит не является частью отряда - у него таргетная абилка при касте которой на капитана он добавляется в группу соответствующего капитана и получает 2ю абилку взамен первой.
Касательно выделения этих пехотинцев - можно намутить что-то с передачей контроля или создать триггер, который будет снимать выделение с юнитов у которых есть 2я абилка. Если ты хочешь чтобы по одиночке можно было выделять пехотинцев - можешь создать переменную для каждого игрока с капитанами, куда будет просто записываться последний выбранный юнит. При снятии выделения - проверять не выбран ли этот же юнит, в случае чего не снимать выделение. Правда не уверен будет ли корректно работать :> В крайнем случае - будет работать в три клика вместо двух. Если я не ошибаюсь.
Касательно поведения этих пехотинцев - что-то реально стоящее сделать сложно. Возможно, но мне не с руки все расписывать :> Простейший вариант - приказывать пехотинцам после добавления в группу следовать за капитаном.
  1. Добавление через атаку капитана
Триггер, проверяющий что капитан получил урон или атакован, как угодно. Далее любым способом проверяешь есть ли в группе этого капитана юниты. Если нет - выбираешь всех пехотинцев N радиусе, добавляешь в отряд, заменяешь абилку/либо просто приказываешь кастануть в капитана первую абилку.

3
27
7 лет назад
Отредактирован MpW
3
Засовываем змеиную ловкость в спелбук, а спелбук блокируем командой "Игрок - Enable/Disable Ability". В скрытый спелбук можно добавлять только пассиные способности. Ищи на тему как скрыть способность, иконку/кнопку способности. xgm.guru/forum/showthread.php?t=31722 И называйте норм тему
можно через хак, но требует определенные знания
function SetAbilityDisabled takes integer pAbility, integer count returns nothing
function GetAbilityDisabledCount takes integer pAbility returns integer
function SetAbilityHidden takes integer pAbility, integer count returns nothing
function SetAbilityDisabled2 takes integer pAbility, integer count returns nothing
function GetAbilityDisabled2 takes integer pAbility returns integer
function ShowAbilityById_Main takes integer ConvertedHandle, integer d returns nothing
function HideAbilityButton takes unit u, integer id, boolean hide returns nothing
Принятый ответ
0
16
7 лет назад
0
позицию кнопки ставишь -2147483648,-2147483648
0
27
7 лет назад
Отредактирован MpW
0
DracoL1ch, это через редактор объектов или через хак? В РО я ставил такое значение, но ниже чем -1000000000 в редакторе не ставится. И при отрицательном значении крашится вар. Если это поставить в изучении (х, у), то крашится при нажатии красного плюсика (изучения). Если просто в используется (х, у), то при получении крашится. Надо будет в таблицах .slk или через хак попробовать ввести такие значения
0
16
7 лет назад
0
кнопка описывается в текстовиках. нужны именно эти значеиня, иначе краш
1
15
7 лет назад
1
Можно как вариант поменять у Змеиной ловкости иконку. Хоть красивее будет
Чтобы оставить комментарий, пожалуйста, войдите на сайт.