Originally Posted by dice7
pawn Код:
forward GetClosestPlayer(p1); public GetClosestPlayer(p1) { new x,Float:dis,Float:dis2,player; player = -1; dis = 99999.99; for (x=0;x<MAX_PLAYERS;x++) { if(IsPlayerConnected(x)) { if(x != p1) { dis2 = GetDistanceBetweenPlayers(x,p1); if(dis2 < dis && dis2 != -1.00) { dis = dis2; player = x; } } } } return player; }
pawn Код:
Float:GetDistanceBetweenPlayers(p1,p2){ new Float:x1,Float:y1,Float:z1,Float:x3,Float:y3,Float:z3; if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)){ return -1.00; } GetPlayerPos(p1,x1,y1,z1); GetPlayerPos(p2,x3,y3,z3); return floatsqroot(floatpower(floatabs(floatsub(x3,x1)),2)+floatpower(floatabs(floatsub(y3,y1)),2)+floatpower(floatabs(floatsub(z3,z1)),2)); }
|