Merge pull request #545 from TotallyNotElite/master
Fix isBacktrackEnabled
This commit is contained in:
commit
e10036b9ca
@ -40,7 +40,6 @@ void Run();
|
||||
void Draw();
|
||||
void AddLatencyToNetchan(INetChannel *, float);
|
||||
void UpdateIncomingSequences();
|
||||
bool shouldBacktrack();
|
||||
extern int lastincomingsequencenumber;
|
||||
extern int BestTick;
|
||||
extern int iBestTarget;
|
||||
@ -60,7 +59,7 @@ typedef boost::circular_buffer_space_optimized<CIncomingSequence> circular_buf;
|
||||
extern circular_buf sequences;
|
||||
extern BacktrackData headPositions[32][66];
|
||||
|
||||
bool isBacktrackEnabled();
|
||||
extern bool isBacktrackEnabled;
|
||||
float getLatency();
|
||||
int getTicks();
|
||||
bool ValidTick(BacktrackData &i, CachedEntity *ent);
|
||||
|
@ -96,7 +96,7 @@ AimbotCalculatedData_s calculated_data_array[2048]{};
|
||||
#define IsMelee GetWeaponMode() == weapon_melee
|
||||
bool BacktrackAimbot()
|
||||
{
|
||||
if (!hacks::shared::backtrack::isBacktrackEnabled() || !backtrackAimbot)
|
||||
if (!hacks::shared::backtrack::isBacktrackEnabled || !*backtrackAimbot)
|
||||
return false;
|
||||
if (aimkey && !aimkey.isKeyDown())
|
||||
return true;
|
||||
|
@ -45,9 +45,9 @@ int ClosestDistanceHitbox(CachedEntity *target,
|
||||
{
|
||||
int closest = -1;
|
||||
float closest_dist = 0.0f, dist = 0.0f;
|
||||
for (int i = spine_0; i < spine_3; i++)
|
||||
for (int i = pelvis; i < lowerArm_R; i++)
|
||||
{
|
||||
if (hacks::shared::backtrack::isBacktrackEnabled())
|
||||
if (hacks::shared::backtrack::isBacktrackEnabled)
|
||||
dist = g_pLocalPlayer->v_Eye.DistTo(btd.hitboxes.at(i).center);
|
||||
else
|
||||
dist = g_pLocalPlayer->v_Eye.DistTo(
|
||||
@ -67,7 +67,7 @@ bool unifiedCanBackstab(Vector &vecAngle, Vector min, Vector max,
|
||||
// Get melee range
|
||||
float meleeRange = re::C_TFWeaponBaseMelee::GetSwingRange(RAW_ENT(LOCAL_W));
|
||||
if (fabsf(vecAngle.y -
|
||||
NET_VECTOR(RAW_ENT(besttarget), netvar.m_angEyeAngles).y) >= 50)
|
||||
NET_VECTOR(RAW_ENT(besttarget), netvar.m_angEyeAngles).y) >= 60.0f)
|
||||
return false;
|
||||
if (!min.x && !max.x)
|
||||
return false;
|
||||
@ -122,7 +122,7 @@ void CreateMove()
|
||||
if (!CanShoot())
|
||||
return;
|
||||
CachedEntity *besttarget = nullptr;
|
||||
if (!backtrack::isBacktrackEnabled())
|
||||
if (!backtrack::isBacktrackEnabled)
|
||||
{
|
||||
for (int i = 0; i < g_IEngine->GetMaxClients(); i++)
|
||||
{
|
||||
@ -173,7 +173,7 @@ void CreateMove()
|
||||
{
|
||||
hacks::shared::anti_anti_aim::resolveEnt(besttarget->m_IDX);
|
||||
Vector angle = NET_VECTOR(RAW_ENT(LOCAL_E), netvar.m_angEyeAngles);
|
||||
if (!backtrack::isBacktrackEnabled())
|
||||
if (!backtrack::isBacktrackEnabled)
|
||||
{
|
||||
for (angle.y = -180.0f; angle.y < 180.0f; angle.y += 10.0f)
|
||||
{
|
||||
|
@ -22,10 +22,12 @@ namespace hacks::shared::backtrack
|
||||
{
|
||||
void EmptyBacktrackData(BacktrackData &i);
|
||||
std::pair<int, int> getBestEntBestTick();
|
||||
bool shouldBacktrack();
|
||||
|
||||
BacktrackData headPositions[32][66]{};
|
||||
int highesttick[32]{};
|
||||
int lastincomingsequencenumber = 0;
|
||||
static bool shouldDrawBt;
|
||||
bool isBacktrackEnabled = false;
|
||||
|
||||
circular_buf sequences{ 2048 };
|
||||
void UpdateIncomingSequences()
|
||||
@ -48,6 +50,8 @@ void UpdateIncomingSequences()
|
||||
}
|
||||
void AddLatencyToNetchan(INetChannel *ch, float Latency)
|
||||
{
|
||||
if (!isBacktrackEnabled)
|
||||
return;
|
||||
if (Latency > 200.0f)
|
||||
Latency -= ch->GetLatency(MAX_FLOWS);
|
||||
for (auto &seq : sequences)
|
||||
@ -71,19 +75,16 @@ int BestTick = 0;
|
||||
int iBestTarget = -1;
|
||||
void Run()
|
||||
{
|
||||
if (!enable)
|
||||
if (!shouldBacktrack())
|
||||
{
|
||||
isBacktrackEnabled = false;
|
||||
return;
|
||||
}
|
||||
isBacktrackEnabled = true;
|
||||
|
||||
if (CE_BAD(LOCAL_E))
|
||||
return;
|
||||
|
||||
if (!shouldBacktrack())
|
||||
{
|
||||
shouldDrawBt = false;
|
||||
return;
|
||||
}
|
||||
shouldDrawBt = true;
|
||||
|
||||
CUserCmd *cmd = current_user_cmd;
|
||||
float bestFov = 99999;
|
||||
|
||||
@ -151,12 +152,10 @@ void Run()
|
||||
void Draw()
|
||||
{
|
||||
#if ENABLE_VISUALS
|
||||
if (!enable)
|
||||
if (!isBacktrackEnabled)
|
||||
return;
|
||||
if (!draw_bt)
|
||||
return;
|
||||
if (!shouldDrawBt)
|
||||
return;
|
||||
for (int i = 0; i < g_IEngine->GetMaxClients(); i++)
|
||||
{
|
||||
CachedEntity *ent = ENTITY(i);
|
||||
@ -192,10 +191,16 @@ void Draw()
|
||||
#endif
|
||||
}
|
||||
|
||||
// Internal only, use isBacktrackEnabled var instead
|
||||
bool shouldBacktrack()
|
||||
{
|
||||
if (!*enable)
|
||||
return false;
|
||||
CachedEntity *wep = g_pLocalPlayer->weapon();
|
||||
if (CE_BAD(wep))
|
||||
return false;
|
||||
int slot =
|
||||
re::C_BaseCombatWeapon::GetSlot(RAW_ENT(g_pLocalPlayer->weapon()));
|
||||
re::C_BaseCombatWeapon::GetSlot(RAW_ENT(wep));
|
||||
switch ((int) slots)
|
||||
{
|
||||
case 0:
|
||||
@ -229,11 +234,6 @@ bool shouldBacktrack()
|
||||
return false;
|
||||
}
|
||||
|
||||
bool isBacktrackEnabled()
|
||||
{
|
||||
return *enable;
|
||||
}
|
||||
|
||||
float getLatency()
|
||||
{
|
||||
return *latency;
|
||||
|
@ -113,7 +113,7 @@ void CreateMove()
|
||||
CachedEntity *ent = FindEntInSight(EffectiveTargetingRange());
|
||||
|
||||
// Check if can backtrack, shoot if we can
|
||||
if (!CanBacktrack() || hacks::shared::backtrack::isBacktrackEnabled())
|
||||
if (!CanBacktrack() || hacks::shared::backtrack::isBacktrackEnabled)
|
||||
return;
|
||||
|
||||
// Check if dormant or null to prevent crashes
|
||||
|
Reference in New Issue
Block a user