SA-MP Forums Archive
[Ajuda] /kick (icmd) - 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] /kick (icmd) (/showthread.php?tid=473585)



/kick (icmd) - XxFaTaLxX - 03.11.2013

Olб a todos, estou com um problema no comando, estou fazendo meu GM todo em icmd, sу que ainda nгo sei utiliza-lб muito bem.

pawn Код:
case iscmd("k,i,c,k"):
{  
    if(!params[0], giveplayerid, motivo))
    {
        SendClientMessage(playerid,-1,"Use: /kick [ID/Nome] [Motivo]");
    }
    if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][pAdmin] < 1) return SendClientMessage(playerid,-1,"Vocк precisa ser admin para usar este comando.");
    if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,-1,"Jogador nгo estб conectado.");
    new string[140];
    format(string,sizeof(string),":Admin: - %s Foi kickado Por %s, Motivo: %s", PlayerName(giveplayerid), PlayerName(playerid), motivo);
    SendClientMessageToAll(-1,string);
    Kick(giveplayerid);
    return true;
}
o Erro estб aqui:

pawn Код:
if(!params[0], giveplayerid, motivo))
Nome dos erro:

pawn Код:
error 033: array must be indexed (variable "motivo")
error 029: invalid expression, assumed zero



Re: /kick (icmd) - bruxo00 - 03.11.2013

ISCMD, nгo usa params como o ZCMD. Use SScanf.


Re: /kick (icmd) - PT - 03.11.2013

pawn Код:
case iscmd("k,i,c,k"):
{
    new motivo[64];
    if(!params[0], giveplayerid, motivo))
    {
        SendClientMessage(playerid,-1,"Use: /kick [ID/Nome] [Motivo]");
    }
    if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][pAdmin] < 1) return SendClientMessage(playerid,-1,"Vocк precisa ser admin para usar este comando.");
    if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,-1,"Jogador nгo estб conectado.");
    new string[140];
    format(string,sizeof(string),":Admin: - %s Foi kickado Por %s, Motivo: %s", PlayerName(giveplayerid), PlayerName(playerid), motivo);
    SendClientMessageToAll(-1,string);
    Kick(giveplayerid);
    return true;
}



Re: /kick (icmd) - WLSF - 03.11.2013

Quote:
Originally Posted by bruxo00
Посмотреть сообщение
ISCMD, nгo usa params como o ZCMD. Use SScanf.
Nгo fale besteira.

Quote:
Originally Posted by PT
Посмотреть сообщение
pawn Код:
case iscmd("k,i,c,k"):
{
    new motivo[64];
    if(!params[0], giveplayerid, motivo))
    {
        SendClientMessage(playerid,-1,"Use: /kick [ID/Nome] [Motivo]");
    }
    if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][pAdmin] < 1) return SendClientMessage(playerid,-1,"Vocк precisa ser admin para usar este comando.");
    if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,-1,"Jogador nгo estб conectado.");
    new string[140];
    format(string,sizeof(string),":Admin: - %s Foi kickado Por %s, Motivo: %s", PlayerName(giveplayerid), PlayerName(playerid), motivo);
    SendClientMessageToAll(-1,string);
    Kick(giveplayerid);
    return true;
}
Continuas com o spam inъtil ?


@tуpico

use apenas
pawn Код:
if (!params[0])
Essa sua condiзгo estб errada, nenhuma condiзгo й imposta com vнrgulas.


Re: /kick (icmd) - XxFaTaLxX - 03.11.2013

Usando apenas

pawn Код:
if (!params[0])
Assim que eu digito /kick, sou auto kickado.


Re: /kick (icmd) - WLSF - 03.11.2013

Quote:
Originally Posted by XxFaTaLxX
Посмотреть сообщение
Usando apenas

pawn Код:
if (!params[0])
Assim que eu digito /kick, sou auto kickado.
Vocк estб fazendo de forma errada entгo, mas veja bem, vocк estб querendo formatar 2 parвmetros usando sу a variбvel params, й complicado.

Use sscanf, jб que o icmd 7.1 ainda nгo foi lanзado.


Re: /kick (icmd) - PT - 03.11.2013

Quote:
Originally Posted by Willian_Luigi
Посмотреть сообщение
Nгo fale besteira.



Continuas com o spam inъtil ?


@tуpico

use apenas
pawn Код:
if (!params[0])
Essa sua condiзгo estб errada, nenhuma condiзгo й imposta com vнrgulas.
vc nem reparou que tem 2 parametros

pawn Код:
public OnPlayerCommandText(playerid, commandid, params[])
{
    switch(commandid)
    {
        case iscmd("k,i,c,k"):
        {
            if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][pAdmin] < 1) return SendClientMessage(playerid,-1,"Vocк precisa ser admin para usar este comando.");
            if(!params[0], !params[1])
                return SendClientMessage(playerid, -1, "[Erro]: Use /kick [id] [motivo]");
            if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid,-1, "Jogador nгo estб conectado.");
            new string[140];
            format(string,sizeof(string),":Admin: - %s Foi kickado Por %s, Motivo: %s", PlayerName(params[0]), PlayerName(playerid), motivo);
            SendClientMessageToAll(-1,string);
            Kick(params[0]);
            return true;
        }
        default: return SendClientMessage(playerid, -1, "[Erro]: Comando desconhecido, desculpe.");
    }
    return false;
}



Re: /kick (icmd) - WLSF - 03.11.2013

Quote:
Originally Posted by PT
Посмотреть сообщение
vc nem reparou que tem 2 parametros

pawn Код:
public OnPlayerCommandText(playerid, commandid, params[])
{
    switch(commandid)
    {
        case iscmd("k,i,c,k"):
        {
            if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][pAdmin] < 1) return SendClientMessage(playerid,-1,"Vocк precisa ser admin para usar este comando.");
            if(!params[0], !params[1])
                return SendClientMessage(playerid, -1, "[Erro]: Use /kick [id] [motivo]");
            if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid,-1, "Jogador nгo estб conectado.");
            new string[140];
            format(string,sizeof(string),":Admin: - %s Foi kickado Por %s, Motivo: %s", PlayerName(params[0]), PlayerName(playerid), motivo);
            SendClientMessageToAll(-1,string);
            Kick(params[0]);
            return true;
        }
        default: return SendClientMessage(playerid, -1, "[Erro]: Comando desconhecido, desculpe.");
    }
    return false;
}
Na verdade vocк que nгo entendeu, vocк devia parar de comentar coisa que nгo sabe.
Lembrando que nгo se usa vнrgula, pobre coitado.


Olha eu te fiz um exemplo aqui, sem sscanf, faзa uns testes por favor.
pawn Код:
public OnPlayerCommandText(playerid, commandid, params[])
{
    switch (commandid)
    {
        case iscmd("t,e,s,t,e"):
        {
            if (!params[0])
            {
                SendClientMessage(playerid, -1, "Syntax: /kick id motivo");
            }
            new msg[128], motivo[128];
            strmid(motivo, params, strfind(params, "\x20")+1, strlen(params));
           
            format(msg, sizeof(msg), "ID: %d, motivo: %s", strval(params[0]), motivo);
            SendClientMessage(playerid, -1, msg);
        }
    }
   
   
    return 0;
}

Abraзos


Respuesta: /kick (icmd) - DanDRT - 03.11.2013

Desculpem por esse mais:
й incrivel esses spammers na cara de pau ainda tentam argumentar.

@Topico: teste o do will!


Re: /kick (icmd) - XxFaTaLxX - 03.11.2013