bool IsValidPlayer( CPlayer *target_player ) { if( !target_player || !target_player->player_object || !target_player->player_object->ptr || !target_player->player_soldier || !target_player->vehicle_seat_num < 0 || !target_player->player_alive || !target_player->player_view || !target_player->player_soldier || !target_player->player_soldier->ptr )return false; return true; } void DrawESP( LPDIRECT3DDEVICE9 pDevice ) { if( pEng.UpdateGlobalObjects( ) == FALSE || !IsValidPlayer( pEng.sdk.pPlayerMgr->LocalPlayer ) )return; list::iterator target_iter; for( target_iter = pEng.sdk.pPlayerMgr->player_list.begin(); target_iter != pEng.sdk.pPlayerMgr->player_list.end(); target_iter++ ) { CPlayer* target_player = *target_iter; if( !IsValidPlayer( target_player ) || target_player == pEng.sdk.pPlayerMgr->LocalPlayer )continue; D3DXVECTOR3 pScreenVector( 0, 0, 0 ); pEng.GetScreenCoordFromWorld( pDevice, pScreenVector, target_player->player_soldier->ptr->object_physics->position ); if( pScreenVector.z < 1.0f ) { ltfx.DrawGameText( ( int )pScreenVector.x, ( int )pScreenVector.y, D3DCOLOR_ARGB( 255, 255, 0, 0 ), "%s", target_player->player_name.c_str( ) ); } } }