SA-MP Forums Archive
[Ajuda] Problema com sscanf ou loop - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Problema com sscanf ou loop (/showthread.php?tid=567729)



Problema com sscanf ou loop - Ever_SH - 16.03.2015

Bom, recentemente aprendi a usar, zcmd, sscanf e loop, Foi ontem na verdade, estou criando um gamemode do 0, comecei a fazer comandos de admin, achei que estava tudo funcionando certo, atй que liguei o outro PC para testar.

Este й o comando do chat de admin
Somente o ID mais baixo recebe a mensagem

PHP код:
CMD:a(playeridparams[])
{
    if(
Logado[playerid] == false) return SendClientMessage(playeridCOR_VERMELHO"Vocк nгo estб Logado ainda.");
    if(
Player[playerid][Admin] == 0)
    {
        
SendClientMessage(playeridCOR_VERMELHO"Vocк nгo tem permissгo para usar este comando.");
        return 
1;
    }
    new 
chatadm[128];
    if(
sscanf(params"s[128]"chatadm))
     {
        
SendClientMessage(playeridCOR_VERMELHO"USE: /a [Texto].");
        return 
1;
    }
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Admin] != 0)
        {
            
GetPlayerName(playeridnomesizeof(nome));
            
format(Strsizeof(Str), "[Chat Admin] %s [ID: %d]: %s"nomeplayeridchatadm);
            
SendClientMessage(iCOR_AZULCLAROStr);
            return 
1;
        }
    }
    return 
1;




Re: Problema com sscanf ou loop - #Luca[S]. - 16.03.2015

Tente:
PHP код:
CMD:a(playeridparams[]) 

    if(
Logado[playerid] == false) return SendClientMessage(playeridCOR_VERMELHO"Vocк nгo estб Logado ainda."); 
    if(
Player[playerid][Admin] == 0
    { 
        
SendClientMessage(playeridCOR_VERMELHO"Vocк nгo tem permissгo para usar este comando."); 
        return 
1
    } 
    new 
chatadm[128]; 
    if(
sscanf(params"s[128]"chatadm)) 
     { 
        
SendClientMessage(playeridCOR_VERMELHO"USE: /a [Texto]."); 
        return 
1
    } 
    for(new 
iMAX_PLAYERSi++) 
    { 
        if(
Player[i][Admin] != 0
        { 
            
GetPlayerName(playeridnomesizeof(nome)); 
            
format(Strsizeof(Str), "[Chat Admin] %s [ID: %d]: %s"nomeplayeridchatadm); 
            
SendClientMessage(iCOR_AZULCLAROStr); 
        } 
    } 
    return 
1




Re: Problema com sscanf ou loop - Cleyson - 16.03.2015

Retire o return de dentro do loop.. o loop esta parando no primeiro admin que encontra

PHP код:
    for(new 0MAX_PLAYERSi++) 
    { 
        if(
Player[i][Admin] != 0
        { 
            
GetPlayerName(playeridnomesizeof(nome)); 
            
format(Strsizeof(Str), "[Chat Admin] %s [ID: %d]: %s"nomeplayeridchatadm); 
            
SendClientMessage(iCOR_AZULCLAROStr);  
        } 
    } 



Re: Problema com sscanf ou loop - Ever_SH - 16.03.2015

Era isso mesmo, +Rep para os 2.