Новая ава блеять
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
В Settings.cpp добавляем:
В Settings.h добавляем:
В LagComp.cpp добавляем:
Заменить здесь:
На это:
В самом низу добавить:
В LagComp.h добавляем:
В самом низу:
В Client.cpp заменяем старые чекбоксы на эти:
В Esp.cpp добавляем:
Вот и все
Код:
int aim_Backtracktime = 200;
Код:
extern int aim_Backtracktime
Код:
int BacktrackTicks()
{
// Gets server tickrate
float timepertick = Interfaces::GlobalVars()->interval_per_tick;
if (timepertick == 0) timepertick += 0.001; // prevents game from crashing when unconnected
float tickrate = 1 / timepertick;
// actual b1g calculations yay
int gayxd = Settings::Aimbot::aim_Backtracktime / 200 * tickrate; // slider from 1-200ms
if (gayxd < 1) return 1; //prevents crash, thank me l8r
else return gayxd;
}
Код:
void BackTrack::legitBackTrack(CUserCmd* cmd)
Код:
void BackTrack::legitBackTrack(CUserCmd* cmd)
{
if (Settings::Aimbot::aim_Backtrack)
{
int bestTargetIndex = -1;
float bestFov = FLT_MAX;
CBaseEntity* pLocal = (CBaseEntity*)Interfaces::EntityList()->GetClientEntity(Interfaces::Engine()->GetLocalPlayer());
PlayerInfo info;
if (pLocal->IsDead())
return;
for (int i = 0; i < Interfaces::Engine()->GetMaxClients(); i++)
{
auto entity = (CBaseEntity*)Interfaces::EntityList()->GetClientEntity(i);
if (!entity || !pLocal)
continue;
if (entity == pLocal)
continue;
if (!Interfaces::Engine()->GetPlayerInfo(i, &info))
continue;
if (entity->IsDormant())
continue;
if (entity->GetTeam() == pLocal->GetTeam())
continue;
if (!entity->IsDead())
{
float simtime = entity->GetSimTime();
Vector hitboxPos = entity->GetHitboxPosition(0);
headPositions[i][cmd->command_number % BacktrackTicks()] = backtrackData{ simtime, hitboxPos };
Vector ViewDir = angle_vector(cmd->viewangles + (pLocal->GetAimPunchAngle() * 2.f));
float FOVDistance = distance_point_to_line(hitboxPos, pLocal->GetEyePosition(), ViewDir);
if (bestFov > FOVDistance)
{
bestFov = FOVDistance;
bestTargetIndex = i;
}
}
}
float bestTargetSimTime;
if (bestTargetIndex != -1)
{
float tempFloat = FLT_MAX;
Vector ViewDir = angle_vector(cmd->viewangles + (pLocal->GetAimPunchAngle() * 2.f));
for (int t = 0; t < BacktrackTicks(); ++t)
{
float tempFOVDistance = distance_point_to_line(headPositions[bestTargetIndex][t].hitboxPos, pLocal->GetEyePosition(), ViewDir);
if (tempFloat > tempFOVDistance && headPositions[bestTargetIndex][t].simtime > pLocal->GetSimTime() - 1)
{
tempFloat = tempFOVDistance;
bestTargetSimTime = headPositions[bestTargetIndex][t].simtime;
}
}
cmd->tick_count = TIME_TO_TICKS(bestTargetSimTime);
}
}
}
Код:
BackTrack* backtracking = new BackTrack();
backtrackData headPositions[64][25]; //support for 128tick servers
Код:
#define PI 3.14159265358979323846f
#define MAXBACKTRACKTICKS ((int)Settings::Aimbot::aim_Backtracktime)
#define TICK_INTERVAL (Interfaces::GlobalVars()->interval_per_tick)
#define TIME_TO_TICKS( dt ) ( (int)( 0.5f + (float)(dt) / TICK_INTERVAL ) )
Код:
extern backtrackData headPositions[64][25]; //same
extern BackTrack* backtracking;
int BacktrackTicks();
Код:
ImGui::SliderInt("Ticks (ms)", &Settings::Aimbot::aim_Backtracktime, 1, 200);
Код:
if (Settings::Aimbot::aim_Backtrack && Settings::Aimbot::aim_DrawBacktrack) // Use Esp Visible Combo to change from visible only and not visible.
{
for (int i = 0; i < Interfaces::EntityList()->GetHighestEntityIndex(); i++)
{
CBaseEntity* local = (CBaseEntity*)Interfaces::EntityList()->GetClientEntity(Interfaces::Engine()->GetLocalPlayer());
CBaseEntity *entity = (CBaseEntity*)Interfaces::EntityList()->GetClientEntity(i);
CPlayer* pPlayer = g_pPlayers->GetPlayer(i);
PlayerInfo pinfo;
if (entity == nullptr)
continue;
if (entity == local)
continue;
if (entity->IsDormant())
continue;
if (entity->GetTeam() == local->GetTeam())
continue;
if (Interfaces::Engine()->GetPlayerInfo(i, &pinfo) && !entity->IsDead())
{
if (Settings::Esp::esp_Visible >= 3)
{
if (!local->IsDead() && pPlayer->bVisible)
{
for (int t = 0; t < Settings::Aimbot::aim_Backtracktime; ++t)
{
Vector screenbacktrack[64][13];
if (headPositions[i][t].simtime && headPositions[i][t].simtime + 1 > local->GetSimTime())
{
if (WorldToScreen(headPositions[i][t].hitboxPos, screenbacktrack[i][t]))
{
g_pRender->DrawLine(screenbacktrack[i][t].x - 3.5, screenbacktrack[i][t].y, screenbacktrack[i][t].x + 3.5, screenbacktrack[i][t].y, Color(255, 0, 0, 75));
g_pRender->DrawLine(screenbacktrack[i][t].x, screenbacktrack[i][t].y - 3.5, screenbacktrack[i][t].x, screenbacktrack[i][t].y + 3.5, Color(255, 0, 0, 75));
}
}
}
}
else
{
memset(&headPositions[0][0], 0, sizeof(headPositions));
}
}
else
{
if (!local->IsDead())
{
for (int t = 0; t < Settings::Aimbot::aim_Backtracktime; ++t)
{
Vector screenbacktrack[64][13];
if (headPositions[i][t].simtime && headPositions[i][t].simtime + 1 > local->GetSimTime())
{
if (WorldToScreen(headPositions[i][t].hitboxPos, screenbacktrack[i][t]))
{
g_pRender->DrawLine(screenbacktrack[i][t].x - 3.5, screenbacktrack[i][t].y, screenbacktrack[i][t].x + 3.5, screenbacktrack[i][t].y, Color(255, 0, 0, 75));
g_pRender->DrawLine(screenbacktrack[i][t].x, screenbacktrack[i][t].y - 3.5, screenbacktrack[i][t].x, screenbacktrack[i][t].y + 3.5, Color(255, 0, 0, 75));
}
}
}
}
else
{
memset(&headPositions[0][0], 0, sizeof(headPositions));
}
}
}
}
}
}