polo79655, писал для себя, но вот тебе мой GetClientAimTarget.
Запрещает целиить игрока через стены, т.е дейсствия через стены или пропы не учитываются.
Код
public bool TRDontHitTarget(int entity, int mask, any data)
{
if (entity == data) return false;
return true;
}
stock int AimTargetPlayer(int client) {
float m_vecOrigin[3],
m_angRotation[3];
GetClientEyePosition(client, m_vecOrigin);
GetClientEyeAngles(client, m_angRotation);
Handle tr = TR_TraceRayFilterEx(m_vecOrigin, m_angRotation, MASK_VISIBLE, RayType_Infinite, TRDontHitTarget, client);
if (TR_DidHit(tr)) {
int pEntity = TR_GetEntityIndex(tr);
if (0 < pEntity < MaxClients)
{
delete tr;
return pEntity;
}
}
delete tr;
return -1;
}