Sample of w2s/esp for CF, credits DrUnKeN ChEeTaH.
Code:
bool WorldToScreen(LPDIRECT3DDEVICE9 pDev, CPlayer* pPlayer, D3DXVECTOR3* Pos)
{
D3DXVECTOR3 vWorld(pPlayer->Object->x ,pPlayer->Object->y, pPlayer->Object->z);
D3DVIEWPORT9 viewPort = {0};
D3DXMATRIX projection, view, world;
pDev->GetTransform(D3DTS_VIEW, &view);
pDev->GetTransform(D3DTS_PROJECTION, &projection);
pDev->GetTransform(D3DTS_WORLD, &world);
pDev->GetViewport(&viewPort);
D3DXVec3Project(Pos, &vWorld, &viewPort, &projection, &view, &world);
if(Pos->z < 1)
{
return true;
}
return false;
}
void ESP(LPDIRECT3DDEVICE9 pDevice)
{
//dwCShellBase is just the base of cshell.dll :/
this->Base = *(DWORD*)(this->dwCShellBase + 0x1F1000);
if(this->Base != 0)
{
for(int i = 0; i < 33; i++)
{
DWORD dwStruct = (this->Base + (i * 0x1AC) + 0x784C);
if(dwStruct)
{
CPlayer *pPlayer = (CPlayer*)dwStruct;
if((pPlayer) && (strlen(pPlayer->Name) > 2) && (pPlayer->iHealth > 0)) //check if player is alive and valid
{
D3DXVECTOR3 Position;
if(WorldToScreen(pDevice, pPlayer, &Position))
{
//Draw(pPlayer->Name) //Nick
//Draw(pPlayer->iHealth) //Health
//...
}
}
}
}
}
}