Получить индекс игроков в радиусе 500

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Думаю заголовок говорит сам за себя.
Как получить индекс каждого игрока, которые попадают в радиус от какой-то точки.
В данном случае интересует в радиусе от нахождения игрока, который написал команду.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #2
Primo,
PHP:
Float:vOrigin[3]; // координаты твоей точки
decl Float:vClientOrigin[3];
for ( new i = 1; i <= MaxClients; i++)
{
	if ( IsClientInGame(i) && IsPlayerAlive(i))
	{
		GetEntPropVector(i, Prop_Send, "m_vecOrigin", vClientOrigin);
		if ( GetVectorDistance(vOrigin, vClientOrigin) <= 500.0 ) // дистанция
		{
			// игрок в радиусе
		}
	}
}
 

Danyas

Участник
Сообщения
2,173
Реакции
1,072
Primo,
PHP:
Float:vOrigin[3]; // координаты твоей точки
decl Float:vClientOrigin[3];
for ( new i = 1; i <= MaxClients; i++)
{
	if ( IsClientInGame(i) && IsPlayerAlive(i))
	{
		GetEntPropVector(i, Prop_Send, "m_vecOrigin", vClientOrigin);
		if ( GetVectorDistance(vOrigin, vClientOrigin) <= 500.0 ) // дистанция
		{
			// игрок в радиусе
		}
	}
}

А если еще и ближайшего игрока к прицелу?
И проверку на видимость) :-D
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #4
Danyas, а сам?
 
Сверху Снизу