This commit is contained in:
Oscar
2025-07-22 22:06:34 +03:00
parent d3c189f949
commit f892794557
780 changed files with 436498 additions and 170 deletions

View File

@@ -6,6 +6,7 @@
#include <string>
#include <sstream>
#include <DirectXMath.h>
#include "../features/spectators/spectators.h"
std::string g_DebugString;
@@ -79,4 +80,16 @@ void Hud::render() {
ImU32 debugColor = IM_COL32(255, 255, 0, 255); // жёлтый
ImGui::GetBackgroundDrawList()->AddText(debugPos, debugColor, g_DebugString.c_str());
}
// Отображение списка наблюдателей
//Spectators::RenderSpectatorList();
//Spectators::RenderPlayersDebugList();
// Тестовая информация для отладки
//static int testCounter = 0;
//testCounter++;
//if (testCounter % 60 == 0) { // Каждую секунду (при 60 FPS)
// g_DebugString = "Spectator test: " + std::to_string(Spectators::GetSpectators().size()) + " players found";
//}
}

View File

@@ -1,5 +1,6 @@
#pragma once
#include <string>
#include "../features/spectators/spectators.h"
extern std::string g_DebugString;
class Hud {

View File

@@ -131,10 +131,10 @@ void Menu::render() {
ImGui::Separator();
const char* tabNames[] = { "Aim", "Visuals", "Misc", "Config" };
const char* tabNames[] = { "Aim", "Silent Aim", "Visuals", "Misc", "Config" };
if (ImGui::BeginTabBar("MainTabBar", ImGuiTabBarFlags_NoTooltip)) {
for (int i = 0; i < 4; i++) {
for (int i = 0; i < 5; i++) {
if (ImGui::BeginTabItem(tabNames[i])) {
activeTab = i;
ImGui::EndTabItem();
@@ -164,6 +164,7 @@ void Menu::render() {
ImGui::Checkbox("Team Check", &Config::team_check);
ImGui::Checkbox("Aimbot on LMB", &Config::aimbot_on_lmb);
ImGui::SliderFloat("Smooth", &Config::aimbot_smooth, 0.f, 10.f, "%.2f");
ImGui::SliderFloat("Aimbot FOV", &Config::aimbot_fov, 1.f, 180.f, "%1.0f");
ImGui::Checkbox("Dynamic Smooth", &Config::aimbot_dynamic_smooth);
if (Config::aimbot_dynamic_smooth) {
ImGui::SliderFloat("Dynamic Smooth Factor", &Config::aimbot_dynamic_smooth_factor, 0.1f, 25.0f, "%.2f");
@@ -173,6 +174,7 @@ void Menu::render() {
ImGui::ColorEdit4("Circle Color##FovColor", (float*)&Config::fovCircleColor);
}
ImGui::Checkbox("Recoil Control", &Config::rcs);
ImGui::SliderInt("RCS Activation Shots", &Config::rcsActivationShots, 0, 10);
ImGui::EndChild();
ImGui::SameLine();
@@ -186,12 +188,35 @@ void Menu::render() {
ImGui::Text("Key:");
ImGui::SameLine();
keybind.menuButton(Config::triggerbot_key);
ImGui::Text("Alt Key:");
ImGui::SameLine();
keybind.menuButton(Config::triggerbot_alt_key);
ImGui::SliderFloat("Delay (ms)", &Config::triggerbot_delay, 0.0f, 500.0f, "%.0f");
ImGui::EndChild();
}
break;
case 1:
case 1: // Silent Aim
{
ImGui::BeginChild("SilentAimLeft", ImVec2(ImGui::GetContentRegionAvail().x * 0.5f - 5, 0), true);
ImGui::Text("Silent Aim");
ImGui::Separator();
ImGui::Checkbox("Enable##SilentAim", &Config::silent_aim);
const char* boneNames[] = { "Head", "Neck", "Body", "Nearest" };
ImGui::Combo("Silent Aim Bone", &Config::silent_aim_bone, boneNames, IM_ARRAYSIZE(boneNames));
ImGui::Text("Key:");
ImGui::SameLine();
keybind.menuButton(Config::silent_aim_key);
ImGui::Checkbox("Always On##SilentAim", &Config::always_on_silent_aim);
ImGui::Checkbox("Shooter After Aim##Silent", &Config::silent_shooterAfterAim); // Новый чекбокс
ImGui::SliderFloat("Smooth##SilentAim", &Config::silent_aim_smooth_slider, 0.f, 10.f, "%.2f");
Config::silent_aim_smooth = Config::silent_aim_smooth_slider; // Применяем значение ползунка к логике
ImGui::SliderFloat("Silent Aim FOV", &Config::silent_aim_fov, 1.f, 180.f, "%1.0f");
ImGui::EndChild();
}
break;
case 2:
{
ImGui::BeginChild("VisualsLeft", ImVec2(ImGui::GetContentRegionAvail().x * 0.5f - 5, 0), true);
ImGui::Text("Player ESP");
@@ -208,6 +233,17 @@ void Menu::render() {
ImGui::Checkbox("Health Bar", &Config::showHealth);
ImGui::Checkbox("Name Tags", &Config::showNameTags);
ImGui::Spacing();
ImGui::Text("Spectators");
ImGui::Separator();
ImGui::Checkbox("Show Spectators", &Config::showSpectators);
if (Config::showSpectators) {
ImGui::ColorEdit4("Spectator Text Color", (float*)&Config::spectatorListColor);
ImGui::ColorEdit4("Spectator Background Color", (float*)&Config::spectatorListBgColor);
ImGui::SliderFloat("Spectator List Opacity", &Config::spectatorListOpacity, 0.0f, 1.0f, "%.2f");
}
ImGui::Spacing();
ImGui::Text("World");
ImGui::Separator();
@@ -263,7 +299,7 @@ void Menu::render() {
}
break;
case 2:
case 3:
{
ImGui::BeginChild("MiscLeft", ImVec2(ImGui::GetContentRegionAvail().x * 0.5f - 5, 0), true);
ImGui::Text("Movement");
@@ -284,7 +320,7 @@ void Menu::render() {
}
break;
case 3:
case 4:
{
ImGui::BeginChild("ConfigLeft", ImVec2(ImGui::GetContentRegionAvail().x * 0.5f - 5, 0), true);
ImGui::Text("General");