DracoL1ch, еще забыл про ресайклы таймеров =)
Так то для каких то простых действий, вроде задежрки перед хилом для блока урона, таймер предпочтительнее, для всяких баффов триггеры лучше т.к там есть доступ к куче событий.
Nikolay36, смотри внимательно как сделано в доте, и почему триггер, сразу станет ясно, к примеру триггером двигают снаряд, и смотрят что цель умрет, или цель юзнет абилку (блинка), чтобы сделать промах, вот как ты это сделашь таймером и сколько это займет кода? Так что следует думать что оптимальнее использовать.
Там просто их юзали, потому что было + так было удобнее отлавливать попутно события смерти и тому подобное. Таймер гораздо легче и не плодит обьекты, пусть trigger condition после первого создания зависает в болекспре и не утекает, но 1 то раз его нужно создать, а вот для таймера нет такого. Но таймеры могут лишь считать время, они не могут сработать при смерти юнита или еще какого то события, да и триггер проще вызвать из вне (в доте так диспелы и много чего другого построено, TriggerEvaгuate для триггеров что сохранены на юнита и обеспечивают дебаффы)
Насчет нелагающей - громко сказано, качество кода в большинстве мест унылое и тонны утечек, стоить еще каплю кода добавить - баги\лаги, вылеты, пока не проведешь чистку и оптимизацию, тогда внезапно все норм.
maxodors, для того, но я тебе обьяснил что нужно править код и проверять на паузу, паузу не обязательно использовать триггерно, некоторые способности используют паузу самостоятельно, вроде ульт панды пивовара и иллюзии мастера клинка, но я не помню всего.
Если что могу рассказать о том как юзать код, и что делать на примере в лс.
Они не в мили картах так себя и ведут, потом попробуй их подальше друг от друга, то мб у них как то учитывается распределения места (типа я не могу строитьт\добывать ибо это земля союзника). Насчет не появились стартовые юниты - похоже на обрыв потока, если очень много триггеров гуи.
jass_dev, Делается не так, уже обсуждали - триггер со всеми возможными событиями и екзекутом функции из базы данных, функция находится по ID. не быстрее чем по 1 триггеру на кадую способность, но экономит оперативку и гораздо удобнее.
У предмета поле ability list на 4 способности, берете и делайте, способности настраиваете по вкусу, для большего кол-ва способностей можно использовать спеллбук (одноименная способность предмета "книга заклинаний")
Во первых стоило бы нормально офрмить код, + добавить кат. Во вторых - пауза по событию каста, приводит к багу - о чем я уже писал не раз, если вам нужно стопнуть юнита, сперва таймер на 0.00 сек, потом уже пауза. Так чето несовсем понятно что этот код делает? Это я так понял таргет спелл с перемещением, но период сильно большой, 0.1 сек, 10 раз в секунду + SetUnitPosotion всеравно будет сбивать все приказы, можно и без паузы было.
rsfghd, это не от этого.
Там не очень то функции, если честно, но проблема там еще в функции SetAbilityDisableCount - это своего рода сайленс, счетчик отключения абилки, если выше 0 абилка выключена, иначе включена. Так вот вот это все дерьмо багует с паузой PauseUnit - есть такая функция, ну и там важно следить за юнитом особенно тщательно, т.е все дизейблы снимать строго до смерти, при наложении\снятии у юнита не должно быть паузы, ну и вместе DisableAbility - имеет смысл юзать MuteUnitAbility (это моя самописная функция, в мемхаке это orb of slow disable) оно не отключает абилку но не дает на неё нажать, не прирывает её каст, можно юзать для атаки и перемещения юнита.
Centyrion, вместо call debug и в настройках выбераешь дебаг или обычный при сохранении, таким образом код который помечен как дебаговый будет отключатся.
Centyrion, это бред, во первых оптимизаторы сотрут все из wts файла и вставят строки в их места, во вторых нужно делать прелоад строк то все это дело из wts файла грузится годами. Прелоад или дебаг режим JNGP не пробовал. Если это очередная защита, напомню что есть мемхак.
Автокасты не работают в предметах, как и выключатели. Потом формально инвентарь это вроде спеллбука где висит спелл, поэтому многие абилки багуют у предметов, к примеру аватар, все абилки которые можно включить и выключить, все автокасты, абилки со специфическими эффектами вроде морфов и чаннелингов которые че то там менают. Призыв волков и призыв иллюзий мастера клинка тоже не работает корректно, ибо эти абилки следят за тем есть ли они у владельца и если их нету, убиваются суммоны.
Так что как написали выше - только кастомный вариант, триггер который привязывается к конкретному герою и следит за тем кого он вызвал и кто из них умер.
» WarCraft 3 / Что лучше таймер или триггер?
» WarCraft 3 / Как установить текущий кд аблики?
» WarCraft 3 / Что лучше таймер или триггер?
Так то для каких то простых действий, вроде задежрки перед хилом для блока урона, таймер предпочтительнее, для всяких баффов триггеры лучше т.к там есть доступ к куче событий.
» WarCraft 3 / Что лучше таймер или триггер?
» WarCraft 3 / Что лучше таймер или триггер?
» WarCraft 3 / Как установить текущий кд аблики?
» WarCraft 3 / UnitEnableControl в MemoryHack убирает способности навсегда
Если что могу рассказать о том как юзать код, и что делать на примере в лс.
» WarCraft 3 / Юниты, после триггерного приказа атаковать область идут назад.
» WarCraft 3 / Безопасное выделение hashtable
PT153, Они так разграничивают данные, StringhHash не научились юзать.
» WarCraft 3 / Почему "Превращение в феникса (связано с яйцом)" не работает?
» WarCraft 3 / WarCraft III – Стандартный ИИ, глючит (Видео прикреплено)
» Программирование / 1-но событие для функций или несколько событий для каж.функции?
» WarCraft 3 / Отрицательный эффект предметам
» WarCraft 3 / Warcraft 3 1.31.1 нужна помощь в поиске ресурсов и платформ
» WarCraft 3 / Есть ли ошибка?
» WarCraft 3 / Баф "Защита" и направленное заклинание.
» WarCraft 3 / Редактор карт варкрафт 3 версии 1.31.
Ред. quq_CCCP
» WarCraft 3 / UnitEnableControl в MemoryHack убирает способности навсегда
Там не очень то функции, если честно, но проблема там еще в функции SetAbilityDisableCount - это своего рода сайленс, счетчик отключения абилки, если выше 0 абилка выключена, иначе включена. Так вот вот это все дерьмо багует с паузой PauseUnit - есть такая функция, ну и там важно следить за юнитом особенно тщательно, т.е все дизейблы снимать строго до смерти, при наложении\снятии у юнита не должно быть паузы, ну и вместе DisableAbility - имеет смысл юзать MuteUnitAbility (это моя самописная функция, в мемхаке это orb of slow disable) оно не отключает абилку но не дает на неё нажать, не прирывает её каст, можно юзать для атаки и перемещения юнита.
» WarCraft 3 / Не работают абилки на + ХП
» WarCraft 3 / Сопоставление данных из War3map.WTS
» WarCraft 3 / Сопоставление данных из War3map.WTS
» WarCraft 3 / Сопоставление данных из War3map.WTS
» WarCraft 3 / Предмет с абилкой призыва жуков (повелителя могил)
Так что как написали выше - только кастомный вариант, триггер который привязывается к конкретному герою и следит за тем кого он вызвал и кто из них умер.
» WarCraft 3 / Проклятие Грома
» WarCraft 3 / Только не швыряйте тапком за GUI, не могу найти утечки.