Fire Weapon

  • Автор темы Error404
  • 330
  • Обновлено
  • 18, Jan 2014
  • #1
 VOID FireWeapon( LTPlayerClient* Client, INT a1 )
{

DWORD CallAddress = FireWeaponAddress; 

_asm PUSH a1;

_asm MOV ECX, Client;

_asm CALL CallAddress;
}
Теперь нужно сделать пару проверок, в противном случае оружие будет продолжать стрелять, даже если у вас кончились патроны.
 VOID IPlayerMng::Fire()
{

if( !bIsReady )

return;

if( Engine::ClientShell->Client->Ammo > 0 )

Engine::FireWeapon( Engine::ClientShell->Client, 1 );

else

Engine::ClientShell->Client->FireState = 6;
}
Патроны - 0x240 of LTPlayerClient, FireState 0x354
Находим и получаем FireWeaponAddress (Тестировалось на NA & EU):
 \x83\xEC\x20\x56\x8B\xF1\xB9\x00\x00\x00\x00\xE8\x00\x00\x00\x00\x84\xC0\x74\x09\x32\xC0\x5E
xxxxxxx????x????xxxxxxx

Error404


Рег
16 Nov, 2004

Тем
563

Постов
803

Баллов
6433
Тем
49554
Комментарии
57426
Опыт
552966