Originally Posted by
Coder.UnkNóia
Hum.. Esse Eu Acho Que Esse Aqui Ainda Esteja Funcional!
Source Code:
[HTML]void NPCTeleKill( int TelekillNPC, LPDIRECT3DDEVICE9 pDevice ){
if( TelekillNPC == 1)
{
DWORD posptr, PositionY, dwBack;
cGameClientShell *pGameClientShell = *(cGameClientShell **)GCS;
cSFXMgr* SFXMgr = pGameClientShell->GetSFXMgr();
GetPlayerByIndex = (lpGetPlayerByIndex)PlayerByIndex;
unsigned long ulThis = *(unsigned long *)ClientInfoMgr;
GetLocalPlayer = (lpGetLocalPlayer)LocalPlayer;
posptr = (DWORD) GetModuleHandle("ClientFX.fxd");
posptr += 0x6BF34;
VirtualProtect( &PositionY, 4, PAGE_EXECUTE_READWRITE, &dwBack );
memcpy( &PositionY, (VOID *) (posptr), 4 );
VirtualProtect( &PositionY, 4, dwBack, &dwBack );
if( ValidPointer(SFXMgr) )
{
for ( int i = 0; i < SFXMgr->SFXList[SFX_CHARACTER].Num; i++ )
{
cCharacterFX2* NPC = (cCharacterFX2*)SFXMgr->SFXList[SFX_CHARACTER].List[i];
if( ValidPointer( NPC ) && ValidPointer( NPC->Object ))
{
if( NPC->IsPlayer )
continue;
D3DXVECTOR3 Pos, Screen;
Pos = MyGetObjectMaxPos( (int*)NPC->Object );
if( WorldToScreen2( pDevice, Pos, &Screen))
{
Sleep(1);
*(FLOAT *) (PositionY + 0xC8) = NPC->Object->Pos.x + 25.0f;
*(FLOAT *) (PositionY + 0xCC) = NPC->Object->Pos.y;
*(FLOAT *) (PositionY + 0xD0) = NPC->Object->Pos.z;
}
}
}
}
}
}[/HTML]
NPC OPK:
Código:
[HTML]if( ValidPointer(SFXMgr) )
{
for ( int i = 0; i < SFXMgr->SFXList[SFX_CHARACTER].Num; i++ )
{
cCharacterFX2* NPC = (cCharacterFX2*)SFXMgr->SFXList[SFX_CHARACTER].List[i];
if( ValidPointer( NPC ) && ValidPointer( NPC->Object ))
{
if( NPC->IsPlayer )
continue;
D3DXVECTOR3 Pos, Screen;
Pos = MyGetObjectMaxPos( (int*)NPC->Object );
if( WorldToScreen2( pDevice, Pos, &Screen))
{
Sleep(1);
*(FLOAT *) (PositionY + 0xC8) = NPC->Object->Pos.x + 25.0f;
*(FLOAT *) (PositionY + 0xCC) = NPC->Object->Pos.y;
*(FLOAT *) (PositionY + 0xD0) = NPC->Object->Pos.z;
}
}
}
}
}
}[/HTML]