SA-MP Forums Archive
[Ajuda] strcmp + sscanf - 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] strcmp + sscanf (/showthread.php?tid=382336)



strcmp + sscanf - tonisantolia - 03.10.2012

Estou ajudando um amigo em um sistema mas nгo sei como utilizar sscanf + strcmp..
Eu fiz um comando para testar mas ele nгo funciona..
pawn Код:
//topo
#define Parametro   cmdtext[(strfind(cmdtext, " ") + 1)]
//OnPlayerCommandText
    if(strcmp(cmd, "/testesscanf", true) == 0){
        new msg[128];
        if(sscanf(Parametro,"s",msg))
            return SendClientMessage(playerid, COLOR_GRAD1, "Use: /testesscanf (texto)");
        format(string,sizeof(string),"%s",msg);
        SendClientMessageToAll(COLOR_YELLOW2,string);
        return 1;
    }
Help-me



Re: strcmp + sscanf - mau.tito - 03.10.2012

Simplesmente pq nгo tem como.


Re: strcmp + sscanf - tonisantolia - 03.10.2012

Quote:
Originally Posted by mau.tito
Посмотреть сообщение
Simplesmente pq nгo tem como.
O Paulor disse que tem como e me passou uma formula de base.. mas ela nгo funciona, e sscanf pode ser utilizado com strcmp sim!


Re: strcmp + sscanf - Jason` - 03.10.2012

Quote:
Originally Posted by mau.tito
Посмотреть сообщение
Simplesmente pq nгo tem como.
Precipitando-se novamente...


pawn Код:
public OnPlayerCommandText(playerid, cmdtext[]) {

    static
        cmd[128],
        params[128];
       
    sscanf(cmdtext, "s[128]S( )[128]", cmd, params);
   
    // Exemplo
    if(!strcmp("/dinheiro", cmd)) {
   
        if(!IsPlayerAdmin(playerid))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Somente administradores rcon.");
           
        static id, quantia;
        if(sscanf(params, "ud", id, quantia))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Sintaxe: /dinheiro [ID] [Quantia]");
           
        GivePlayerMoney(id, quantia);
        return 1;
    }

    // Outros comandos
    return 0;
}
Acho que funciona.


Re: strcmp + sscanf - Jason` - 03.10.2012

#edit

Desculpem pela postagem dupla.


Re: strcmp + sscanf - zSuYaNw - 03.10.2012

Quote:
Originally Posted by Pedro_Miranda
Посмотреть сообщение
Precipitando-se novamente...


pawn Код:
public OnPlayerCommandText(playerid, cmdtext[]) {

    static
        cmd[128],
        params[128];
       
    sscanf(cmdtext, "s[128]S( )[128]", cmd, params);
   
    // Exemplo
    if(!strcmp("/dinheiro", cmd)) {
   
        if(!IsPlayerAdmin(playerid))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Somente administradores rcon.");
           
        static id, quantia;
        if(sscanf(params, "ud", id, quantia))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Sintaxe: /dinheiro [ID] [Quantia]");
           
        GivePlayerMoney(id, quantia);
        return 1;
    }

    // Outros comandos
    return 0;
}
Acho que funciona.
Miranda_Pedro,
nгo precisamos daquela definiзгo acima
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[]) {
    // Exemplo
    if(!strcmp(cmdtext,"/dinheiro", true)) {
   
        if(!IsPlayerAdmin(playerid))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Somente administradores rcon.");
           
        static id, quantia;
        if(sscanf(params, "ud", id, quantia))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Sintaxe: /dinheiro [ID] [Quantia]");
           
        GivePlayerMoney(id, quantia);
        return 1;
    }

    // Outros comandos
    return 0;
}



Re: strcmp + sscanf - Jason` - 03.10.2012

Quote:
Originally Posted by [Full]Garfield[XDB]
Посмотреть сообщение
Miranda_Pedro,
nгo precisamos daquela definiзгo acima
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[]) {
    // Exemplo
    if(!strcmp(cmdtext,"/dinheiro", true)) {
   
        if(!IsPlayerAdmin(playerid))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Somente administradores rcon.");
           
        static id, quantia;
        if(sscanf(params, "ud", id, quantia))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Sintaxe: /dinheiro [ID] [Quantia]");
           
        GivePlayerMoney(id, quantia);
        return 1;
    }

    // Outros comandos
    return 0;
}
E o undefined symbol ...?


Re: strcmp + sscanf - Maklister - 03.10.2012

Pelo visto tem como

Mas aconselho a usar ZCMD ou bCMD pelo seu transparecer dinвmico e mais eficaz.


Re: strcmp + sscanf - zSuYaNw - 03.10.2012

Quote:
Originally Posted by Pedro_Miranda
Посмотреть сообщение
E o undefined symbol ...?
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[]) {
    // Exemplo
    if(!strcmp(cmdtext,"/dinheiro", true)) {
   
        if(!IsPlayerAdmin(playerid))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Somente administradores rcon.");
           
        static id, quantia;
        if(sscanf(cmdtext, "ud", id, quantia))
            return SendClientMessage(playerid, 0x1E90FFFF, ">> Sintaxe: /dinheiro [ID] [Quantia]");
           
        GivePlayerMoney(id, quantia);
        return 1;
    }

    // Outros comandos
    return 0;
}
б й mesmo auehuaheuahueha


Re: strcmp + sscanf - Jason` - 03.10.2012

Nunca cheguei a testar desse modo, mas se funcional, realmente й melhor.