᲼᲼᲼
 
 
กล่องแสดงผลงานอาร์ตเวิร์กโดดเด่น
᲼᲼᲼
᲼᲼᲼
#pragma once
#define _USE_MATH_DEFINES
#include <math.h>
#include "Game.h"
#include "Entity.h"
#include <iostream>


namespace AimControl
{
inline int HotKey = VK_LBUTTON;
inline float AimFov = 5;
inline float Smooth = 0.7;
inline Vec2 RCSScale = { 1.f,1.f };
inline int RCSBullet = 1;
inline std::vector<int> HotKeyList{VK_LBUTTON, VK_LMENU, VK_RBUTTON, VK_XBUTTON1, VK_XBUTTON2, VK_CAPITAL, VK_LSHIFT, VK_LCONTROL};// added new button VK_LBUTTON

inline void SetHotKey(int Index)
{
HotKey = HotKeyList.at(Index);
}

inline void AimBot(const CEntity& Local, Vec3 LocalPos, Vec3 AimPos)
{
float Yaw, Pitch;
float Distance, Norm;
Vec3 OppPos;

OppPos = AimPos - LocalPos;

Distance = sqrt(pow(OppPos.x, 2) + pow(OppPos.y, 2));

Yaw = atan2f(OppPos.y, OppPos.x) * 57.295779513 - Local.Pawn.ViewAngle.y;
Pitch = -atan(OppPos.z / Distance) * 57.295779513 - Local.Pawn.ViewAngle.x;
Norm = sqrt(pow(Yaw, 2) + pow(Pitch, 2));
if (Norm > AimFov)
return;

Yaw = Yaw * (1 - Smooth) + Local.Pawn.ViewAngle.y;
Pitch = Pitch * (1 - Smooth) + Local.Pawn.ViewAngle.x;

// Recoil control
if (Local.Pawn.ShotsFired > RCSBullet)
{
Vec2 PunchAngle;
if (Local.Pawn.AimPunchCache.Count <= 0 && Local.Pawn.AimPunchCache.Count > 0xFFFF)
return;
if (!ProcessMgr.ReadMemory<Vec2>(Local.Pawn.AimPunchCache.Data + (Local.Pawn.AimPunchCache.Count - 1) * sizeof(Vec3), PunchAngle))
return;

Yaw = Yaw - PunchAngle.y * RCSScale.x;
Pitch = Pitch - PunchAngle.x * RCSScale.y;
}

gGame.SetViewAngle(Yaw, Pitch);
}
}



#include "Cheats.h"
#include "Render.hpp"
#include "MenuConfig.hpp"
#include "Utils/ConfigMenu.hpp"
#include "Utils/ConfigSaver.hpp"

