[CODIGO FUENTE] C++ CSGO - Radar Hack Codigo Fuente

  • Hola Invitado, si deseas saber que es lo que paso con nuestro servidor de discord, puedes ingresar al siguiente enlace Discord


206
Me Gusta
72
Temas

c0de

MOV EAX, EDX
Registrado
19 Abr 2020
Mensajes
150
Ubicación
Localhost
Mejores respuestas
0
Hice un truco de radar hace un poco. No todo se compilará y funcionará porque le falta una carga de mierda del otro código y no estoy publicando todo mi proyecto, pero todo el código del radar está ahí como las matemáticas y la mierda. Lo único que no está ahí es GetLocalPlayer, GetEntity (i), etc., la mierda del código base. No tengo una captura de pantalla del Radar con las entidades, pero aparecen como pequeños cuadrados, rosa para no visible y blanco para visible. Esta matemática debería funcionar en casi cualquier juego.

1618496489597.png

Radar.hpp

C++:
namespace Radar
{
    class CRadar : ControlMouse::CControlMouse
    {
    private:
        float m_x, m_y, m_w, m_h;
        Color m_primaryColor, m_secondaryColor;
    private:
        void DrawPlayer(Player::CPlayer * pPlayer, float size);
        void UpdateDrag();
        bool IsInRadarBounds(Vector2D position);
        Vector2D ScaleToRadar(Player::CPlayer * pPlayer);
    public:
        CRadar(float x, float y, float w, float h, Color primaryColor, Color secondaryColor);
        void Render();
    };

    extern void Start();
}

Radar.cpp

C++:
#include "pch.h"

namespace Radar
{
    CRadar::CRadar(float x, float y, float w, float h, Color primaryColor, Color secondaryColor)
        : m_x(x), m_y(y), m_w(w), m_h(h), m_primaryColor(primaryColor), m_secondaryColor(secondaryColor)
    {
    }

    void CRadar::Render()
    {
        if (!SETTINGS.m_radar)
            return;

        m_h = SETTINGS.m_radarSize;
        m_w = SETTINGS.m_radarSize;
        m_primaryColor.SetA(SETTINGS.m_radarAlpha);

        Color lineColor = m_secondaryColor;
        lineColor.SetA(100);

        const int titleBarOffset = 12;

        UpdateDrag();

        DRAW.DrawFillRect(m_x - 1, m_y, m_w + 2, 1 + titleBarOffset, m_secondaryColor);
        DRAW.DrawRect(m_x - 1, m_y, m_w + 2, m_h + 1 + titleBarOffset, Color(0,0,0));
        DRAW.DrawString(m_x + m_w / 2, m_y, Color(255, 255, 255), true, 0, "Radar");

        m_y += titleBarOffset;

        DRAW.DrawFillRect(m_x, m_y, m_w, m_h, m_primaryColor);
        DRAW.DrawRect(m_x, m_y, m_w, m_h, m_secondaryColor);

        DRAW.DrawLine(m_x + m_w / 2, m_y, m_x + m_w / 2, m_y + m_h, lineColor);
        DRAW.DrawLine(m_x, m_y + m_h / 2, m_x + m_w, m_y + m_h / 2, lineColor);

        for (int i = 0; i < 64; i++)
        {
            Player::CPlayer * pCurrentPlayer = INTERFACEDATA.pEntityList->GetClientEntity(i);

            if (!pCurrentPlayer)
                continue;
            if (!pCurrentPlayer->IsValid())
                continue;
            if (pCurrentPlayer->IsLocalPlayer())
                continue;
            if (pCurrentPlayer->IsTeam())
                continue;

            DrawPlayer(pCurrentPlayer, 5);
        }

        m_y -= titleBarOffset;
    }

    void CRadar::DrawPlayer(Player::CPlayer * pPlayer, float size)
    {
        Color playerColor(255, 255, 255);

        Vector2D screenPos = ScaleToRadar(pPlayer);

        if (IsInRadarBounds(screenPos))
        {
            if (pPlayer->IsVisible())
                playerColor = Color(m_secondaryColor);

            DRAW.DrawFillRect(screenPos.x, screenPos.y, size, size, playerColor);
        }
    }

