[Ajuda] sscanf BUG
#1

Salve galera , bom eu coloquei um sistema de ban no Meu servidor que й o kBan esse aqui http://pastebin.com/SzeavcBu# Nгo coloco o nome do criador porque nгo sei, mas afinal vamos ao erro , Bom quando eu digito o comando /ban [id] [motivo] ele continua mandando uma msg assim no Chat "USE: /ban [ID] [Motivo]" Mesmo eu colocando tudo direitinho eu nгo sei oque a de errado mais olhe na pastebin estб exatamente como estб no GM nгo modifiquei nada. Obrigado ^^
Sгo os 4 CMDS com o mesmo erro galera !

pawn Код:
CMD:ban(playerid, params[])
{
        new id, Motivo[100];
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, C_VERMELHO, "[Erro] {FFFFFF}Vocк nгo pode usar esse comando!");
        if(sscanf(params, "us[100]", id, Motivo)) return SendClientMessage(playerid, C_CINZA, "USE: /ban [ID] [Motivo]");
        if(!IsPlayerConnected(id)) return SendClientMessage(playerid, C_CINZA, "Esse jogador nгo esta conectado!");
    SendFormatMessageToAll(C_VERMELHO, "[Ban] O Admin {FFFFFF}%s{FF0000} baniu {FFFFFF}%s{FF0000}. Motivo: {FFFFFF}%s", PegarNome(playerid), PegarNome(id), Motivo);
        kBan(id, Motivo);
        kBanIP(id);
        Kick(id);
        //Log
        new Log [ ] = "Logs/Ban.log";
        format(String ,sizeof(String),"O administrador %s baniu: %s. Motivo: %s", PegarNome(playerid), PegarNome(id), Motivo);
    WriteLog(Log, String);
    return 1;
}
CMD:bantemp(playerid, params[])
{
        new id, Dias, Motivo[100];
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, C_VERMELHO, "[Erro] {FFFFFF}Vocк nгo pode usar esse comando!");
        if(sscanf(params, "uds[100]", id, Dias, Motivo)) return SendClientMessage(playerid, C_CINZA, "USE: /bantemp [ID] [Dias] [Motivo]");
    if(Dias < 0) return SendClientMessage(playerid, C_CINZA, "Digite um numero de dias validos!");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, C_CINZA, "Esse jogador nгo esta conectado!");
        SendFormatMessageToAll(C_VERMELHO, "[Ban] O Admin {FFFFFF}%s{FF0000} baniu {FFFFFF}%s{FF0000} por: {FFFFFF}%d {FF0000}dias. Motivo: {FFFFFF}%s", PegarNome(playerid), PegarNome(id), Dias, Motivo);
        kBanTemp(id, Dias, Motivo);
        kBanIP(id);
    Kick(id);
        //Log
        new Log [ ] = "Logs/BanTemp.log";
        format(String ,sizeof(String),"O administrador %s baniu %s por: %d dias. Motivo: %s", PegarNome(playerid), PegarNome(id), Dias, Motivo);
        WriteLog(Log, String);
    return 1;
}
CMD:desban(playerid, params[])
{
        new Conta[20];
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, C_VERMELHO, "[Erro] {FFFFFF}Vocк nгo pode usar esse comando!");
    if(sscanf(params, "s[20]", Conta)) return SendClientMessage(playerid, C_CINZA, "USE: /desban [Conta]");
    format(String, sizeof(String), "Banidos/%s.ini", Conta);
    if(DOF2_FileExists(String))
    {
        DOF2_RemoveFile(String);
                SendFormatMessage(playerid, C_VERDE, "Vocк desbaniu a conta de {FFFFFF}%s", Conta);
                //Log
            new Log [ ] = "Logs/Desban.log";
            format(String ,sizeof(String),"O administrador %s desbaniu a conta: %s", PegarNome(playerid), Conta);
        WriteLog(Log, String);
        return 1;
        }
    else SendClientMessage(playerid, C_VERMELHO, "Essa conta nгo existe ou nгo estб banida");
        return 1;
}
CMD:desbanip(playerid, params[])
{
        new IPBanido[20];
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, C_CINZA, "[Erro] Vocк nгo pode usar esse comando!");
    if(sscanf(params, "s[20]", IPBanido)) return SendClientMessage(playerid, C_CINZA, "USE: /desbanip [IP]");
    format(String, sizeof(String), "IPs Banidos/%s.ini", IPBanido);
    if(DOF2_FileExists(String))
    {
        DOF2_RemoveFile(String);
                SendFormatMessage(playerid, C_VERDE, "Vocк desbaniu o IP {FFFFFF}%s", IPBanido);
                //Log
                new Log [ ] = "Logs/DesbanIP.log";
            format(String ,sizeof(String),"O administrador %s desbaniu o IP: %s", PegarNome(playerid), IPBanido);
        WriteLog(Log, String);
        return 1;
        }
    else SendClientMessage(playerid, C_VERMELHO, "Esse IP nгo existe ou nгo estб banido");
        return 1;
}
Reply
#2

