diff --git a/include/hacks/Backtrack.hpp b/include/hacks/Backtrack.hpp index 0b50e8b1..829223f3 100644 --- a/include/hacks/Backtrack.hpp +++ b/include/hacks/Backtrack.hpp @@ -12,6 +12,7 @@ namespace hacks::shared::backtrack { extern settings::Int latency; +extern settings::Bool enable; struct hitboxData { diff --git a/src/hacks/Aimbot.cpp b/src/hacks/Aimbot.cpp index 33eea7ba..a8365bb6 100644 --- a/src/hacks/Aimbot.cpp +++ b/src/hacks/Aimbot.cpp @@ -1498,11 +1498,17 @@ static void DrawText() } } #endif -void rvarCallback(settings::VariableBase &var, int after) +void rvarCallback(settings::VariableBase &var, float after) { - backtrackAimbot = after > 190.0f; + if (hacks::shared::backtrack::enable) + backtrackAimbot = after > 190.0f; +} +void rvarCallback2(settings::VariableBase &var, bool after) +{ + backtrackAimbot = (*hacks::shared::backtrack::latency > 190.0f) && after; } static InitRoutine EC([]() { + hacks::shared::backtrack::enable.installChangeCallback(rvarCallback2); hacks::shared::backtrack::latency.installChangeCallback(rvarCallback); EC::Register(EC::LevelInit, Reset, "INIT_Aimbot", EC::average); EC::Register(EC::LevelShutdown, Reset, "RESET_Aimbot", EC::average); @@ -1511,4 +1517,5 @@ static InitRoutine EC([]() { EC::Register(EC::Draw, DrawText, "DRAW_Aimbot", EC::average); #endif }); + } // namespace hacks::shared::aimbot diff --git a/src/hacks/Backtrack.cpp b/src/hacks/Backtrack.cpp index 0aa2a236..f300fdd6 100644 --- a/src/hacks/Backtrack.cpp +++ b/src/hacks/Backtrack.cpp @@ -13,7 +13,6 @@ #include "PlayerTools.hpp" #include -static settings::Bool enable{ "backtrack.enable", "false" }; static settings::Bool draw_bt{ "backtrack.draw", "false" }; static settings::Bool draw_skeleton{ "backtrack.draw-skeleton", "false" }; static settings::Float mindistance{ "backtrack.min-distance", "60" }; @@ -22,6 +21,7 @@ static settings::Int slots{ "backtrack.slots", "0" }; namespace hacks::shared::backtrack { +settings::Bool enable{ "backtrack.enable", "false" }; settings::Bool backtrack_chams_glow{ "backtrack.chams_glow", "true" }; settings::Int latency{ "backtrack.latency", "0" }; @@ -56,7 +56,7 @@ void AddLatencyToNetchan(INetChannel *ch) if (!isBacktrackEnabled) return; float Latency = *latency; - Latency -= (ch->GetAvgLatency(FLOW_OUTGOING) + ch->GetAvgLatency(FLOW_INCOMING)) * 1000.0f; + Latency -= ch->GetAvgLatency(FLOW_OUTGOING) * 1000.0f - 20.0f; if (Latency < 0.0f) Latency = 0.0f; for (auto &seq : sequences) @@ -326,7 +326,7 @@ float getLatency() auto ch = (INetChannel *) g_IEngine->GetNetChannelInfo(); if (!ch) return 0; - float Latency = *latency - (ch->GetAvgLatency(FLOW_OUTGOING) + ch->GetAvgLatency(FLOW_INCOMING)) * 1000.0f; + float Latency = *latency - ch->GetAvgLatency(FLOW_OUTGOING) * 1000.0f - 20.0f; if (Latency < 0.0f) Latency = 0.0f; return Latency; @@ -430,7 +430,11 @@ static InitRoutine EC([]() { EC::Register(EC::Draw, Draw, "DRAW_Backtrack", EC::average); #endif }); -CatCommand debug_richpresence("debug_presence", "Debug stuff", []() { +static CatCommand debug_flowout("debug_flowout", "test", []() { + auto ch = (INetChannel *) g_IEngine->GetNetChannelInfo(); + logging::Info("Out Avg: %f In Avg: %f Out current: %f In Current: %f", 1000.0f * ch->GetAvgLatency(FLOW_OUTGOING), 1000.0f * ch->GetAvgLatency(FLOW_INCOMING), 1000.0f * ch->GetLatency(FLOW_OUTGOING), 1000.0f * ch->GetLatency(FLOW_INCOMING)); +}); +static CatCommand debug_richpresence("debug_presence", "Debug stuff", []() { g_ISteamFriends->SetRichPresence("steam_display", "#TF_RichPresence_State_PlayingGeneric"); g_ISteamFriends->SetRichPresence("currentmap", "Cathooking"); });