SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 23/01/2015, 09:12 PM   #1
SukMathcuck
Gangsta
 
SukMathcuck's Avatar
 
Join Date: Jun 2014
Posts: 646
Reputation: 2
Default Comando bugado.

Alguém pode me informar oque tem de errado nesse código? pois não é funcional afs..

pawn Code:
if (strcmp(cmd, "/banconta", true) == 0)
    {
        if (IsPlayerConnected(playerid))
        {
            if (PlayerInfo[playerid][pAdmin] < 3)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "ERRO: Você não tem nível administrativo suficiente.");
                return true;
            }
            if (PlayerInfo[playerid][pAdminStats] != 0 && PlayerInfo[playerid][pAdmin] <= 5)
            {
                SendClientMessage(playerid, COLOR_GRAD1,"ERRO: Você não está no modo admin! (/trabalhar)");
                return true;
            }
            tmp = strtok(cmdtext, idx);
            if (!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_WHITE, "USE: /banconta [Nome] [Motivo]");
                return true;
            }
            new para1, level;
            para1 = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            level = strval(tmp);
            if (IsPlayerConnected(para1))
            {
                if (para1 != INVALID_PLAYER_ID)
                {
                    VBanNick(playerid,para1,level); // Ban por nick
//playerid = Administrador que efetuou o ban
//para1 = Nick que sofreu o ban
//level = Motivo do ban
                }
            }
        }
        return true;
    }

Mais o level, aquiw no código é números e não letras, afs, oque faço, e lembrando o para1 é o nome da pessoa que vai ban off, e não caso esteja on, eu até modifiquei mais bugo tudo afs.. voltei estaca 0
SukMathcuck is offline   Reply With Quote
Old 23/01/2015, 09:23 PM   #2
MultiKill
High-roller
 
Join Date: Apr 2014
Posts: 1,687
Reputation: 111
Default Re: Comando bugado.

Use sscanf, ou se ainda não quiser aprender, você vai ter que se vira e pensar em um jeito de como usar uma loop, strfind e strdel.

E se for "esperto" vai olhar os links da loop, strfind e strdel.

Usando as funções acima, basta só pensar um pouco.

E se você for inteligente vai começar a usar um processador de comandos e sscanf.
MultiKill is offline   Reply With Quote
Old 23/01/2015, 09:44 PM   #3
SukMathcuck
Gangsta
 
SukMathcuck's Avatar
 
Join Date: Jun 2014
Posts: 646
Reputation: 2
Default Re: Comando bugado.

Code:
C:\Documents and Settings\Administrador\Desktop\gamemode\gamemodes\123.pwn(41794) : error 035: argument type mismatch (argument 2)
C:\Documents and Settings\Administrador\Desktop\gamemode\gamemodes\123.pwn(41789) : warning 204: symbol is assigned a value that is never used: "level"
C:\Documents and Settings\Administrador\Desktop\gamemode\gamemodes\123.pwn(67826) : warning 204: symbol is assigned a value that is never used: "string"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
pawn Code:
VBanNick(playerid,para1,level); //linha 41794
SukMathcuck is offline   Reply With Quote
Old 23/01/2015, 09:46 PM   #4
MultiKill
High-roller
 
Join Date: Apr 2014
Posts: 1,687
Reputation: 111
Default Re: Comando bugado.

O terceiro parâmetro tem que ser uma string e não uma variável do tipo inteiro.


Como você usa uma função que não sabe para que serve?

Strval

E como você usa uma função sem saber quais são os tipos de parâmetros?

Se eu usar /banconta MultiKill teste 123

E no comando tiver uma mensagem:

"MultiKill baniu a conta MultiKill Motivo: ..."

Vai aparecer isso no motivo:

"MultiKill baniu a conta MultiKill Motivo: teste"

Em vez de aparecer teste 123
MultiKill is offline   Reply With Quote
Old 23/01/2015, 10:10 PM   #5
SukMathcuck
Gangsta
 
SukMathcuck's Avatar
 
Join Date: Jun 2014
Posts: 646
Reputation: 2
Default Re: Comando bugado.