Tente trocar
pawn Код:
if(sscanf(params, "us[100]", id, Motivo))
por:
pawn Код:
if(sscanf(params, "is[100]", id, Motivo))
verifique seus news, tente:

pawn Код:
new id[56], Dias[56], Motivo[100]; // Atribua um tamanho para o id...
Vai tentando 'rs
Reply
#3

O plugin esta a carregar?
Reply
#4

@CLANdok
Cara nenhuma das soluзхes que vocк me deu funcionou =(

@PT
Cara o Plugin estб carregando normalmente no samp-server !
Reply
#5

Eu nгo uso assim:

pawn Код:
if(sscanf(params, "uds[100]", ID, Valor, Texto)) return ...
Eu uso assim:

pawn Код:
if(sscanf(params, "uds", ID, Valor, Texto)) return ...
Tenta fazer assim.
Reply
#6

Poise ReyMisterio jб tentei fazer desse Modo ai , sу Que o problema continua =(
Reply
#7

cara teste:

pawn Код:
CMD:ban(playerid, params[])
{
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid, C_VERMELHO, "[Erro] {FFFFFF}Vocк nгo pode usar esse comando!");
   
    extract params -> new id, string:Motivo[100]; else
    {
        return SendClientMessage(playerid, C_CINZA, "USE: /ban [ID] [Motivo]");
    }
    if(!IsPlayerConnected(id))
        return SendClientMessage(playerid, C_CINZA, "Esse jogador nгo esta conectado!");
   
    SendFormatMessageToAll(C_VERMELHO, "[Ban] O Admin {FFFFFF}%s{FF0000} baniu {FFFFFF}%s{FF0000}. Motivo: {FFFFFF}%s", PegarNome(playerid), PegarNome(id), Motivo);
    kBan(id, Motivo);
    kBanIP(id);
    Kick(id);
   
    //Log
    new Log [ ] = "Logs/Ban.log";
    format(String ,sizeof(String),"O administrador %s baniu: %s. Motivo: %s", PegarNome(playerid), PegarNome(id), Motivo);
    WriteLog(Log, String);
    return 1;
}
talvez resulte
Reply
#8

PT Testei seu Code nгo resultou , deu a mesma coisa =(
Reply
#9

Seu sscanf deve tar bugado ou algo assim, tente usar o meu
SSCANF 03-11-14.rar
Reply
#10

Irei testar e informo vocкs se deu certo !

Bom galera esqueci de informa-los quando eu coloco a sscanf no GM da esse Seguinte Warning, ai eu apenas removo o OnNPCModeInit mais nгo acho que isso que estб interferindo.
pawn Код:
C:\Users\Emerson\Desktop\sv-new\pawno\include\sscanf.inc(69) : warning 235: public function lacks forward declaration (symbol "OnNPCModeInit")
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase

Header size:          17304 bytes
Code size:          4489600 bytes
Data size:          3639572 bytes
Stack/heap size:      16384 bytes; estimated max. usage: unknown, due to recursion
Total requirements: 8162860 bytes

1 Warning.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)