rename the backtrack global variable
This commit is contained in:
parent
9dcfc6b8cf
commit
a82a2a264c
@ -101,5 +101,5 @@ public:
|
||||
|
||||
void SetBacktrackData(CachedEntity *ent, BacktrackData);
|
||||
};
|
||||
extern hacks::tf2::backtrack::Backtrack backtrack;
|
||||
} // namespace hacks::tf2::backtrack
|
||||
extern hacks::tf2::backtrack::Backtrack g_IBacktrack;
|
||||
|
@ -121,7 +121,7 @@ float cur_proj_grav{ 0.0f };
|
||||
|
||||
bool shouldBacktrack()
|
||||
{
|
||||
return *enable && !projectile_mode && (*backtrackAimbot || force_backtrack_aimbot) && g_IBacktrack.isBacktrackEnabled;
|
||||
return *enable && !projectile_mode && (*backtrackAimbot || force_backtrack_aimbot) && hacks::tf2::backtrack::backtrack.isBacktrackEnabled;
|
||||
}
|
||||
|
||||
bool IsBacktracking()
|
||||
@ -589,7 +589,7 @@ bool IsTargetStateGood(CachedEntity *entity)
|
||||
else
|
||||
{
|
||||
// This does vischecks and everything
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
// No data found
|
||||
if (!data)
|
||||
return false;
|
||||
@ -709,7 +709,7 @@ bool IsTargetStateGood(CachedEntity *entity)
|
||||
if (shouldBacktrack())
|
||||
{
|
||||
// This does vischecks and everything
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
// No data found
|
||||
if (!data)
|
||||
return false;
|
||||
@ -827,7 +827,7 @@ bool IsTargetStateGood(CachedEntity *entity)
|
||||
if (shouldBacktrack())
|
||||
{
|
||||
// This does vischecks and everything
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
// No data found
|
||||
if (!data)
|
||||
return false;
|
||||
@ -873,7 +873,7 @@ void Aim(CachedEntity *entity)
|
||||
if (shouldBacktrack() && entity->m_Type() == ENTITY_PLAYER)
|
||||
{
|
||||
// This does vischecks and everything
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto bt_hb = data->hitboxes.at(cd.hitbox);
|
||||
hitboxcenter = bt_hb.center;
|
||||
hitboxmin = bt_hb.min;
|
||||
@ -926,9 +926,9 @@ void Aim(CachedEntity *entity)
|
||||
// Set Backtrack data
|
||||
if (shouldBacktrack() && entity->m_Type() == ENTITY_PLAYER)
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
if (data)
|
||||
g_IBacktrack.SetBacktrackData(entity, *data);
|
||||
hacks::tf2::backtrack::backtrack.SetBacktrackData(entity, *data);
|
||||
}
|
||||
// Finish function
|
||||
return;
|
||||
@ -1090,7 +1090,7 @@ const Vector &PredictEntity(CachedEntity *entity)
|
||||
}
|
||||
else
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
if (data)
|
||||
{
|
||||
result = data->hitboxes.at(cd.hitbox).center;
|
||||
@ -1225,7 +1225,7 @@ int BestHitbox(CachedEntity *target)
|
||||
// Backtracking and preferred hitbox
|
||||
if (IsBacktracking())
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(target, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(target, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
|
||||
if (data)
|
||||
{
|
||||
@ -1248,7 +1248,7 @@ int BestHitbox(CachedEntity *target)
|
||||
// We already vischecked
|
||||
if (!*backtrackVischeckAll)
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(target, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(target, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
|
||||
for (int i = 0; i < 18; i++)
|
||||
if (IsEntityVectorVisible(target, (*data).hitboxes.at(i).center))
|
||||
@ -1325,7 +1325,7 @@ bool VischeckPredictedEntity(CachedEntity *entity)
|
||||
}
|
||||
else
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(entity, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
if (data && IsEntityVectorVisible(entity, data->hitboxes.at(cd.hitbox == -1 ? 0 : cd.hitbox).center, MASK_SHOT))
|
||||
cd.visible = true;
|
||||
else
|
||||
@ -1520,7 +1520,7 @@ void rvarCallback(settings::VariableBase<float> &, float after)
|
||||
force_backtrack_aimbot = after >= 200.0f;
|
||||
}
|
||||
static InitRoutine EC([]() {
|
||||
g_IBacktrack.latency.installChangeCallback(rvarCallback);
|
||||
hacks::tf2::backtrack::backtrack.latency.installChangeCallback(rvarCallback);
|
||||
EC::Register(EC::LevelInit, Reset, "INIT_Aimbot", EC::average);
|
||||
EC::Register(EC::LevelShutdown, Reset, "RESET_Aimbot", EC::average);
|
||||
EC::Register(EC::CreateMove, CreateMove, "CM_Aimbot", EC::late);
|
||||
|
@ -280,7 +280,7 @@ static bool doBacktrackStab(bool legit = false)
|
||||
continue;
|
||||
|
||||
// Get the best tick for that ent
|
||||
auto tick_data = g_IBacktrack.getBestTick(ent, backtrackFilter);
|
||||
auto tick_data = hacks::tf2::backtrack::backtrack.getBestTick(ent, backtrackFilter);
|
||||
|
||||
// We found something matching the criterias, break out
|
||||
if (tick_data)
|
||||
@ -294,7 +294,7 @@ static bool doBacktrackStab(bool legit = false)
|
||||
// We found a good ent
|
||||
if (stab_ent)
|
||||
{
|
||||
g_IBacktrack.SetBacktrackData(stab_ent, stab_data);
|
||||
hacks::tf2::backtrack::backtrack.SetBacktrackData(stab_ent, stab_data);
|
||||
current_user_cmd->buttons |= IN_ATTACK;
|
||||
current_user_cmd->viewangles = newangle_apply;
|
||||
g_pLocalPlayer->bUseSilentAngles = true;
|
||||
@ -321,9 +321,9 @@ void CreateMove()
|
||||
doRageBackstab();
|
||||
break;
|
||||
case 2:
|
||||
if (g_IBacktrack.isBacktrackEnabled)
|
||||
if (hacks::tf2::backtrack::backtrack.isBacktrackEnabled)
|
||||
{
|
||||
if (*g_IBacktrack.latency <= 190 && doRageBackstab())
|
||||
if (*hacks::tf2::backtrack::backtrack.latency <= 190 && doRageBackstab())
|
||||
break;
|
||||
doBacktrackStab(false);
|
||||
}
|
||||
@ -333,9 +333,9 @@ void CreateMove()
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (g_IBacktrack.isBacktrackEnabled)
|
||||
if (hacks::tf2::backtrack::backtrack.isBacktrackEnabled)
|
||||
{
|
||||
if (*g_IBacktrack.latency <= 190 && doLegitBackstab())
|
||||
if (*hacks::tf2::backtrack::backtrack.latency <= 190 && doLegitBackstab())
|
||||
break;
|
||||
doBacktrackStab(true);
|
||||
}
|
||||
|
@ -471,13 +471,13 @@ std::optional<std::pair<CachedEntity *, BacktrackData>> Backtrack::getClosestTic
|
||||
}
|
||||
|
||||
static InitRoutine init([]() {
|
||||
EC::Register(EC::CreateMove, std::bind(&Backtrack::CreateMove, &g_IBacktrack), "backtrack_cm", EC::early);
|
||||
EC::Register(EC::CreateMove, std::bind(&Backtrack::CreateMoveLate, &g_IBacktrack), "backtrack_cmlate", EC::very_late);
|
||||
EC::Register(EC::CreateMove, std::bind(&Backtrack::CreateMove, &hacks::tf2::backtrack::backtrack), "backtrack_cm", EC::early);
|
||||
EC::Register(EC::CreateMove, std::bind(&Backtrack::CreateMoveLate, &hacks::tf2::backtrack::backtrack), "backtrack_cmlate", EC::very_late);
|
||||
#if ENABLE_VISUALS
|
||||
EC::Register(EC::Draw, std::bind(&Backtrack::Draw, &g_IBacktrack), "backtrack_draw");
|
||||
EC::Register(EC::Draw, std::bind(&Backtrack::Draw, &hacks::tf2::backtrack::backtrack), "backtrack_draw");
|
||||
#endif
|
||||
EC::Register(EC::LevelShutdown, std::bind(&Backtrack::LevelShutdown, &g_IBacktrack), "backtrack_levelshutdown");
|
||||
EC::Register(EC::LevelShutdown, std::bind(&Backtrack::LevelShutdown, &hacks::tf2::backtrack::backtrack), "backtrack_levelshutdown");
|
||||
});
|
||||
Backtrack backtrack;
|
||||
} // namespace hacks::tf2::backtrack
|
||||
// Global interface
|
||||
hacks::tf2::backtrack::Backtrack g_IBacktrack;
|
||||
|
@ -54,9 +54,9 @@ std::pair<CachedEntity *, Vector> FindBestEnt(bool teammate, bool Predict, bool
|
||||
if (zcheck && (ent->m_vecOrigin().z - LOCAL_E->m_vecOrigin().z) > 200.0f)
|
||||
continue;
|
||||
float scr = ent->m_flDistance();
|
||||
if (g_IBacktrack.isBacktrackEnabled && demoknight_mode)
|
||||
if (hacks::tf2::backtrack::backtrack.isBacktrackEnabled && demoknight_mode)
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(ent, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(ent, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
// No entity
|
||||
if (!data)
|
||||
scr = FLT_MAX;
|
||||
@ -109,9 +109,9 @@ std::pair<CachedEntity *, Vector> FindBestEnt(bool teammate, bool Predict, bool
|
||||
if (zcheck && (ent->m_vecOrigin().z - LOCAL_E->m_vecOrigin().z) > 200.0f)
|
||||
continue;
|
||||
float scr = ent->m_flDistance();
|
||||
if (g_IBacktrack.isBacktrackEnabled && demoknight_mode)
|
||||
if (hacks::tf2::backtrack::backtrack.isBacktrackEnabled && demoknight_mode)
|
||||
{
|
||||
auto data = g_IBacktrack.getClosestEntTick(ent, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &g_IBacktrack, std::placeholders::_1, std::placeholders::_2));
|
||||
auto data = hacks::tf2::backtrack::backtrack.getClosestEntTick(ent, LOCAL_E->m_vecOrigin(), std::bind(&hacks::tf2::backtrack::Backtrack::defaultTickFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1, std::placeholders::_2));
|
||||
// No entity
|
||||
if (!data)
|
||||
scr = FLT_MAX;
|
||||
|
@ -96,7 +96,7 @@ void CreateMove()
|
||||
CachedEntity *ent = nullptr;
|
||||
std::optional<hacks::tf2::backtrack::BacktrackData> bt_data;
|
||||
|
||||
if (!g_IBacktrack.isBacktrackEnabled)
|
||||
if (!hacks::tf2::backtrack::backtrack.isBacktrackEnabled)
|
||||
ent = FindEntInSight(EffectiveTargetingRange());
|
||||
// Backtrack, use custom filter to check if tick is in crosshair
|
||||
else
|
||||
@ -115,7 +115,7 @@ void CreateMove()
|
||||
forward = forward * EffectiveTargetingRange() + g_pLocalPlayer->v_Eye;
|
||||
|
||||
// Call closest tick with our Tick filter func
|
||||
auto closest_data = g_IBacktrack.getClosestTick(g_pLocalPlayer->v_Eye, std::bind(&hacks::tf2::backtrack::Backtrack::defaultEntFilter, &g_IBacktrack, std::placeholders::_1), tick_filter);
|
||||
auto closest_data = hacks::tf2::backtrack::backtrack.getClosestTick(g_pLocalPlayer->v_Eye, std::bind(&hacks::tf2::backtrack::Backtrack::defaultEntFilter, &hacks::tf2::backtrack::backtrack, std::placeholders::_1), tick_filter);
|
||||
|
||||
// No results, try to grab a building
|
||||
if (!closest_data)
|
||||
@ -127,7 +127,7 @@ void CreateMove()
|
||||
// Assign entity
|
||||
ent = (*closest_data).first;
|
||||
bt_data = (*closest_data).second;
|
||||
g_IBacktrack.SetBacktrackData(ent, *bt_data);
|
||||
hacks::tf2::backtrack::backtrack.SetBacktrackData(ent, *bt_data);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,13 +10,13 @@ namespace hooked_methods
|
||||
{
|
||||
DEFINE_HOOKED_METHOD(SendDatagram, int, INetChannel *ch, bf_write *buf)
|
||||
{
|
||||
if (!isHackActive() || !ch || CE_BAD(LOCAL_E) || std::floor(*g_IBacktrack.latency) == 0)
|
||||
if (!isHackActive() || !ch || CE_BAD(LOCAL_E) || std::floor(*hacks::tf2::backtrack::backtrack.latency) == 0)
|
||||
return original::SendDatagram(ch, buf);
|
||||
|
||||
int in = ch->m_nInSequenceNr;
|
||||
int state = ch->m_nInReliableState;
|
||||
// Do backtrack things
|
||||
g_IBacktrack.adjustPing(ch);
|
||||
hacks::tf2::backtrack::backtrack.adjustPing(ch);
|
||||
|
||||
int ret = original::SendDatagram(ch, buf);
|
||||
ch->m_nInSequenceNr = in;
|
||||
|
@ -45,7 +45,7 @@ DEFINE_HOOKED_METHOD(DrawModelExecute, void, IVModelRender *this_, const DrawMod
|
||||
if (!isHackActive())
|
||||
return original::DrawModelExecute(this_, state, info, bone);
|
||||
|
||||
if (!(g_IBacktrack.isBacktrackEnabled /*|| (hacks::shared::antiaim::force_fakelag && hacks::shared::antiaim::isEnabled())*/ || spectator_target || no_arms || no_hats || (*clean_screenshots && g_IEngine->IsTakingScreenshot()) || CE_BAD(LOCAL_E) || !LOCAL_E->m_bAlivePlayer()))
|
||||
if (!(hacks::tf2::backtrack::backtrack.isBacktrackEnabled /*|| (hacks::shared::antiaim::force_fakelag && hacks::shared::antiaim::isEnabled())*/ || spectator_target || no_arms || no_hats || (*clean_screenshots && g_IEngine->IsTakingScreenshot()) || CE_BAD(LOCAL_E) || !LOCAL_E->m_bAlivePlayer()))
|
||||
{
|
||||
return original::DrawModelExecute(this_, state, info, bone);
|
||||
}
|
||||
@ -114,7 +114,7 @@ DEFINE_HOOKED_METHOD(DrawModelExecute, void, IVModelRender *this_, const DrawMod
|
||||
aa_draw = false;
|
||||
angles.y = backup;
|
||||
}*/
|
||||
if (g_IBacktrack.isBacktrackEnabled && g_IBacktrack.chams)
|
||||
if (hacks::tf2::backtrack::backtrack.isBacktrackEnabled && hacks::tf2::backtrack::backtrack.chams)
|
||||
{
|
||||
const char *name = g_IModelInfo->GetModelName(info.pModel);
|
||||
if (name)
|
||||
@ -128,7 +128,7 @@ DEFINE_HOOKED_METHOD(DrawModelExecute, void, IVModelRender *this_, const DrawMod
|
||||
if (CE_GOOD(ent) && ent->m_bAlivePlayer())
|
||||
{
|
||||
// Get Backtrack data for target entity
|
||||
auto good_ticks = g_IBacktrack.getGoodTicks(info.entity_index);
|
||||
auto good_ticks = hacks::tf2::backtrack::backtrack.getGoodTicks(info.entity_index);
|
||||
|
||||
// Check if valid
|
||||
if (!good_ticks.empty())
|
||||
@ -144,15 +144,15 @@ DEFINE_HOOKED_METHOD(DrawModelExecute, void, IVModelRender *this_, const DrawMod
|
||||
rgba_t mod_original;
|
||||
// Save color just in case, then set to team color
|
||||
g_IVRenderView->GetColorModulation(mod_original.rgba);
|
||||
g_IVRenderView->SetColorModulation(g_IBacktrack.team_color ? colors::EntityF(ent) : colors::FromRGBA8(100, 100, 100, 255));
|
||||
g_IVRenderView->SetColorModulation(hacks::tf2::backtrack::backtrack.team_color ? colors::EntityF(ent) : colors::FromRGBA8(100, 100, 100, 255));
|
||||
// Important for Depth
|
||||
ptr->DepthRange(0.0f, 1.0f);
|
||||
// Apply our material
|
||||
if (!g_IBacktrack.team_color)
|
||||
if (!hacks::tf2::backtrack::backtrack.team_color)
|
||||
g_IVModelRender->ForcedMaterialOverride(mat_dme_chams);
|
||||
|
||||
// Draw as many ticks as desired
|
||||
for (unsigned i = 0; i <= (unsigned) std::max(*g_IBacktrack.chams_ticks, 1); i++)
|
||||
for (unsigned i = 0; i <= (unsigned) std::max(*hacks::tf2::backtrack::backtrack.chams_ticks, 1); i++)
|
||||
{
|
||||
// Can't draw more than we have
|
||||
if (i >= good_ticks.size())
|
||||
|
Reference in New Issue
Block a user