Update aim.c, settings.h, and 2 more files...

This commit is contained in:
Wizzard 2025-04-04 18:55:08 -04:00
parent 6a640a716c
commit 51c3b979ea
4 changed files with 25 additions and 14 deletions

@ -250,7 +250,6 @@ void aimbot(usercmd_t* cmd) {
bool fire_button_pressed = (cmd->buttons & IN_ATTACK) != 0; bool fire_button_pressed = (cmd->buttons & IN_ATTACK) != 0;
bool should_autoshoot = g_settings.aimbot_autoshoot; bool should_autoshoot = g_settings.aimbot_autoshoot;
// Only run aimbot when actually firing
if (!fire_button_pressed) { if (!fire_button_pressed) {
return; return;
} }
@ -280,18 +279,20 @@ void aimbot(usercmd_t* cmd) {
cmd->viewangles.y = aim_angles.y; cmd->viewangles.y = aim_angles.y;
cmd->viewangles.z = aim_angles.z; cmd->viewangles.z = aim_angles.z;
} else { } else {
// Get smoothing from settings - a value of 0 means instant aim if (g_settings.aimbot_smoothing_enabled) {
float smoothing = g_settings.aimbot_smooth; float smoothing = g_settings.aimbot_smooth;
// If smoothing is set to 0 or very small, aim instantly if (smoothing <= 0.1f) {
if (smoothing <= 0.1f) { smoothing = 0.1f;
engine_viewangles.x = aim_angles.x; }
engine_viewangles.y = aim_angles.y;
engine_viewangles.z = aim_angles.z;
} else {
engine_viewangles.x += delta.x / smoothing; engine_viewangles.x += delta.x / smoothing;
engine_viewangles.y += delta.y / smoothing; engine_viewangles.y += delta.y / smoothing;
engine_viewangles.z += delta.z / smoothing; engine_viewangles.z += delta.z / smoothing;
} else {
engine_viewangles.x = aim_angles.x;
engine_viewangles.y = aim_angles.y;
engine_viewangles.z = aim_angles.z;
} }
ang_clamp(&engine_viewangles); ang_clamp(&engine_viewangles);

@ -27,6 +27,7 @@ typedef struct {
bool aimbot_enabled; bool aimbot_enabled;
float aimbot_fov; float aimbot_fov;
float aimbot_smooth; float aimbot_smooth;
bool aimbot_smoothing_enabled;
bool aimbot_silent; bool aimbot_silent;
bool aimbot_autoshoot; bool aimbot_autoshoot;
bool aimbot_require_key; bool aimbot_require_key;
@ -67,6 +68,7 @@ inline void init_default_settings(void) {
g_settings.aimbot_fov = 5.0f; g_settings.aimbot_fov = 5.0f;
g_settings.aimbot_smooth = 10.0f; g_settings.aimbot_smooth = 10.0f;
g_settings.aimbot_smoothing_enabled = true;
g_settings.aimbot_hitbox = 0; g_settings.aimbot_hitbox = 0;
g_settings.esp_mode = ESP_OFF; g_settings.esp_mode = ESP_OFF;

@ -190,7 +190,11 @@ extern "C" void menu_render(void) {
if (ImGui::SliderFloat("FOV", &g_settings.aimbot_fov, 0.1f, 360.0f, "%.1f")) { if (ImGui::SliderFloat("FOV", &g_settings.aimbot_fov, 0.1f, 360.0f, "%.1f")) {
} }
if (ImGui::SliderFloat("Smoothing", &g_settings.aimbot_smooth, 1.0f, 100.0f, "%.1f")) { ImGui::Checkbox("Enable Smoothing", &g_settings.aimbot_smoothing_enabled);
if (g_settings.aimbot_smoothing_enabled) {
if (ImGui::SliderFloat("Smoothing", &g_settings.aimbot_smooth, 1.0f, 100.0f, "%.1f")) {
}
} }
const char* hitbox_items[] = { "Head", "Chest", "Stomach", "Pelvis", "Nearest" }; const char* hitbox_items[] = { "Head", "Chest", "Stomach", "Pelvis", "Nearest" };
@ -529,9 +533,11 @@ static void render_fallback_menu(void) {
i_engine->pfnDrawConsoleString(x1+30, y, buffer); i_engine->pfnDrawConsoleString(x1+30, y, buffer);
y += 15; y += 15;
snprintf(buffer, sizeof(buffer), "- Smoothing: %.1f", g_settings.aimbot_smooth); if (g_settings.aimbot_smoothing_enabled) {
i_engine->pfnDrawConsoleString(x1+30, y, buffer); snprintf(buffer, sizeof(buffer), "- Smoothing: %.1f", g_settings.aimbot_smooth);
y += 15; i_engine->pfnDrawConsoleString(x1+30, y, buffer);
y += 15;
}
} }
y += 10; y += 10;

@ -46,6 +46,7 @@ bool create_root_default_config(void) {
preset.chams = true; preset.chams = true;
preset.aimbot_enabled = true; preset.aimbot_enabled = true;
preset.aimbot_fov = 5.0f; preset.aimbot_fov = 5.0f;
preset.aimbot_smoothing_enabled = true;
preset.bhop = true; preset.bhop = true;
preset.autostrafe = true; preset.autostrafe = true;
preset.thirdperson = false; preset.thirdperson = false;
@ -152,6 +153,7 @@ void settings_reset(void) {
g_settings.aimbot_friendly_fire = false; g_settings.aimbot_friendly_fire = false;
g_settings.aimbot_team_attack = false; g_settings.aimbot_team_attack = false;
g_settings.aimbot_require_key = false; g_settings.aimbot_require_key = false;
g_settings.aimbot_smoothing_enabled = true;
g_settings.bhop = false; g_settings.bhop = false;
g_settings.autostrafe = false; g_settings.autostrafe = false;