KaneThaumaturge, вот серьезно стоило так изощрятся на гуи ради того чтобы юнит сменял тип атаки?
Не проще было сделать рунами с морфом в другого юнита, где ты уже выставишь и теги анимаций и прочее для дальней и дла магической атаки.
Так же гуи слишком крив и утечен для таких вещей как перемещение по координатам 100500 обьектов, уже не раз это разжевывали.
Так же ни чуть не удивили грабли с вейтами, особенно радует когда после вейта берут GetTriggerUnit() и тому подобное, в муи ждут проблемы...
ReD_Unicorn, этот триггер вовсе не сработает, т.к у него нету действий.
Проверяет только условие триггера, функцией TriggerEvalute наследуя параметры потока. Это никак не влияет на ветвление в действии триггера.
TriggerConidtion и TriggerAction никак не связаны, это две отдельные функции, первая при этом возвращает логическое значение.
А нафига тебе триггер если есть и так способности блокирующие урон?
Если таки хочется заморчится, событие - Юнит получает урон и лечение на кол-во полученного урона.
PT153, это какраз не баг, а недоработка jass интерпритатора, виртуальная Jass машина может передавать аргументы в каллбеки, это не является чем то не запланированным.
Мемхак нужен в самом минимальном исполнении. В статье описано что по чем и как устроено.
Проблем с работоспособностю быть не должно.
PT153, одно обращение к хт = 2 обращения к массиву.
Структуры помогают только когда ты записываешь в хт индекс структуры, по которому и ищеш данные в массивах.
Для переодик таймера я уже кинул пример как еще можно, там вовсе локалки.
orc01, есть событие EventUnitsInRange, делаешь триггер, а при постройки башни добавляешь в него это событие для каждой башни, в условиях проверяешь что тот кто подошел нужного тебе типа юнит, ну действия думаю проблем не вызовут...
ScopteRectuS, только нейтралы юзают спеллы сами, для прочих нужно запускать ИИ. Есть готовые в архиве игры из кампании, где вас донимали всякие лесные тролли и беорны или писать самому, там не особо то сложно.
Ну как не мог? Отдавать приказ идти или стоять? Триггерно отлавливай приказы и отдавай еще раз нужный если игрок отдал не тот приказ.
С мемхаком можно вовсе исключить контроль, юнит будет выбираться, все кнопки на карте команд будут тыкаться но ничего происходить не будет, юнит не будет управятся игроком.
ScopteRectuS, нет, таймед лайф это своего рода бафф, он сам следит есть ли юнит. Если юнит сдохнет бафф самовыпилится самостоятельно, так что нет. Смотри баффы иллюзий и волков, они не проигрывают анимации смерти. Подбираешь бафф и все, анимации смерти невидно.
Хайдить тоже можно, под хайдом юнит нормально умирает и разлагается.
ScopteRectuS, а вот хрен его знает, пытайся повторить фатал, бери героя, юзай его способности по кд, пока не фатальнет, пиши лог.
Тогда станет понятно наверняка.
ScopteRectuS, а зачем тебе создавать героя ? Делать нефиг? Если это только анимация, создавай модель и проигрывай ей анимацию мемхаком или делай даммика с моделью героя, создание довольно ресурсозатрано если что.
Demon127, ну а что тебе мешает поставить такой союз между игроком пехотинка и игроком героя? ALLIANCE_TYPE_RESCUED или как то так называется, кароче внимательно смотрите настройки союзов!
Нука попробуй добавить в action функцию с аргументами!
Хз, мб какой какая то конструкция юзает действия триггеров, или это своего рода массив code, т.к мы не можем обьявить массивом code, а следовательно хранить массив функций тоже нельзя...
Ну тут кондишены и экшены триггера этакий массив, Condtion(function) еще примечателен тем, что он не вызывает утечку типа triggercondition т.к акшин триггера навсегда остаётся висеть в боллекспре, triggeraction же нужно обязательно удалять, иначе будут утечки.
Это в том случаи если триггеры создаются и удаляются динамически.
Не было тогда еще мемхака, а о ретунд баге знали очень мало, а так же что он ненадежен (его пофиксят).
Сейчас вовсе можно без этих методов обойтись и передать инт в функцию, к примеру как тут.
» WarCraft 3 / Юзабельна ли моя боевая система?
Не проще было сделать рунами с морфом в другого юнита, где ты уже выставишь и теги анимаций и прочее для дальней и дла магической атаки.
Так же гуи слишком крив и утечен для таких вещей как перемещение по координатам 100500 обьектов, уже не раз это разжевывали.
Так же ни чуть не удивили грабли с вейтами, особенно радует когда после вейта берут GetTriggerUnit() и тому подобное, в муи ждут проблемы...
Ред. quq_CCCP
» WarCraft 3 / Run trigger ignoring condition
Проверяет только условие триггера, функцией TriggerEvalute наследуя параметры потока. Это никак не влияет на ветвление в действии триггера.
TriggerConidtion и TriggerAction никак не связаны, это две отдельные функции, первая при этом возвращает логическое значение.
» WarCraft 3 / Помощь в создании тригера
Если таки хочется заморчится, событие - Юнит получает урон и лечение на кол-во полученного урона.
» WarCraft 3 / GetTimerUserData
Мемхак нужен в самом минимальном исполнении. В статье описано что по чем и как устроено.
Проблем с работоспособностю быть не должно.
» WarCraft 3 / Текстурирования и ошибки
» WarCraft 3 / GetTimerUserData
» WarCraft 3 / GetTimerUserData
Структуры помогают только когда ты записываешь в хт индекс структуры, по которому и ищеш данные в массивах.
Для переодик таймера я уже кинул пример как еще можно, там вовсе локалки.
» WarCraft 3 / GetTimerUserData
Вот пример как передавать локалки в поток таймера ссылка
» WarCraft 3 / Как отследить момент, что юнит добрался до указанной точки?
» WarCraft 3 / Искусственный интеллект крипов
» WarCraft 3 / Вопрос по кампании и модели
» WarCraft 3 / Как сделать так чтоб игрок не мог видеть/управлять юнитом?
» WarCraft 3 / Как сделать так чтоб игрок не мог видеть/управлять юнитом?
С мемхаком можно вовсе исключить контроль, юнит будет выбираться, все кнопки на карте команд будут тыкаться но ничего происходить не будет, юнит не будет управятся игроком.
» WarCraft 3 / Искусственный интеллект крипов
Ред. quq_CCCP
» WarCraft 3 / Определить юнита под курсором (MemHack)
RMem[Rmem[gamedll+AB4F80]+1B4]+14
Кстати вроде же была тема с похожим вопросом.
» WarCraft 3 / Фаталит карта
Хайдить тоже можно, под хайдом юнит нормально умирает и разлагается.
» WarCraft 3 / Фаталит карта
» WarCraft 3 / Высота Z
» WarCraft 3 / как сделать из обычного юнита героя
» WarCraft 3 / Фаталит карта
Тогда станет понятно наверняка.
» WarCraft 3 / Фаталит карта
» WarCraft 3 / Фаталит карта
Это вовсе странно нахрена делать в коде то что, изи делается в РО?
» WarCraft 3 / Фаталит карта
» WarCraft 3 / как сделать так что бы при приближении к юниту он поменял владел
» WarCraft 3 / Строение структур
Хз, мб какой какая то конструкция юзает действия триггеров, или это своего рода массив code, т.к мы не можем обьявить массивом code, а следовательно хранить массив функций тоже нельзя...
Ну тут кондишены и экшены триггера этакий массив, Condtion(function) еще примечателен тем, что он не вызывает утечку типа triggercondition т.к акшин триггера навсегда остаётся висеть в боллекспре, triggeraction же нужно обязательно удалять, иначе будут утечки.
Это в том случаи если триггеры создаются и удаляются динамически.
Не было тогда еще мемхака, а о ретунд баге знали очень мало, а так же что он ненадежен (его пофиксят).
Сейчас вовсе можно без этих методов обойтись и передать инт в функцию, к примеру как тут.