(07.07.2020 12:48)Zur13 Wrote: Подумал что в первый раз когда сам проверял что-то накосячил, но нет, проверил только что еще раз, у меня для правой кнопки мыши срабатывает перехват, а для левой - нет.
Поэтому я и написал, что для ERMа это практически неподъемная задача. Для ЛКМ.
Проблема вот в чём:
- HD мод ставит перехват на функцию обработки событий в окне встречи героев и запускает свою функцию, скажем "Heroes_Meet_Proc", и выполняет сначала свои действия, а лишь потом запускает оригинальный обработчик (и то не всегда). Например, обработав действия своих кнопок, HD выходит из функции и НЕ запускает орининальный обработчик. Именно поэтому не ловится ЛКМ по нажатию на HD-шные кнопки
Выглядит это так:
Code:
0x5B0100_Hook Heroes_Meet_Proc ()
{
- сначала идет обработка действий HD по новым кнопкам. И если это кнопки HD, то выполняются действия с артами или монстрами, а потом идет возврат из этой функции минуя нижеследующую строку.
- а только потом запускается оригинальный обработчик действий, на котором висят хуки Вога, которые и дают возможность работать ERMу
}
В итоге чтобы сделать обработку ERMа до действий HD, нужно выловить динамический адрес функции Heroes_Meet_Proc (что легко сделать), и найти в ней место для ERM хука (вот в этом самая большая сложность)
Но я попробую что то придумать. Хотя и не обещаю, что получится.