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