void Cheats::Menu()
{
static bool IsMenuInit = false;
if (!IsMenuInit)
{
ImGui::GetStyle().Colors[ImGuiCol_WindowBg].w = 0.75;
IsMenuInit = true;
}

ImGui::Begin("Menu",nullptr,ImGuiWindowFlags_AlwaysAutoResize);
{
ImGui::BeginTabBar("Cheat");
// esp menu
if (ImGui::BeginTabItem("ESP"))
{
Gui.MyCheckBox("BoxESP", &MenuConfig::ShowBoxESP);
ImGui::SameLine();
ImGui::ColorEdit4("##BoxColor", reinterpret_cast<float*>(&MenuConfig::BoxColor), ImGuiColorEditFlags_NoInputs);

ImGui::Combo("BoxType", &MenuConfig::BoxType, "Normal\0Dynamic");

Gui.MyCheckBox("BoneESP", &MenuConfig::ShowBoneESP);
ImGui::SameLine();
ImGui::ColorEdit4("##BoneColor", reinterpret_cast<float*>(&MenuConfig::BoneColor), ImGuiColorEditFlags_NoInputs);

Gui.MyCheckBox("EyeRay", &MenuConfig::ShowEyeRay);
ImGui::SameLine();
ImGui::ColorEdit4("##EyeRay", reinterpret_cast<float*>(&MenuConfig::EyeRayColor), ImGuiColorEditFlags_NoInputs);

Gui.MyCheckBox("HealthBar", &MenuConfig::ShowHealthBar);
ImGui::Combo("HealthBarType", &MenuConfig::HealthBarType, "Vetical\0Horizontal");

Gui.MyCheckBox("WeaponText", &MenuConfig::ShowWeaponESP);
Gui.MyCheckBox("Distance", &MenuConfig::ShowDistance);
Gui.MyCheckBox("PlayerName", &MenuConfig::ShowPlayerName);

Gui.MyCheckBox("HeadShootLine", &MenuConfig::ShowHeadShootLine);
ImGui::SameLine();
ImGui::ColorEdit4("##HeadShootLineColor", reinterpret_cast<float*>(&MenuConfig::HeadShootLineColor), ImGuiColorEditFlags_NoInputs);

Gui.MyCheckBox("FovLine", &MenuConfig::ShowFovLine);
ImGui::SameLine();
ImGui::ColorEdit4("##FovLineColor", reinterpret_cast<float*>(&MenuConfig::FovLineColor), ImGuiColorEditFlags_NoInputs);
float FovLineSizeMin = 20.f, FovLineSizeMax = 120.f;
Gui.SliderScalarEx1("FovLineSize", ImGuiDataType_Float, &MenuConfig::FovLineSize, &FovLineSizeMin, &FovLineSizeMax, "%.1f", ImGuiSliderFlags_None);

Gui.MyCheckBox("LineToEnemy", &MenuConfig::ShowLineToEnemy);
ImGui::SameLine();
ImGui::ColorEdit4("##LineToEnemyColor", reinterpret_cast<float*>(&MenuConfig::LineToEnemyColor), ImGuiColorEditFlags_NoInputs);

Gui.MyCheckBox("CrossHair", &MenuConfig::ShowCrossHair);
ImGui::SameLine();
ImGui::ColorEdit4("##CrossHairColor", reinterpret_cast<float*>(&MenuConfig::CrossHairColor), ImGuiColorEditFlags_NoInputs);
float CrossHairSizeMin = 15, CrossHairSizeMax = 200;
Gui.SliderScalarEx1("CrossHairSize", ImGuiDataType_Float, &MenuConfig::CrossHairSize, &CrossHairSizeMin, &CrossHairSizeMax, "%.1f", ImGuiSliderFlags_None);

ImGui::EndTabItem();
}

// aimbot menu
if (ImGui::BeginTabItem("AimBot "))
{
Gui.MyCheckBox("AimBot", &MenuConfig::AimBot);

if (ImGui::Combo("AimKey", &MenuConfig::AimBotHotKey, "LBUTTON\0MENU\0RBUTTON\0XBUTTON1\0XBUTTON2\0CAPITAL\0SHIFT\0CONTROL"))// added LBUTTON
{
AimControl::SetHotKey(MenuConfig::AimBotHotKey);
}

float FovMin = 0.1f, FovMax = 89.f;
float SmoothMin = 0.f, SmoothMax = 0.9f;
Gui.SliderScalarEx1("AimFov", ImGuiDataType_Float, &AimControl::AimFov, &FovMin, &FovMax, "%.1f", ImGuiSliderFlags_None);
Gui.MyCheckBox("FovCircle", &MenuConfig::ShowAimFovRange);
ImGui::SameLine();
ImGui::ColorEdit4("##FovCircleColor", reinterpret_cast<float*>(&MenuConfig::AimFovRangeColor), ImGuiColorEditFlags_NoInputs);

Gui.SliderScalarEx1("Smooth", ImGuiDataType_Float, &AimControl::Smooth, &SmoothMin, &SmoothMax, "%.1f", ImGuiSliderFlags_None);
if (ImGui::Combo("AimPos", &MenuConfig::AimPosition, "Head\0Neck\0Spine"))
{
switch (MenuConfig::AimPosition)
{
case 0:
MenuConfig::AimPositionIndex = BONEINDEX::head;
break;
case 1:
MenuConfig::AimPositionIndex = BONEINDEX::neck_0;
break;
case 2:
MenuConfig::AimPositionIndex = BONEINDEX::spine_1;
break;
default:
break;
}
}
int BulletMin = 1, BulletMax = 6;
float RecoilMin = 0.f, RecoilMax = 2.f;
Gui.SliderScalarEx1("Start Bullet", ImGuiDataType_U32, &AimControl::RCSBullet, &BulletMin, &BulletMax, "%d", ImGuiSliderFlags_None);
Gui.SliderScalarEx1("RCS Yaw", ImGuiDataType_Float, &AimControl::RCSScale.x, &RecoilMin, &RecoilMax, "%.1f", ImGuiSliderFlags_None);
Gui.SliderScalarEx1("RCS Pitch", ImGuiDataType_Float, &AimControl::RCSScale.y, &RecoilMin, &RecoilMax, "%.1f", ImGuiSliderFlags_None);
Gui.MyCheckBox("VisibleCheck", &MenuConfig::VisibleCheck);

ImGui::EndTabItem();
}

// Radar menu
if (ImGui::BeginTabItem("Radar "))
{
Gui.MyCheckBox("Radar", &MenuConfig::ShowRadar);
ImGui::Combo("RadarType", &MenuConfig::RadarType, "Circle\0Arrow\0CircleWithArrow");

Gui.MyCheckBox("CrossLine", &MenuConfig::ShowRadarCrossLine);
ImGui::SameLine();
ImGui::ColorEdit4("##CrossLineColor", reinterpret_cast<float*>(&MenuConfig::RadarCrossLineColor), ImGuiColorEditFlags_NoInputs);

float ProportionMin = 500.f, ProportionMax = 3300.f;
float RadarRangeMin = 100.f, RadarRangeMax = 300.f;
float RadarPointSizeProportionMin = 0.8f, RadarPointSizeProportionMax = 2.f;
Gui.SliderScalarEx1("PointSize", ImGuiDataType_Float, &MenuConfig::RadarPointSizeProportion, &RadarPointSizeProportionMin, &RadarPointSizeProportionMax, "%.1f", ImGuiSliderFlags_None);
Gui.SliderScalarEx1("Proportion", ImGuiDataType_Float, &MenuConfig::Proportion, &ProportionMin, &ProportionMax, "%.1f", ImGuiSliderFlags_None);
Gui.SliderScalarEx1("RadarRange", ImGuiDataType_Float, &MenuConfig::RadarRange, &RadarRangeMin, &RadarRangeMax, "%.1f", ImGuiSliderFlags_None);

ImGui::EndTabItem();
}

// TriggerBot
if (ImGui::BeginTabItem("TriggerBot "))
{
Gui.MyCheckBox("TriggerBot", &MenuConfig::TriggerBot);

if (ImGui::Combo("TriggerKey", &MenuConfig::TriggerHotKey, "MENU\0RBUTTON\0XBUTTON1\0XBUTTON2\0CAPITAL\0SHIFT\0CONTROL"))
{
TriggerBot::SetHotKey(MenuConfig::TriggerHotKey);
}
if (ImGui::Combo("TriggerMode", &MenuConfig::TriggerMode, "Hold\0Toggle"))
{
TriggerBot::SetMode(MenuConfig::TriggerMode);
}

DWORD TriggerDelayMin = 15, TriggerDelayMax = 170;
Gui.SliderScalarEx1("D
᲼᲼᲼ 10 ก.ค. 2024 @ 2: 32pm 
bin dabei
Dopamean™ 10 ก.ค. 2024 @ 2: 18pm 
Bau dir mal ne bessere cfg. Oder refund deine Müllsoftware und hol dir direkt was Vernünftiges.
Dani 10 ก.ค. 2024 @ 6: 58am 
get cancer
᲼᲼᲼ 8 ก.ค. 2024 @ 12: 49pm 
Mad cuz bad?
Dani 8 ก.ค. 2024 @ 12: 35pm 
♥♥♥♥♥ PIECE OF USELESS ISHT, CHEATING SCAMBAG
Sef 21 มิ.ย. 2024 @ 10: 57am 
amınoğlu