10.01.2011, 14:49
(
Последний раз редактировалось Kwarde; 04.02.2011 в 13:39.
)
Hey I made some handy tools. This are the functions:
GetPlayerWithHighestScore(); - Returns player ID with highest score
GetIDFromIP(ip[]); - Returns the player with "ip" (lowest ID. If there are more players, the one with the highest IP won't be returned)
GetIDFromName(name[]); - Same as GetIDFromIP, but now with the name
GetLowestFreeID(); - Returns lowest free slot on the server (handy for the NCPC plugin)
Here they are. (I know that the most exists, but I couldn't really find an topic where they where really posted)
Regards,
Kevin
EDIT:
GetPlayerWithHighestScore is working
GetPlayerWithHighestScore(); - Returns player ID with highest score
GetIDFromIP(ip[]); - Returns the player with "ip" (lowest ID. If there are more players, the one with the highest IP won't be returned)
GetIDFromName(name[]); - Same as GetIDFromIP, but now with the name
GetLowestFreeID(); - Returns lowest free slot on the server (handy for the NCPC plugin)
Here they are. (I know that the most exists, but I couldn't really find an topic where they where really posted)
pawn Код:
stock GetLowestID()
{
for(new i = 0; i < MAX_PLAYERS; i++){
if(!IsPlayerConnected(i) && i > -1 && i < 501)
return i;
else continue;
}
return -1;
}
stock GetIDFromName(name[])
{
new iName[MAX_PLAYER_NAME];
for(new i = 0; i < MAX_PLAYERS; i++){
GetPlayerName(i, iName, MAX_PLAYER_NAME);
if(!strcmp(name, iName, false))
return i;
else continue;
}
return -1;
}
stock GetIDFromIP(ip[])
{
new IP[16];
for(new i = 0; i < MAX_PLAYERS; i++){
GetPlayerIp(i, IP, 16);
if(!strcmp(ip, IP, true))
return i;
else continue;
}
return -1;
}
stock GetPlayerWithHighestScore()
{
new HighestScore = cellmin, ID = INVALID_PLAYER_ID;
for(new i = 0; i < 500; i++){
if(!IsPlayerConnected(i)) continue;
if(GetPlayerScore(i) > HighestScore){
HighestScore = GetPlayerScore(i);
ID = i;
}
continue;
}
return ID != INVALID_PLAYER_ID ? ID : -1;
}
Kevin
EDIT:
GetPlayerWithHighestScore is working