off
-
Автор темы
- #1
Хелпаните плиз, слишком высокие боксы, (по ширине я вроде как подогнал).
bool Visuals::Player::Begin(C_BasePlayer* pl)
{
if (pl->IsDormant() || !pl->IsAlive())
return false;
ctx.pl = pl;
ctx.is_enemy = g_LocalPlayer->m_iTeamNum() != pl->m_iTeamNum();
ctx.is_visible = g_LocalPlayer->CanSeePlayer(pl, HITBOX_CHEST);
if (!ctx.is_enemy && g_Options.esp_enemies_only)
return false;
ctx.clr = ctx.is_enemy ? (ctx.is_visible ? g_Options.color_esp_enemy_visible : g_Options.color_esp_enemy_occluded) : (ctx.is_visible ? g_Options.color_esp_ally_visible : g_Options.color_esp_ally_occluded);
auto head = pl->GetHitboxPos(HITBOX_HEAD);
auto origin = pl->m_vecOrigin();
head.z += 15;
if (!Math::WorldToScreen(head, ctx.head_pos) ||
!Math::WorldToScreen(origin, ctx.feet_pos))
return false;
auto h = fabs(ctx.head_pos.y - ctx.feet_pos.y);
auto w = h / 2.25f;
ctx.bbox.left = static_cast<long>(ctx.feet_pos.x - w * 0.45f);
ctx.bbox.right = static_cast<long>(ctx.bbox.left + w);
ctx.bbox.bottom = static_cast<long>(ctx.feet_pos.y);
ctx.bbox.top = static_cast<long>(ctx.head_pos.y);
return true;
}