Não entendi..
SukMathcuck is offline   Reply With Quote
Old 23/01/2015, 10:33 PM   #6
MultiKill
High-roller
 
Join Date: Apr 2014
Posts: 1,687
Reputation: 111
Default Re: Comando bugado.

Code:
VBanNick(playerid,nick[],motivo[]);
Exemplo:
pawn Code:
VBanNick(0,"MultiKill","Algum Motivo");

Um exemplo de colo você está usando:

pawn Code:
VBanNick(0,"MultiKill", 123);

Modo Correto:
pawn Code:
VBanNick(0,"MultiKill","Algum Motivo");

Modo Incorreto:
pawn Code:
VBanNick(0,"MultiKill", 123);

Se você não percebe o erro por favor vai estudar o básico do pawn.
MultiKill is offline   Reply With Quote
Old 23/01/2015, 11:00 PM   #7
SukMathcuck
Gangsta
 
SukMathcuck's Avatar
 
Join Date: Jun 2014
Posts: 646
Reputation: 2
Question Re: Comando bugado.

Eu não entendo mais é nada! eu fiz do modo certo e o trem fala que não está em uso, quebrei a cabeça e nada saiu, afs..

Code:
C:\Documents and Settings\Administrador\Desktop\gamemode\gamemodes\BSL.pwn(41810) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\Administrador\Desktop\gamemode\gamemodes\BSL.pwn(41809) : warning 204: symbol is assigned a value that is never used: "level"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
pawn Code:
if (strcmp(cmd, "/banconta", true) == 0)
    {
        if (IsPlayerConnected(playerid))
        {
            if (PlayerInfo[playerid][pAdmin] < 3)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "ERRO: Você não tem nível administrativo suficiente.");
                return true;
            }
            if (PlayerInfo[playerid][pAdminStats] != 0 && PlayerInfo[playerid][pAdmin] <= 5)
            {
                SendClientMessage(playerid, COLOR_GRAD1,"ERRO: Você não está no modo admin! (/trabalhar)");
                return true;
            }
            tmp = strtok(cmdtext, idx);
            if (!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_WHITE, "USE: /banconta [Nome] [Motivo]");
                return true;
            }
            new level;
            level = strval(tmp); //> error linha 41809
             VBanNick(playerid,tmp,level); // Ban por nick >> erro linha 41810 afs
//playerid = Administrador que efetuou o ban
//para1 = Nick que sofreu o ban
//level = Motivo do ban
        }
        return true;
    }
SukMathcuck is offline   Reply With Quote
Old 23/01/2015, 11:12 PM   #8
MultiKill
High-roller
 
Join Date: Apr 2014
Posts: 1,687
Reputation: 111
Default Re: Comando bugado.

A variável level armazena o que? números ou strings?
MultiKill is offline   Reply With Quote
Old 23/01/2015, 11:19 PM   #9
SukMathcuck
Gangsta
 
SukMathcuck's Avatar
 
Join Date: Jun 2014
Posts: 646
Reputation: 2
Default Re: Comando bugado.

Quote:
Originally Posted by MultiKill View Post
A variável level armazena o que? números ou strings?
strings: letras.
SukMathcuck is offline   Reply With Quote
Old 23/01/2015, 11:23 PM   #10
MultiKill
High-roller
 
Join Date: Apr 2014
Posts: 1,687
Reputation: 111
Default Re: Comando bugado.

Errado. Armazena números:

Olhe isto:

Variáveis

Strings

E a função strval faz o que?
MultiKill is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda] Comando bugado Hiuship Português/Portuguese 2 15/01/2015 12:34 PM
[Ajuda] Comando Bugado GHLEMES Português/Portuguese 2 11/06/2014 04:11 PM
[Ajuda] Comando bugado caoraivoso3 Português/Portuguese 8 25/07/2013 09:30 AM
[Ajuda] Comando bugado. DannielCooper Português/Portuguese 5 15/06/2013 05:39 AM
[Ajuda] Comando Bugado Brazuca[]s Português/Portuguese 1 06/07/2012 08:43 PM


All times are GMT. The time now is 11:11 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.