diff --git a/CS2_External/CS2_External.vcxproj b/CS2_External/CS2_External.vcxproj index 35199b5..3a76cac 100644 --- a/CS2_External/CS2_External.vcxproj +++ b/CS2_External/CS2_External.vcxproj @@ -111,7 +111,7 @@ true _DEBUG;_CONSOLE;%(PreprocessorDefinitions) true - stdcpp20 + stdcpp17 Console @@ -127,7 +127,7 @@ true NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true - stdcpp20 + stdcpp17 Speed AdvancedVectorExtensions2 Fast @@ -167,6 +167,7 @@ + diff --git a/CS2_External/CS2_External.vcxproj.filters b/CS2_External/CS2_External.vcxproj.filters index 7829cfb..a3a3835 100644 --- a/CS2_External/CS2_External.vcxproj.filters +++ b/CS2_External/CS2_External.vcxproj.filters @@ -123,6 +123,7 @@ + diff --git a/CS2_External/Cheats.cpp b/CS2_External/Cheats.cpp index cf08ee1..deb490d 100644 --- a/CS2_External/Cheats.cpp +++ b/CS2_External/Cheats.cpp @@ -108,6 +108,7 @@ void Cheats::Menu() ImGui::ColorEdit4("##CrossHairColor", reinterpret_cast(&MenuConfig::CrossHairColor), ImGuiColorEditFlags_NoInputs); float CrossHairSizeMin = 1, CrossHairSizeMax = 200; Gui.SliderScalarEx1("CrossHairSize", ImGuiDataType_Float, &MenuConfig::CrossHairSize, &CrossHairSizeMin, &CrossHairSizeMax, "%.1f", ImGuiSliderFlags_None); + } else if (tabb == 1) { //aimbot @@ -398,7 +399,7 @@ void Cheats::Run() HealthBarPos = { Rect.x + Rect.z / 2 - 70 / 2,Rect.y - 13 }; HealthBarSize = { 70,8 }; } - Render::DrawHealthBar(EntityAddress, 100, Entity.Controller.Health, HealthBarPos, HealthBarSize, MenuConfig::HealthBarType); + Render::DrawHealthBar(EntityAddress, 100, Entity.Pawn.Health, HealthBarPos, HealthBarSize, MenuConfig::HealthBarType); } // Draw weaponName diff --git a/CS2_External/Entity.cpp b/CS2_External/Entity.cpp index 9685ee2..8e622b5 100644 --- a/CS2_External/Entity.cpp +++ b/CS2_External/Entity.cpp @@ -203,7 +203,7 @@ bool PlayerPawn::GetFFlags() bool CEntity::IsAlive() { - return this->Controller.AliveStatus == 1 && this->Controller.Health > 0; + return this->Controller.AliveStatus == 1 && this->Pawn.Health > 0; } bool CEntity::IsInScreen() diff --git a/CS2_External/Offsets.h b/CS2_External/Offsets.h index 0aab7d9..8e92313 100644 --- a/CS2_External/Offsets.h +++ b/CS2_External/Offsets.h @@ -13,16 +13,16 @@ namespace Offset struct { - DWORD Health = 0x808; + DWORD Health = 0x32C; DWORD TeamID = 0x3BF; - DWORD IsAlive = 0x804; - DWORD PlayerPawn = 0x7FC; + DWORD IsAlive = 0x7C4; + DWORD PlayerPawn = 0x7BC; DWORD iszPlayerName = 0x610; }Entity; struct { - DWORD Pos = 0xCD8; + DWORD Pos = 0x1214; DWORD MaxHealth = 0x328; DWORD CurrentHealth = 0x32C; DWORD GameSceneNode = 0x310; @@ -36,7 +36,7 @@ namespace Offset DWORD iIDEntIndex = 0x152C; DWORD iTeamNum = 0x3BF; DWORD CameraServices = 0x10E0; - DWORD iFov = 0x214; + DWORD iFov = 0x210; DWORD fFlags = 0x3C8; DWORD bSpottedByMask = 0x1620 + 0xC; // entitySpottedState + bSpottedByMask }Pawn; diff --git a/CS2_External/Utils/Format.hpp b/CS2_External/Utils/Format.hpp new file mode 100644 index 0000000..8caf517 --- /dev/null +++ b/CS2_External/Utils/Format.hpp @@ -0,0 +1,16 @@ +#pragma once +#include + +template +inline std::string Format(const char* pFormat, Args...args) +{ + int Length = std::snprintf(nullptr, 0, pFormat, args...); + if (Length <= 0) + return ""; + char* Str = new char[Length + 1]; + std::string Result; + std::snprintf(Str, Length + 1, pFormat, args...); + Result = std::string(Str); + delete[] Str; + return Result; +} \ No newline at end of file diff --git a/CS2_External/main.cpp b/CS2_External/main.cpp index 2daf0ac..1b61e4b 100644 --- a/CS2_External/main.cpp +++ b/CS2_External/main.cpp @@ -1,8 +1,8 @@ #include "Offsets.h" #include "Cheats.h" +#include "Utils/Format.hpp" #include #include -#include int main() { @@ -25,16 +25,16 @@ int main() goto END; } - std::cout << std::format("[Pid]:{}\n", ProcessMgr.ProcessID); - std::cout << std::format("[Client]:{:X}\n", gGame.GetClientDLLAddress()); + std::cout << Format("[Game] Pid:%d\n", ProcessMgr.ProcessID); + std::cout << Format("[Game] Client:%llX\n", gGame.GetClientDLLAddress()); std::cout << "Offset:" << std::endl; - std::cout << std::format("[EntityList]:{:X}\n", Offset::EntityList); - std::cout << std::format("[Matrix]:{:X}\n", Offset::Matrix); - std::cout << std::format("[LocalPlayerController]:{:X}\n", Offset::LocalPlayerController); - std::cout << std::format("[ViewAngles]:{:X}\n", Offset::ViewAngle); - std::cout << std::format("[LocalPlayerPawn]:{:X}\n", Offset::LocalPlayerPawn); - std::cout << std::format("[ForceJump]:{:X}\n", Offset::ForceJump); + std::cout << Format("--EntityList:%llX\n", Offset::EntityList); + std::cout << Format("--Matrix:%llX\n", Offset::Matrix); + std::cout << Format("--LocalPlayerController:%llX\n", Offset::LocalPlayerController); + std::cout << Format("--ViewAngles:%llX\n", Offset::ViewAngle); + std::cout << Format("--LocalPlayerPawn:%llX\n", Offset::LocalPlayerPawn); + std::cout << Format("--ForceJump:%llX\n", Offset::ForceJump); std::cout << "Runing..." << std::endl;