You are not logged in.
Как можно заставить игру игнорировать какую-либо игровую клавишу?
Offline
Занопить обработку нажатия нужной клавиши через память, узнав адрес. Для некоторых клавиш есть стандартные опкоды:
07CC: set_player $PLAYER_CHAR button_15 0
Включает/отключает клавишу "вход в машину" и все её функции.
082A: set_player $PLAYER_CHAR able_to_use_crouch_button 0
То же самое для кнопки приседания.
0901: enable_player $PLAYER_CHAR jump_key 0
Для кнопки прыжка.
Offline
Занопить обработку нажатия нужной клавиши через память, узнав адрес. Для некоторых клавиш есть стандартные опкоды:
07CC: set_player $PLAYER_CHAR button_15 0Включает/отключает клавишу "вход в машину" и все её функции.
082A: set_player $PLAYER_CHAR able_to_use_crouch_button 0То же самое для кнопки приседания.
0901: enable_player $PLAYER_CHAR jump_key 0Для кнопки прыжка.
А как узнать адреса этих клавиш? Например, мне нужны адреса клавиши прицеливания и смены радиостанций.
Offline
Тогда тебе нужно искать по базе listener'а, где обрабатывается нажатие кнопки прицеливания и кручение колёсика мышки, и занопить эти процедуры. Адреса сейчас не подскажу, т.к. базы нет под рукой, могу только подсказать адреса, занопив которые, можно вообще убрать обработку всей клавиатуры (кроме паузы) и мышки:
0A8C: write_memory 0x541DF5 size 5 value 0x90 virtual_protect 1 0A8C: write_memory 0x541DFF size 5 value 0x90 virtual_protect 1
По сути, это то же самое, что Player.CanMove($PlAYER_CHAR, 0), только с возможностью вращать камеру.
Offline