30.07.2011, 19:35
I used this before i started using sscanf.. ^^
Both IDs/part of names work.
Example:
pawn Код:
stock GetIDFromName(playername[]) // © by iPLEOMAX
{
foreach(Player, i)
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(i,pname,MAX_PLAYER_NAME);
if(strfind(pname,playername,true) != -1 && strlen(playername) != 0) { return i; }
}
if(strfind(playername, "0",true) != -1 && strlen(playername) <= 1) return 0;
if(strval(playername) > 0 && strval(playername) < MAX_PLAYERS) return strval(playername);
return -1;
}
Example:
pawn Код:
CMD:test( playerid, params[] )
{
new partofname[24];
if (sscanf (params, "s[24]", partofname) ) return SendClientMessage( playerid, -1, "Usage: /test [part of name]" );
SendClientMessage( GetIDFromName(partofname), -1, "I found your ID!" );
return true;
}