im sure those who already do bone esp only use a few but i ended up drawing on them all lol :bandit:
Code:
void BoneESP( IDirect3DDevice9* m_pD3Ddevice )
{
DWORD dwPlayerPointer = *( DWORD *)ADR_PLAYERPOINTER;
if( dwPlayerPointer != NULL )
{
for(int i = 0; i < 32; i++)
{
CPlayerInfo *pInfo = GetPlayerInfo(i);
CPlayer* pPlayer = g_pBase->pGlobal[i];
if( !pPlayer || !pLocalPlayer )break;
if( pPlayer && pInfo )
{
D3DXVECTOR3 WorldLocation(g_pBase->pGlobal[i]->ViewX,g_pBase->pGlobal[i]->ViewY,g_pBase->pGlobal[i]->ViewZ);
D3DXVECTOR3 MyWorldLocation(g_pBase->pLocal->ViewX,g_pBase->pLocal->ViewY,g_pBase->pLocal->ViewZ);
D3DXVECTOR3 vRightFoot, vLeftFoot;
D3DXVECTOR3 vRightThigh, vLeftThigh;
D3DXVECTOR3 vRightCalf, vLeftCalf;
D3DXVECTOR3 vRightArm, vLeftArm;
D3DXVECTOR3 vRightToe, vLeftToe;
D3DXVECTOR3 vRightFinger, vLeftFinger;
D3DXVECTOR3 vRightHand, vLeftHand;
D3DXVECTOR3 vRightForearm, vLeftForearm;
D3DXVECTOR3 vRightUpperArm, vLeftUpperArm;
D3DXVECTOR3 vRightClavicle, vLeftClavicle;
D3DXVECTOR3 vPelvis;
D3DXVECTOR3 vNeck;
D3DXVECTOR3 vHead;
D3DXVECTOR3 vSpine, vSpine1, vSpine2;
D3DXVECTOR3 vRightFootLocation, vLeftFootLocation;
D3DXVECTOR3 vRightThighLocation, vLeftThighLocation;
D3DXVECTOR3 vRightCalfLocation, vLeftCalfLocation;
D3DXVECTOR3 vRightToeLocation, vLeftToeLocation;
D3DXVECTOR3 vRightFingerLocation, vLeftFingerLocation;
D3DXVECTOR3 vRightHandLocation, vLeftHandLocation;
D3DXVECTOR3 vRightForearmLocation, vLeftForearmLocation;
D3DXVECTOR3 vRightUpperArmLocation, vLeftUpperArmLocation;
D3DXVECTOR3 vRightClavicleLocation, vLeftClavicleLocation;
D3DXVECTOR3 vPelvisLocation, vNeckLocation, vHeadLocation;
D3DXVECTOR3 vSpineLocation, vSpine1Location, vSpine2Location;
getBone( &vLeftToe, g_pBase->pGlobal[i], "Bip01 L Toe0" );
getBone( &vRightToe, g_pBase->pGlobal[i], "Bip01 R Toe0" );
getBone( &vLeftFoot, g_pBase->pGlobal[i], "Bip01 L Foot" );
getBone( &vRightFoot, g_pBase->pGlobal[i], "Bip01 R Foot" );
getBone( &vLeftThigh, g_pBase->pGlobal[i], "Bip01 L Thigh" );
getBone( &vRightThigh, g_pBase->pGlobal[i], "Bip01 R Thigh" );
getBone( &vLeftCalf, g_pBase->pGlobal[i], "Bip01 L Calf" );
getBone( &vRightCalf, g_pBase->pGlobal[i], "Bip01 R Calf" );
getBone( &vLeftFinger, g_pBase->pGlobal[i], "Bip01 L Finger0" );
getBone( &vRightFinger, g_pBase->pGlobal[i], "Bip01 R Finger0" );
getBone( &vLeftHand, g_pBase->pGlobal[i], "Bip01 L Hand" );
getBone( &vRightHand, g_pBase->pGlobal[i], "Bip01 R Hand" );
getBone( &vLeftForearm, g_pBase->pGlobal[i], "Bip01 L ForeArm" );
getBone( &vRightForearm, g_pBase->pGlobal[i], "Bip01 R ForeArm" );
getBone( &vLeftUpperArm, g_pBase->pGlobal[i], "Bip01 L UpperArm" );
getBone( &vRightUpperArm, g_pBase->pGlobal[i], "Bip01 R UpperArm" );
getBone( &vLeftClavicle, g_pBase->pGlobal[i], "Bip01 L Clavicle" );
getBone( &vRightClavicle, g_pBase->pGlobal[i], "Bip01 R Clavicle" );
getBone( &vPelvis, g_pBase->pGlobal[i], "Bip01 Pelvis" );
getBone( &vNeck, g_pBase->pGlobal[i], "Bip01 Neck" );
getBone( &vHead, g_pBase->pGlobal[i], "Bip01 Head" );
getBone( &vSpine, g_pBase->pGlobal[i], "Bip01 Spine" );
getBone( &vSpine1, g_pBase->pGlobal[i], "Bip01 Spine1" );
getBone( &vSpine2, g_pBase->pGlobal[i], "Bip01 Spine2" );
if( GetScreenCoordFromWorld( m_pD3Ddevice, vRightFootLocation, vRightFoot ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftFootLocation, vLeftFoot ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightThighLocation, vRightThigh ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftThighLocation, vLeftThigh ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightCalfLocation, vRightCalf ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftCalfLocation, vLeftCalf ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightToeLocation, vRightToe ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftToeLocation, vLeftToe ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftFingerLocation, vLeftFinger ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightFingerLocation, vRightFinger ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightHandLocation, vRightHand ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftHandLocation, vLeftHand ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftForearmLocation, vLeftForearm ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightForearmLocation, vRightForearm ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftUpperArmLocation, vLeftUpperArm ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightUpperArmLocation, vRightUpperArm ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vLeftClavicleLocation, vLeftClavicle ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vRightClavicleLocation, vRightClavicle ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vPelvisLocation, vPelvis ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vNeckLocation, vNeck ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vHeadLocation, vHead ) &&
GetScreenCoordFromWorld( m_pD3Ddevice, vSpineLocation, vSpine ) )
{
if( pInfo->Health > 0 )
{
if(GetPlayerInfo(GetLocalInfo())->Team != GetPlayerInfo(i)->Team)
{
if(IsVisible(MyWorldLocation,WorldLocation))
{
DrawLine( m_pD3Ddevice, vRightToeLocation.x, vRightToeLocation.y, vRightFootLocation.x, vRightFootLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftToeLocation.x, vLeftToeLocation.y, vLeftFootLocation.x, vLeftFootLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightFootLocation.x, vRightFootLocation.y, vRightCalfLocation.x, vRightCalfLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightCalfLocation.x, vRightCalfLocation.y, vRightThighLocation.x, vRightThighLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftFootLocation.x, vLeftFootLocation.y, vLeftCalfLocation.x, vLeftCalfLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftCalfLocation.x, vLeftCalfLocation.y, vLeftThighLocation.x, vLeftThighLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightFingerLocation.x, vRightFingerLocation.y, vRightHandLocation.x, vRightHandLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightHandLocation.x, vRightHandLocation.y, vRightForearmLocation.x, vRightForearmLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftFingerLocation.x, vLeftFingerLocation.y, vLeftHandLocation.x, vLeftHandLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftHandLocation.x, vLeftHandLocation.y, vLeftForearmLocation.x, vLeftForearmLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftForearmLocation.x, vLeftForearmLocation.y, vLeftUpperArmLocation.x, vLeftUpperArmLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightForearmLocation.x, vRightForearmLocation.y, vRightUpperArmLocation.x, vRightUpperArmLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftUpperArmLocation.x, vLeftUpperArmLocation.y, vLeftClavicleLocation.x, vLeftClavicleLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightUpperArmLocation.x, vRightUpperArmLocation.y, vRightClavicleLocation.x, vRightClavicleLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftThighLocation.x, vLeftThighLocation.y, vPelvisLocation.x, vPelvisLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightThighLocation.x, vRightThighLocation.y, vPelvisLocation.x, vPelvisLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vRightClavicleLocation.x, vRightClavicleLocation.y, vSpine2Location.x, vSpine2Location.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vPelvisLocation.x, vPelvisLocation.y, vSpine2Location.x, vSpine2Location.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vLeftClavicleLocation.x, vLeftClavicleLocation.y, vSpine2Location.x, vSpine2Location.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vSpine2Location.x, vSpine2Location.y, vSpine1Location.x, vSpine1Location.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vSpine1Location.x, vSpine1Location.y, vSpineLocation.x, vSpineLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vSpineLocation.x, vSpineLocation.y, vNeckLocation.x, vNeckLocation.y, 0xFFFF0000 );
DrawLine( m_pD3Ddevice, vNeckLocation.x, vNeckLocation.y, vHeadLocation.x, vHeadLocation.y, 0xFFFF0000 );
}
else
{
DrawLine( m_pD3Ddevice, vRightToeLocation.x, vRightToeLocation.y, vRightFootLocation.x, vRightFootLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftToeLocation.x, vLeftToeLocation.y, vLeftFootLocation.x, vLeftFootLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightFootLocation.x, vRightFootLocation.y, vRightCalfLocation.x, vRightCalfLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightCalfLocation.x, vRightCalfLocation.y, vRightThighLocation.x, vRightThighLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftFootLocation.x, vLeftFootLocation.y, vLeftCalfLocation.x, vLeftCalfLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftCalfLocation.x, vLeftCalfLocation.y, vLeftThighLocation.x, vLeftThighLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightFingerLocation.x, vRightFingerLocation.y, vRightHandLocation.x, vRightHandLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightHandLocation.x, vRightHandLocation.y, vRightForearmLocation.x, vRightForearmLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftFingerLocation.x, vLeftFingerLocation.y, vLeftHandLocation.x, vLeftHandLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftHandLocation.x, vLeftHandLocation.y, vLeftForearmLocation.x, vLeftForearmLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftForearmLocation.x, vLeftForearmLocation.y, vLeftUpperArmLocation.x, vLeftUpperArmLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightForearmLocation.x, vRightForearmLocation.y, vRightUpperArmLocation.x, vRightUpperArmLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftUpperArmLocation.x, vLeftUpperArmLocation.y, vLeftClavicleLocation.x, vLeftClavicleLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightUpperArmLocation.x, vRightUpperArmLocation.y, vRightClavicleLocation.x, vRightClavicleLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftThighLocation.x, vLeftThighLocation.y, vPelvisLocation.x, vPelvisLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightThighLocation.x, vRightThighLocation.y, vPelvisLocation.x, vPelvisLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vRightClavicleLocation.x, vRightClavicleLocation.y, vSpine2Location.x, vSpine2Location.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vPelvisLocation.x, vPelvisLocation.y, vSpine2Location.x, vSpine2Location.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vLeftClavicleLocation.x, vLeftClavicleLocation.y, vSpine2Location.x, vSpine2Location.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vSpine2Location.x, vSpine2Location.y, vSpine1Location.x, vSpine1Location.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vSpine1Location.x, vSpine1Location.y, vSpineLocation.x, vSpineLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vSpineLocation.x, vSpineLocation.y, vNeckLocation.x, vNeckLocation.y, 0xFFFFEC00 );
DrawLine( m_pD3Ddevice, vNeckLocation.x, vNeckLocation.y, vHeadLocation.x, vHeadLocation.y, 0xFFFFEC00 );
}
}
}
}
}
}
}
}