From daab12c1108fd3546b511af51cc1554354807c76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Raphael=20Vigneault=20=C3=90=2E?= Date: Thu, 2 Jan 2025 13:56:10 -0500 Subject: [PATCH] ESP Togler keys --- Application/Modules/Configs.h | 8 ++++-- Application/Modules/EspModule.h | 51 +++++++++++++++++++++++++++------ 2 files changed, 49 insertions(+), 10 deletions(-) diff --git a/Application/Modules/Configs.h b/Application/Modules/Configs.h index 7367de6..d678b57 100644 --- a/Application/Modules/Configs.h +++ b/Application/Modules/Configs.h @@ -21,10 +21,14 @@ struct RootConfig : public ModuleConfig struct EspConfig : public ModuleConfig { - bool pBx, pName, pHealth, pArmor, pBxHealth, pBxArmor; - GuiColor pBxCol, pBxBorderCol, pHealthCol, pArmorCol, pBxHealthCol, pBxArmorCol; Position pBxPosOffset, pBxDimOffset; std::map gameObjects; + GuiColor pBxCol, pBxBorderCol, pHealthCol, pArmorCol, pBxHealthCol, pBxArmorCol; + + bool isSkeletonActive = true, isBoxActive = true, isStatsActive = true, isGameObjectsActive = true; + bool showHealth = true, showArmor = true, showName = true, showDistance = true; + bool showHealthBar = true, showArmorBar = true; + bool showHealthText = true, showArmorText = true; }; struct AimConfig : public ModuleConfig diff --git a/Application/Modules/EspModule.h b/Application/Modules/EspModule.h index 13afe02..d2c737e 100644 --- a/Application/Modules/EspModule.h +++ b/Application/Modules/EspModule.h @@ -4,23 +4,50 @@ class EspModule : public Module { + EspConfig config; + + void Execute() + { + // uses F1 to toggle skeleton + if (GetAsyncKeyState(VK_F1) & 1) + config.isSkeletonActive = !config.isSkeletonActive; + + // uses F2 to toggle box + if (GetAsyncKeyState(VK_F2) & 1) + config.isBoxActive = !config.isBoxActive; + + // uses F3 to toggle stats + if (GetAsyncKeyState(VK_F3) & 1) + config.isStatsActive = !config.isStatsActive; + + // uses F4 to toggle esp + if (GetAsyncKeyState(VK_F4) & 1) + config.isActive = !config.isActive; + } + void RenderPlayerSkeleton(Player &player) { if (!player.screenBones.size()) return; - for (const auto &line : player.screenBones) - DrawLine(line.pStart, line.pEnd, White75, 2.5f); + if (config.isSkeletonActive) + { + for (const auto &line : player.screenBones) + DrawLine(line.pStart, line.pEnd, White50, 2.5f); + } - const float headRadius = player.screenBox.d.h / 13; + const float headRadius = player.screenBox.d.h / 14; const Position headPos = player.screenBones[0].pStart; DrawFilledCircle(headPos, headRadius, White25); - DrawCircle(headPos, headRadius, White75, 2.5f); + DrawCircle(headPos, headRadius, White50, 2); } void RenderPlayerBoxStats(Player &player) { + if (!config.isStatsActive) + return; + const float healthRatio = (float)player.health / player.maxHealth; const float armorRatio = (float)player.armor / 100.0f; @@ -47,6 +74,9 @@ class EspModule : public Module void RenderPlayerBox(Player &player) { + if (!config.isBoxActive) + return; + DrawRectangle(player.screenBox.pStart, player.screenBox.d, White50); DrawTextual(player.screenBox.pStart + Position{0, -16}, player.name.data(), White50); } @@ -56,10 +86,15 @@ class EspModule : public Module if (!C4Bomb.FuseChrono.IsRunning()) return; - const Position pos = ClientCenterPosition; - DrawTextual(pos, ("Time left: " + C4Bomb.FuseChrono.ToString()).data(), GetTimerColor(C4Bomb.FuseChrono)); - DrawTextual({pos.x, pos.y + 16}, ("Defuse Kit: " + C4Bomb.DefuseKitChrono.ToString()).data(), GetTimerColor(C4Bomb.DefuseKitChrono)); - DrawTextual({pos.x, pos.y + 32}, ("Defuse: " + C4Bomb.DefuseChrono.ToString()).data(), GetTimerColor(C4Bomb.DefuseChrono)); + const Position boxPos{8, ClientDimension.h - 80}; + const Position textStart{boxPos.x + 4, boxPos.y + 4}; + + // Draw the box based on text size + DrawFilledRectangle(boxPos, {180, 64}, Black50); + + DrawTextual(textStart, ("Time left: " + C4Bomb.FuseChrono.ToString()).data(), GetTimerColor(C4Bomb.FuseChrono)); + DrawTextual({textStart.x, textStart.y + 16}, ("Defuse Kit: " + C4Bomb.DefuseKitChrono.ToString()).data(), GetTimerColor(C4Bomb.DefuseKitChrono)); + DrawTextual({textStart.x, textStart.y + 32}, ("Defuse: " + C4Bomb.DefuseChrono.ToString()).data(), GetTimerColor(C4Bomb.DefuseChrono)); } public: