16

» WarCraft 3 / отлов завершения wirlwind'a

можешь прочитать длительность, а её отменит какой-нибудь сайленс или пауза
естественно. можно и событие триггера присобачить в код игры прямо, только кто будет это кодить?)
16

» WarCraft 3 / Очистка данных типа real или integer?

предполагается, что ты в глобалку один фиг будешь что-то записывать и неиспользуемый хендл и так, и так будет "обнулен".
16

» WarCraft 3 / Fatal error в процессе игры...

один упал, потому что баф не нашелся, хотя ожидался (по какой-то причине)
второй упал, потмоу что че-то в мозгах игры пошло не так и она удалила ARal (если это вообще возможно, не слышал о таком)
третий - краш при попытке настроить "следы" юниту h001
все хардкорные краши, удачи
16

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

срабатывает в момент подсчета урона с атаки, можно редактировать кол-во урона через стандартные абилки атаки, например. это именно событие "снаряд вот вот ща полетит". У меня используется для подсчета миссов, критов и т.п.
16

» WarCraft 3 / Как отследить убивающего юнита в таймере?

у меня в доте тысячи временных триггеров, никаких проблем не видно. Даже если эти ивенты уходят, на игру они не влияют, так что даже замерять лень.
16

» WarCraft 3 / CommandStrings.txt

подгружается один файл одного типа, так что всё остаьлное, что ты сюда не добавил, но в дефолте есть. будет без настроек
16

» WarCraft 3 / Вывод в файл

call PreloadEndEx()
		call PreloadGenClear()
		call PreloadGenStart()
		call Preload("ANY TEXT HERE")
		call PreloadGenEnd("file.txt")
		call PreloadGenClear()
16

» WarCraft 3 / Вопрос по способностям с превращениями.

основной юнит нужен для того, чтобы игра знала, в кого превратить при отмене/окончании, так что без костылей - никак
16

» WarCraft 3 / Получить имя функции в jass как строку

нет, только реализовывать через второй аргумент, либо знать свой код наизусть, работать с чистым jass и использовать jassSpy на реплее с моментом, где пропал герой
16

» WarCraft 3 / Способности и алгоритмы на заказ

тексттаг не является настоящим хендлом и не подвержен синхронизации, каждйы клиент имеет свои таги
аналогично молнии и уберсплаты
проверяется GetHandleId(объект)
если результат меньше 0x100000 - это локальный объект без синхронизации
16

» WarCraft 3 / Slark Wars

function GetWindowRect takes integer storage returns nothing
	call CallStdCallWith2Args(RMem(GameDLL+0x86D804),CallThisCallWith1Args(GameDLL+0x6BAD70,0),storage)
endfunction

function GetWindowRectSizeX takes nothing returns integer
	call GetWindowRect(pCallFastCallWith1Args + 3000 + 52)
	return RMem(pCallFastCallWith1Args + 3000 + 52 + 8)-IAbsBJ(RMem(pCallFastCallWith1Args + 3000 + 52 + 0))
endfunction

function GetWindowRectSizeY takes nothing returns integer
	call GetWindowRect(pCallFastCallWith1Args + 3000 + 52)
	return RMem(pCallFastCallWith1Args + 3000 + 52 + 12)-IAbsBJ(RMem(pCallFastCallWith1Args + 3000 + 52 + 4))
endfunction
здесь pCallFastCallWith1Args + 3000 + 52 просто хранит результат, любой адрес, куда можно записать результат, можно подставить вместо него. Это даст тебе размеры окна) а дальше математикой можешь подсчитать примерно нужные координаты
16

» WarCraft 3 / Существует ли событие наведения курсора на способность?

нет такого функционала в доте, ну и через джас такое не сделать, отлько чистый ASM, потому что сугубо локальное действие