Pushok icon

Untitled

Pushok | PRO | 06/01/12 04:21:05 PM UTC | 0 ⭐ | 336 👁️ | Never ⏰ | []
C++ |

1.33 KB

|

None

|

0 👍

/

0 👎

    void DebugDump( const CCommand &coma )
    {
        using namespace MemUtils;
 
        try
        {
            DWORD* pRadarBaseOffset;
 
            CSigScanner sigScanner( "client.dll", "hl2.exe", SIG_RADARBASE, SIG_RADARBASEMASK, SIG_RADARBASELEN );
 
            if( sigScanner.FindNext( ) )
            {
                pRadarBaseOffset = **(DWORD***)( (DWORD)( sigScanner.GetFullAddress< DWORD >( ) ) + 2 );
            }
            else
            {
                throw std::exception( "Could not find radar base offset!" );
            }
 
            CProcTools tools;
 
            Warning( "Starting players dump...\n" );
            for( int i = 0; i < GlobIfaces::g_pClientEngine->GetMaxClients( ); i++ )
            {
                if( GlobIfaces::g_pClientEntityList->GetClientEntity( i ) != nullptr )
                {
                    char pName[32];
 
                    strcpy( pName, tools.ReadDataArray< char >( BuildAddress( (int*)pRadarBaseOffset, i, NAME_OFFSET ), 32 ).get( ) );
                    int health = tools.ReadInt( BuildAddress( (int*)pRadarBaseOffset, i, HEALTH_OFFSET ) );
                    int team = tools.ReadInt( BuildAddress( (int*)pRadarBaseOffset, i, TEAM_OFFSET ) );
                    Vector origin = tools.ReadData< Vector >( BuildAddress( (int*)pRadarBaseOffset, i, ORIGIN_OFFSET ) );
                    
                    Warning( "%s [%i][%s][%f.%f.%f]\n", pName, health, team == 3 ? "CT" : "T", origin.x, origin.y, origin.z );
                }
            }
            Warning( "Dump finished\n");
        }
        catch( std::exception &e )
        {
            Warning( e.what( ) );
        }
    }

Comments