[AJUDA] /DarGrana [ID] [Quantia]
#4

no final do seu GM fora de PUBLIC

PHP код:
ReturnUser(text[], playerid INVALID_PLAYER_ID)
{
    new 
pos 0;
    while (
text[pos] < 0x21// Strip out leading spaces
    
{
        if (
text[pos] == 0) return INVALID_PLAYER_ID// No passed text
        
pos++;
    }
    new 
userid INVALID_PLAYER_ID;
    if (
IsNumeric(text[pos])) // Check whole passed string
    
{
        
// If they have a numeric name you have a problem (although names are checked on id failure)
        
userid strval(text[pos]);
        if (
userid >=&& userid MAX_PLAYERS)
        {
            if(!
IsPlayerConnected(userid))
            {
                
/*if (playerid != INVALID_PLAYER_ID)
                {
                    SendClientMessage(playerid, 0xFF0000AA, "User not connected");
                }*/
                
userid INVALID_PLAYER_ID;
            }
            else
            {
                return 
userid// A player was found
            
}
        }
        
/*else
        {
            if (playerid != INVALID_PLAYER_ID)
            {
                SendClientMessage(playerid, 0xFF0000AA, "Invalid user ID");
            }
            userid = INVALID_PLAYER_ID;
        }
        return userid;*/
        // Removed for fallthrough code
    
}
    
// They entered [part of] a name or the id search failed (check names just incase)
    
new len strlen(text[pos]);
    new 
count 0;
    new 
name[MAX_PLAYER_NAME];
    for (new 
0MAX_PLAYERSi++)
    {
        if (
IsPlayerConnected(i))
        {
            
GetPlayerName(inamesizeof (name));
            if (
strcmp(nametext[pos], truelen) == 0// Check segment of name
            
{
                if (
len == strlen(name)) // Exact match
                
{
                    return 
i// Return the exact player on an exact match
                    // Otherwise if there are two players:
                    // Me and MeYou any time you entered Me it would find both
                    // And never be able to return just Me's id
                
}
                else 
// Partial match
                
{
                    
count++;
                    
userid i;
                }
            }
        }
    }
    if (
count != 1)
    {
        if (
playerid != INVALID_PLAYER_ID)
        {
            if (
count)
            {
                
SendClientMessage(playerid0xFF0000AA"Multiple users found, please narrow earch");
            }
            else
            {
                
SendClientMessage(playerid0xFF0000AA"No matching user found");
            }
        }
        
userid INVALID_PLAYER_ID;
    }
    return 
userid// INVALID_USER_ID for bad return

ajudei +rep
Reply


Messages In This Thread
[AJUDA] /DarGrana [ID] [Quantia] - by Allanrokeiro - 12.11.2011, 11:47
Re: [AJUDA] /DarGrana [ID] [Quantia] - by lucas_mdr1235 - 12.11.2011, 11:49
Re: [AJUDA] /DarGrana [ID] [Quantia] - by Allanrokeiro - 12.11.2011, 11:57
Re: [AJUDA] /DarGrana [ID] [Quantia] - by lucas_mdr1235 - 12.11.2011, 12:30

Forum Jump:


Users browsing this thread: 2 Guest(s)