    void CRadar::UpdateDrag()
    {
        const int titleBarOffset = 12;

        static POINT savedMousePosition;
        static bool  isDragging = false;
        static bool  hasSavedMousePosition = false;

        if (MouseIsInBounds(m_x, m_y, m_w, titleBarOffset))
        {
            if (GetAsyncKeyState(VK_LBUTTON))
            {
                isDragging = true;
                if (!hasSavedMousePosition)
                {
                    savedMousePosition = GetMousePosition();
                    savedMousePosition.x -= m_x;
                    savedMousePosition.y -= m_y;

                    hasSavedMousePosition = true;
                }
            }
            else
            {
                isDragging = false;
                hasSavedMousePosition = false;
            }
        }
        else if (!GetAsyncKeyState(VK_LBUTTON))
        {
            isDragging = false;
            hasSavedMousePosition = false;
        }

        if (isDragging)
        {
            int resX, resY;
            INTERFACEDATA.pEngineClient->GetScreenSize(resX, resY);

            float testCaseX, testCaseY;
            testCaseX = GetMousePosition().x - (savedMousePosition.x);
            testCaseY = GetMousePosition().y - (savedMousePosition.y);

            if (testCaseX < 0 || testCaseX + m_w > resX)
                return;

            if (testCaseY < 0 || testCaseY + m_h + titleBarOffset > resY)
                return;

            m_x = testCaseX;
            m_y = testCaseY;
        }
    }

    bool CRadar::IsInRadarBounds(Vector2D position)
    {
        const int offset = 5;
        return (position.x > m_x + offset - 3 && position.x < m_x - offset + m_w && position.y > m_y + offset - 3 && position.y < m_y - offset + m_h);
    }

    Vector2D CRadar::ScaleToRadar(Player::CPlayer * pPlayer)
    {
        Vector2D radarCentre((m_x + m_w / 2) - 2, (m_y + m_h / 2) - 2);

        Vector enemyPos3D = pPlayer->GetOrigin();
        Vector2D enemyPos2D(enemyPos3D.x, enemyPos3D.y);

        Vector localPos3D = ME->GetOrigin();
        Vector2D localPos2D(localPos3D.x, localPos3D.y);

        Vector2D screenPos = localPos2D - enemyPos2D;

        float distance = screenPos.Length() * (0.02f * SETTINGS.m_radarDistance); // Distance
        // distance = min(distance, m_x); circle radar

        Math::NormalizeVector2D(screenPos);

        screenPos *= distance;
        screenPos += radarCentre;

        Vector localViewAngle;
        INTERFACEDATA.pEngineClient->GetViewAngles(localViewAngle);

        return Math::RotatePoint(screenPos, radarCentre, localViewAngle.y + 90);
    }

    Radar::CRadar Radar = Radar::CRadar(50, 50, 150, 150, Color(60, 60, 60, 245), Color(255, 105, 180));

    void Start()
    {
        Radar.Render();
    }
}

Math

C++:
static Vector2D RotatePoint(Vector2D pointToRotate, Vector2D centerPoint, float angle, bool angleInRadians = false)
{
    if (!angleInRadians)
        angle = (float)(angle * (M_PI / 180.f));

    float cosTheta = (float)cos(angle);
    float sinTheta = (float)sin(angle);

    Vector2D returnVec(
        cosTheta * (pointToRotate.x - centerPoint.x) + sinTheta * (pointToRotate.y - centerPoint.y),
        sinTheta * (pointToRotate.x - centerPoint.x) - cosTheta * (pointToRotate.y - centerPoint.y)
    );

    returnVec += centerPoint;
    return returnVec;
}

static vec_t NormalizeVector2D(Vector2D& v)
{
    vec_t l = v.Length();
    if (l != 0.0f)
        v /= l;
    else
        v.x = v.y = 0.0f;
    return l;
}

Creditos
SystemX32
 
  • Like
Reacciones : Notorious


3
Me Gusta
1
Temas

thedark

Curioso
Registrado
16 Abr 2021
Mensajes
9
Ubicación
peru
Mejores respuestas
0
Hola Code, vi tu código en c++, no llego a ese nivel en c #, de apoco aprenderé más.
 


206
Me Gusta
72
Temas

c0de

MOV EAX, EDX
Registrado
19 Abr 2020
Mensajes
150
Ubicación
Localhost
Mejores respuestas
0
Hola Code, vi tu código en c++, no llego a ese nivel en c #, de apoco aprenderé más.

No es mi código, ahí están los créditos del creador, y el código tampoco esta completo solo es una parte de lo básico.

Saludos