6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

Ну, я скорее имел ввиду режим на UnitTimedLife, чем возможность паузы таймера. В карте "ChoiceBattle" останавливался таймер, но теперь, когда вы сказали про PauseUnit, я вспомнил, что в основном замечал остановку таймера во время паузы юнита. Я решил, что создатель сам останавливает таймер, но, похоже, это происходит только в паузах из-за упомянутой вами механики.
Да и режимы были реализованы на превращении, скорее всего.
8gabriel8:
Упоминал, что играл в карты, где подобное было реализовано. Это какие, например?
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

8gabriel8:
По идее таймер может встать на паузу, если юнита поставить на паузу. Правда, там и бафф стана может сохраниться, но это не точно.
Ещё есть вариант с отображением не полоски, а цифр оставшегося времени, как-нибудь красиво это замутив. Например, с помощью DGUI создавая панель над панелью характеристик и портрета, где будет указано оставшееся время, либо просто убывающая шкала, ведь в неё не придётся вглядываться.
Всё-таки опиши на конкретном примере, как это должно выглядеть, а не общими словами.
Все расписывать не буду, т.к. весьма долго, но в один момент герой входит в "режим", бафающий ег по хак-кам(каким еще не придумал), длится он, допустим, 9 сек(тоже не придумал), все это время вместо полоски опыта идет обратный отсчет. Затем на юнита используют способность, продлевающую длительность подобных "режимов" на 2 секунды, что на деле просто останавливает полоску таймера на 2 секунды.
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

Можно, но, имхо, обратный отсчет можно чекать особо не вглядываясь в него, тк. голубую полоску на черном фоне проще проверять пользователю юнита, не отвлекаясь особо. Часто видел, как такой таймер прикрепляют во время разных "режимов", я подумал, ее не так и сложно реализовать.
8gabriel8:
NazarPunk, предлагает просто триггерный таймер, который не отображается визуально.
Можно сделать над юнитом шкалу времени действия, как полоска здоровья.
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

NazarPunk:
А как это сделать?
// native SaveTimerHandle takes hashtable table, integer parentKey, integer childKey, timer whichTimer returns boolean

set t = CreateTimer()
set u = /*unit*/

call SaveTimerHandle(HT, GetUnitHandle(u), 0, t);

call StartTimer(t, 100500, function myfunc)
Я думал, вы имели ввиду с отображением на юните отсчета)
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

А как это сделать?
NazarPunk:
Можете повесить на юнита обычный таймер и делать с ним что хотите)
8gabriel8:
Опиши подробнее задачу. Тебе нужен юнит с превращением, таймер превращения которого можно остановить, либо нужно просто отобразить таймер на юните? Зачем останавливать и при каких условиях это следует делать?
Из перечисленного вами скорее всего третье. Просто отобразить таймер на юните, получить визуальный эффект обратного отсчета. Я пытался достичь этого при помощи UnitAppltTimedLife и превращения. Первое убивало юнита, второе нельзя было остановить.
Останавливать в случае стана, в случае использования на юнита способностей, останавливающих режимы, оставшееся время которых таймер и должен был отображать. В самых разных целях.
Под "остановить" я имел ввиду поставить на паузу, если что.
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

Ну она останавливает UnitTimedLife таймеры, но остановить таймер при превращении, что было моим запасным вариантом создания обратного отсчета на юните, она не может.
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

Если не ошибаюсь, мгновенно убивает юнита.
LordDracula:
а если попробовать удалить баф функции? тип BTLF
8gabriel8:
Можно заменять юнита по истечении таймера, а в новых патчах вроде как можно убирать таймер.
Что за событие отлавливает истечение такого таймера?
6

» WarCraft 3 / UnitApplyTimedLife без убийства юнита

Но при этом исчезнут баффы и прочее. Нельзя ли как-то получить значение таймера?
Значение оставшегося времени
6

» WarCraft 3 / Отлов приказа в стане

Clamp:
Хочется уточнить, где именно доводилось "неоднократно слышать" подобную информацию
quq_CCCP:
Приказы проходят лишь у виндвалка и "аналогов".
Не объясните, что значит "аналоги"?
6

» WarCraft 3 / Хак на память Warcraft3

Есть ли какой-то список с значениями типа "0x134", "0xE0" и к чему они ведут? Просто сам смог найти только вот это -https://www.hiveworkshop.com/threads/memhack-units-structure.289691/
Лазить по статьям и в комментариях для каждого как-то не очень, да и для некоторых так и не нашел описание.
6

» WarCraft 3 / Хак на память Warcraft3

Где-то читал, что cJass не дает работать мемхаку, а в jngp он входит. Может быть поэтому у меня карты с мемхаком не работают, pjass я уже заменил.
Вдобавок джассхелпер не дает запуститься ни одной карте из-за ошибок, которые выдает в картах с мемхаком.
6

» WarCraft 3 / Хак на память Warcraft3

Извините, конечно, за странный вопрос, но как при помощи pjass сохранять функции?
6

» WarCraft 3 / Использование скилла в стане

Ну, думаю, может сработать, только если юнита вывести из стана на мгновенье, использовать скилл и продолжить стан.
Изначально планировалось, что скилл будет направленный, но такое, похоже, реализовать с помощью только одного юнита не получится.
6

» WarCraft 3 / Проблема с объявлением глобальных переменных

Похоже, дело действительно в пути к карте, переместил, вроде работает. Спасибо за помощь.
6

» WarCraft 3 / Проблема с объявлением глобальных переменных

Путь к карте - E:\Games\Warcraft\Warcraft 3 Frozen Throne\maps\download\9\а(4)FateAndGlory.w3x
Путь к jass что ли - E:\JassNewGenWE\Jass New Gen Pack 5d Exp2\Jass New Gen Pack 5d Exp2
6

» WarCraft 3 / Проблема с объявлением глобальных переменных

PT153, если тип переменной заменю, к примеру, на реальную, ничего не изменится, но попробую
6

» WarCraft 3 / Проблема с объявлением глобальных переменных

Делал по образцу, мало чего знаю, про этот тип переменной вообще.
E:\Games\Warcraft\Warcraft 3 Frozen Throne
6

» WarCraft 3 / Проблема с объявлением глобальных переменных

В начале функции вписываю:
globals
gamecache store = 0
endglobals
Затем сохраняю карту и выполняю проверку. Запускается игра и меня перебрасывает в главное меню.
После этих строк ещё есть код