quq_CCCP, ну вот, крч, он будет не только расти. :D PT153, да, я думал над твоей идеей, но реализовывать её не было большой охоты, т.к. нужно каким-то образом ещё и начальный скачок отловить, а не только дельту думал, мб что-то проще будет. Ладушки, сделаю так.
PT153, окей. quq_CCCP, ничего не работает, если нужно посайленсить одну абилку и снять сайленс с другой одновременно. Хз, почему.
Даже если занести эти действия в 2 разных таймера, получается херня.
Ребят, посмотрите, пожалуйста, мб я недопонимаю что-то. Клепаю новую версию своей карты. Код находится в подкомментарии "Технические" в папке "SkeletonBerserker". Для того, чтобы понять, что ничего не работает, достаточно запустить карту и попробовать применить способности последовательно. Они должны переключаться. Но они этого не делают. При этом с кулдаунами творится что-то совсем эпическое.
quq_CCCP, окей. quq_CCCP, а сколько тиков занимает таймер на 0.00 сек.? В ассемблере, когда прогаешь микроконтроллеры, 1 операция = 1 тик. Возможно, тут тоже есть альтернативные способы? Например, вывод пустых строк в чат.
функции для работы с сайленсом, позволяют задать разные типы сайленса (от обычного безмолвия, то паузы, когда способности скрываются с карты комманд)
код
(( код jass
set pAddSilenceOnAbility=GameDLL+0x052B60 оффсет для 1.26
set pRemoveSilenceFromAbility=GameDLL+0x052BC0 оффсет для 1.26
set pAddSilenceOnAbility = GameDLL + 0x3E9FA0 оффсет для 1.27
set pRemoveSilenceFromAbility = GameDLL + 0x3EE3C0 оффсет для 1.27
function AddSilenceToAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pAddSilenceOnAbility, a, 0, 1 ) 0 for hide, 1 for silence
endif
endfunction
function RemoveSilenceFromAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pRemoveSilenceFromAbility, a, 0, 1 )
endif
endfunction
function AddSilenceHideToAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pAddSilenceOnAbility, a, 1, 1 )
endif
endfunction
function RemoveSilenceHideFromAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pRemoveSilenceFromAbility, a, 1, 1 )
endif
endfunction
))
Что именно передаётся в функции? Что такое integer a?
UPD. разобрался по чистой случайности. Е-е-е!:)
UPD2. Вот такой код вызывает не "переключение" абилок между собой, а нечто другое: первый раз юзаем первую абилку => она сайленсится, затем юзаем вторую вбилку => первая выходит из сайленса, но вторая в него не входит, втф?
PT153, зато, когда обращаешься к мёртвым юнитам, например их абилкам, могут возникать фаталы. Вдруг ты захочешь добавить 99999хп для какой-нибудь абилки блока, а юнит будет мертв?
PT153, я так понимаю, эта функция применительно к берсам не делает ничего, т.к. морф односторонний, а вот у демонхантера она отвечает за то, чтобы юнит остался тем же после обратного превращения.
» WarCraft 3 / Алгоритм
Отредактирован Naadir
» WarCraft 3 / Алгоритм
PT153, да, я думал над твоей идеей, но реализовывать её не было большой охоты, т.к. нужно каким-то образом ещё и начальный скачок отловить, а не только дельту думал, мб что-то проще будет. Ладушки, сделаю так.
» WarCraft 3 / Хак на память Warcraft3
А, по-моему, это я алёшенька.
Ага.
Отредактирован Naadir
» WarCraft 3 / Нужны модели русских и немецких танков.
Отредактирован Naadir
» БЛОГ ПОМЕХИ / Синий Мастер Клинка(WIP)
Отредактирован Naadir
» Администрация XGM / Аватарка 100 КБ и 128х128.
Отредактирован Naadir
» IrInA Host Bot / Абсолютно все команды
» WarCraft 3 / Хак на память Warcraft3
Отредактирован Naadir
» WarCraft 3 / Хак на память Warcraft3
quq_CCCP, ничего не работает, если нужно посайленсить одну абилку и снять сайленс с другой одновременно. Хз, почему.
Даже если занести эти действия в 2 разных таймера, получается херня.
Отредактирован Naadir
» WarCraft 3 / Олдскульные иконки (8 штук)
» WarCraft 3 / Хак на память Warcraft3
Погодь, или... Если после функции, то там дохера разное время может быть.
» Администрация XGM / Аватарка 100 КБ и 128х128.
» WarCraft 3 / Хак на память Warcraft3
quq_CCCP, а сколько тиков занимает таймер на 0.00 сек.? В ассемблере, когда прогаешь микроконтроллеры, 1 операция = 1 тик. Возможно, тут тоже есть альтернативные способы? Например, вывод пустых строк в чат.
Отредактирован Naadir
» WarCraft 3 / Хак на память Warcraft3
» WarCraft 3 / Пак моделей дренеев
Отредактирован Naadir
» WarCraft 3 / Герой Рыцарь
PAMEXI, сделай тогда щели поуже, а лучше -- оба варианта.
А так -- выглядит огонь!
Отредактирован Naadir
» Последняя Надежда / Главная страница
+ Доп. кампания -- это всегда хорошо, если есть качественный сценарий.
» WarCraft 3 / Пак моделей дренеев
Отредактирован Naadir
» WarCraft 3 / Проверка кто нанёс урон
» WarCraft 3 / Изменение юнита
» WarCraft 3 / StartAbilityCD(integer, real)
Отредактирован Naadir
» WarCraft 3 / StartAbilityCD(integer, real)
» WarCraft 3 / StartAbilityCD(integer, real)
Отредактирован Naadir
» WarCraft 3 / MemoryHack: AddAbilityCooldownConverted(a, r)
Отредактирован Naadir
» WarCraft 3 / MemoryHack: AddAbilityCooldownConverted(a, r)
EVENT_PLAYER_UNIT_SPELL_EFFECT не помог. Но сейчас протестирую ещё раз.