mim Ajuda por favor !
#1

if(strcmp(cmd,"/dararma", true)==0) //No comando, em vez de usar "cmdtext", usarнamos "cmd" por causa da strtok
{
if(IsPlayerAdmin (playerid)){ //checa adm rcon
new plid, idarma, string[128]; //variaveis locais, variavel string armazenando caracter
136 tmp = strtok(cmdtext, idx);
137 if(!strlen(tmp)){
SendClientMessage(playerid, verde, " | ERRO | Digite: /dararma [id] [id-da-arma]");
return 1;
}
plid = strval(tmp);
141 tmp = strtok(cmdtext, idx);
142 if(!strlen(tmp)) {
143 SendClientMessage(playerid, verde, " | ERRO | Digite: /dararma [id] [id-da-arma]");
return 1;
}
147 idarma = strval(tmp);
if(idarma == 40){
SendClientMessage(playerid, verde, " | ERRO | Arma Proibida!");
return 1;
}
if(IsPlayerConnected(plid)){
GivePlayerWeapon(plid,idarma,100);
SendClientMessage(playerid, verde, " | INFO | Comando efetuado com sucesso!");
format(string, sizeof(string), " | INFO | O Administrador %s (%d) te deu a arma de id: %d", PlayerName(playerid),playerid,idarma);
SendClientMessage(plid,verde, string);
return 1;
}else{
SendClientMessage(playerid, verde, " | ERRO | Jogador nгo conectado.");
return 1;
}
}
}
return 0;
}


dar esse erro
C:\Users\kleiton\Downloads\samp037_svr_R2-1-1_win32\gamemodes\Mikael.pwn(136) : error 017: undefined symbol "tmp"
C:\Users\kleiton\Downloads\samp037_svr_R2-1-1_win32\gamemodes\Mikael.pwn(137) : error 017: undefined symbol "tmp"
C:\Users\kleiton\Downloads\samp037_svr_R2-1-1_win32\gamemodes\Mikael.pwn(141) : error 017: undefined symbol "tmp"
C:\Users\kleiton\Downloads\samp037_svr_R2-1-1_win32\gamemodes\Mikael.pwn(142) : error 017: undefined symbol "tmp"
C:\Users\kleiton\Downloads\samp037_svr_R2-1-1_win32\gamemodes\Mikael.pwn(143) : error 017: undefined symbol "tmp"
C:\Users\kleiton\Downloads\samp037_svr_R2-1-1_win32\gamemodes\Mikael.pwn(147) : error 017: undefined symbol "tmp"
Reply
#2

Crie variavel.
Reply
#3

Tente
new plid, idarma, string[128],tmp;
Reply
#4

Vamos utilizar zcmd pra ficar mais fбcil?
Toma ae:


PHP код:
#include <a_samp>
#include <zcmd>
#include <sscanf>
stock Nome(playerid)
{
    new 
pNome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridpNomesizeof(pNome));
    return 
pNome;
}
CMD:dararma(playeridparams[])
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
NomeArma[80];
        new 
IDString[128], ArmaMunicao;
        if(
sscanf(params"uii"IDArmaMunicao)) return SendClientMessage(playerid, -1"{FF0000}CORRETOR: Use /dararma [ID] [Arma] [Muniзгo]");
        if(!
IsPlayerConnected(ID)) return SendClientMessage(playerid, -1"{FF0000}ERRO: ID invalido");
        if(
Arma || Arma == 19 || Arma == 20 || Arma == 21 || Arma 46) return SendClientMessage(playerid, -1"{FF0000}ERRO: ID Invalido, use de 1 a 46");
        if(
Arma == 1NomeArma "Soco Inglкs";
        if(
Arma == 2NomeArma "Taco de Golf";
        if(
Arma == 3NomeArma "Cacetete";
        if(
Arma == 4NomeArma "Faca";
        if(
Arma == 5NomeArma "Taco de Baseball";
        if(
Arma == 6NomeArma "Pб";
        if(
Arma == 7NomeArma "Taco de Sinuca";
        if(
Arma == 8NomeArma "Kitana";
        if(
Arma == 9NomeArma "Serra elйtrica";
        if(
Arma == 10NomeArma "Pinto de Borracha";
        if(
Arma == 11NomeArma "Pinto roxo";
        if(
Arma == 12NomeArma "Vibrador";
        if(
Arma == 13NomeArma "Vibrador de Prata";
        if(
Arma == 14NomeArma "Flor";
        if(
Arma == 15NomeArma "Bengala";
        if(
Arma == 16NomeArma "Granada";
        if(
Arma == 17NomeArma "Bomba de gбs";
        if(
Arma == 18NomeArma "Molotov";
        if(
Arma == 22NomeArma "Pistola 9mm";
        if(
Arma == 23NomeArma "Pistola com silenciador";
        if(
Arma == 24NomeArma "Desert Eagle";
        if(
Arma == 25NomeArma "ShotGun";
        if(
Arma == 26NomeArma "Sawnoff Shotgun";
        if(
Arma == 27NomeArma "Combat Shotgun";
        if(
Arma == 28NomeArma "Micro SMG";
        if(
Arma == 29NomeArma "MP5";
        if(
Arma == 30NomeArma "AK47";
        if(
Arma == 31NomeArma "M4";
        if(
Arma == 32NomeArma "Tec 9";
        if(
Arma == 33NomeArma "Country Rifle";
        if(
Arma == 34NomeArma "Sniper Rifle";
        if(
Arma == 35NomeArma "Bazooca RPG";
        if(
Arma == 36NomeArma "Bazooca Normal";
        if(
Arma == 37NomeArma "Lanзa Chamas";
        if(
Arma == 38NomeArma "Mini Gun";
        if(
Arma == 39NomeArma "C4";
        if(
Arma == 40NomeArma "Detonador";
        if(
Arma == 41NomeArma "Spray";
        if(
Arma == 42NomeArma "Extintor";
        if(
Arma == 43NomeArma "Oculos de visгo noturna";
        if(
Arma == 45NomeArma "Oculos de visгo de calor";
        if(
Arma == 46NomeArma "Paraquedas";
        
GivePlayerWeapon(IDArmaMunicao);
        
format(Stringsizeof(String), "{00BFFF}[SERVER]:{FFFFFF} O Administrador %s deu um(a) %s com %d Balas para %s"Nome(playerid), NomeArmaMunicaoNome(ID));
        
SendClientMessageToAll(-1String);
    }
    else
    {
        
SendClientMessage(playerid, -1"{FF0000}ERRO: Vocк nгo possui permissгo para utilizar este comando!");
    }
    return 
1;

Reply
#5

Quote:
Originally Posted by fxckshzt
Посмотреть сообщение
Vamos utilizar zcmd pra ficar mais fбcil?
Toma ae:


PHP код:
stock Nome(playerid)
{
    new 
pNome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridpNomesizeof(pNome));
    return 
pNome;
}
CMD:dararma(playeridparams[])
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
NomeArma[80];
        new 
IDString[128], ArmaMunicao;
        if(
sscanf(params"uii"IDArmaMunicao)) return SendClientMessage(playerid, -1"{FF0000}CORRETOR: Use /dararma [ID] [Arma] [Muniзгo]");
        if(!
IsPlayerConnected(ID)) return SendClientMessage(playerid, -1"{FF0000}ERRO: ID invalido");
        if(
Arma || Arma == 19 || Arma == 20 || Arma == 21 || Arma 46) return SendClientMessage(playerid, -1"{FF0000}ERRO: ID Invalido, use de 1 a 46");
        if(
Arma == 1NomeArma "Soco Inglкs";
        if(
Arma == 2NomeArma "Taco de Golf";
        if(
Arma == 3NomeArma "Cacetete";
        if(
Arma == 4NomeArma "Faca";
        if(
Arma == 5NomeArma "Taco de Baseball";
        if(
Arma == 6NomeArma "Pб";
        if(
Arma == 7NomeArma "Taco de Sinuca";
        if(
Arma == 8NomeArma "Kitana";
        if(
Arma == 9NomeArma "Serra elйtrica";
        if(
Arma == 10NomeArma "Pinto de Borracha";
        if(
Arma == 11NomeArma "Pinto roxo";
        if(
Arma == 12NomeArma "Vibrador";
        if(
Arma == 13NomeArma "Vibrador de Prata";
        if(
Arma == 14NomeArma "Flor";
        if(
Arma == 15NomeArma "Bengala";
        if(
Arma == 16NomeArma "Granada";
        if(
Arma == 17NomeArma "Bomba de gбs";
        if(
Arma == 18NomeArma "Molotov";
        if(
Arma == 22NomeArma "Pistola 9mm";
        if(
Arma == 23NomeArma "Pistola com silenciador";
        if(
Arma == 24NomeArma "Desert Eagle";
        if(
Arma == 25NomeArma "ShotGun";
        if(
Arma == 26NomeArma "Sawnoff Shotgun";
        if(
Arma == 27NomeArma "Combat Shotgun";
        if(
Arma == 28NomeArma "Micro SMG";
        if(
Arma == 29NomeArma "MP5";
        if(
Arma == 30NomeArma "AK47";
        if(
Arma == 31NomeArma "M4";
        if(
Arma == 32NomeArma "Tec 9";
        if(
Arma == 33NomeArma "Country Rifle";
        if(
Arma == 34NomeArma "Sniper Rifle";
        if(
Arma == 35NomeArma "Bazooca RPG";
        if(
Arma == 36NomeArma "Bazooca Normal";
        if(
Arma == 37NomeArma "Lanзa Chamas";
        if(
Arma == 38NomeArma "Mini Gun";
        if(
Arma == 39NomeArma "C4";
        if(
Arma == 40NomeArma "Detonador";
        if(
Arma == 41NomeArma "Spray";
        if(
Arma == 42NomeArma "Extintor";
        if(
Arma == 43NomeArma "Oculos de visгo noturna";
        if(
Arma == 45NomeArma "Oculos de visгo de calor";
        if(
Arma == 46NomeArma "Paraquedas";
        
GivePlayerWeapon(IDArmaMunicao);
        
format(Stringsizeof(String), "{00BFFF}[SERVER]:{FFFFFF} O Administrador %s deu um(a) %s com %d Balas para %s"Nome(playerid), NomeArmaMunicaoNome(ID));
        
SendClientMessageToAll(-1String);
    }
    else
    {
        
SendClientMessage(playerid, -1"{FF0000}ERRO: Vocк nгo possui permissгo para utilizar este comando!");
    }
    return 
1;

Nossa, tantos ifs, use switch.
PHP код:
    switch(Arma)
    {
        case 
1NomeArma "Soco Inglкs";
        case 
2NomeArma "Taco de Golf";
        ....
    } 
Reply
#6

Quote:
Originally Posted by IlanZ
Посмотреть сообщение
Nossa, tantos ifs, use switch.
PHP код:
    switch(Arma)
    {
        case 
1NomeArma "Soco Inglкs";
        case 
2NomeArma "Taco de Golf";
        ....
    } 
Caso switch:

PHP код:
CMD:dararma(playeridparams[])
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
NomeArma[90];
        new 
IDString[128], ArmaMunicao;
        if(
sscanf(params"uii"IDArmaMunicao)) return SendClientMessage(playerid, -1"{FF0000}CORRETOR: Use /dararma [ID] [Arma] [Muniзгo]");
        if(!
IsPlayerConnected(ID)) return SendClientMessage(playerid, -1"{FF0000}ERRO: ID invalido");
        if(
Arma || Arma == 19 || Arma == 20 || Arma == 21 || Arma 46) return SendClientMessage(playerid, -1"{FF0000}ERRO: ID Invalido, use de 1 a 47");
        switch(
Arma)
        {
            case 
1NomeArma "Soco Inglкs";
            case 
2NomeArma "Taco de Golf";
            case 
3NomeArma "Cacetete";
            case 
4NomeArma "Faca";
            case 
5NomeArma "Taco de Baseball";
            case 
6NomeArma "Pб";
            case 
7NomeArma "Taco de Sinuca";
            case 
8NomeArma "Kitana";
            case 
9NomeArma "Serra elйtrica";
            case 
10NomeArma "Pinto de Borracha";
            case 
11NomeArma "Pinto roxo";
            case 
12NomeArma "Vibrador";
            case 
13NomeArma "Vibrador de Prata";
            case 
14NomeArma "Flor";
            case 
15NomeArma "Bengala";
            case 
16NomeArma "Granada";
            case 
17NomeArma "Bomba de gбs";
            case 
18NomeArma "Molotov";
            case 
22NomeArma "Pistola 9mm";
            case 
23NomeArma "Pistola com silenciador";
            case 
24NomeArma "Desert Eagle";
            case 
25NomeArma "ShotGun";
            case 
26NomeArma "Sawnoff Shotgun";
            case 
27NomeArma "Combat Shotgun";
            case 
28NomeArma "Micro SMG";
            case 
29NomeArma "MP5";
            case 
30NomeArma "AK47";
            case 
31NomeArma "M4";
            case 
32NomeArma "Tec 9";
            case 
33NomeArma "Country Rifle";
            case 
34NomeArma "Sniper Rifle";
            case 
35NomeArma "Bazooca RPG";
            case 
36NomeArma "Bazooca Normal";
            case 
37NomeArma "Lanзa Chamas";
            case 
38NomeArma "Mini Gun";
            case 
39NomeArma "C4";
            case 
40NomeArma "Detonador";
            case 
41NomeArma "Spray";
            case 
45NomeArma "Extintor";
            case 
44NomeArma "Oculos de visгo noturna";
            case 
46NomeArma "Oculos de visгo de calor";
            case 
47NomeArma "Paraquedas";
        }
        
GivePlayerWeapon(IDArmaMunicao);
        
format(Stringsizeof(String), "{00BFFF}[SERVER]:{FFFFFF} O Administrador %s deu um(a) %s com %d Balas para %s"Nome(playerid), NomeArmaMunicaoNome(ID));
        
SendClientMessageToAll(-1String);
    }
    else
    {
        
SendClientMessage(playerid, -1"{FF0000}ERRO: Vocк nгo possui permissгo para utilizar este comando!");
    }
    return 
1;

@Edit:

Parece que o switch nгo vai no caso 45.
Quando coloco o caso 45 dб o erro:

Код:
C:\Users\Dell\Downloads\Servidores\Server de Aprendizagem\gamemodes\LOGIN.pwn(201) : error 040: duplicate "case" label (value 45)
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


1 Error.
@Edit/2:
Fiz uma Dialog com os ID das armas, de acordo com a locaзгo

PHP код:
CMD:idarmas(playerid)
{
        new 
dialogrande[1027];
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"1 - Soco Inglкs\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"2 - Taco de Golf\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"3 - Cacetete\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"4 - Faca\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"5 - Taco de Baseball\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"6 - Pб\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"7 - Taco de Sinuca\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"8 - Kitana\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"9 - Serra Elйtrica\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"10 - Pinto de borracha\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"11 - Pinto roxo\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"12 - Vibrador\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"13 - Vibrador de Prata\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"14 - Flor\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"15 - Bengala\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"16 - Granada\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"17 - Bomba de gбs\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"18 - Molotov\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"22 - Pistola 9mm\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"23 - Pistola com Silenciador\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"24 - Desert Eagle\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"25 - Shotgun\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"26 - Sawnoff Shotgun\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"27 - Combat Shotgun\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"28 - Micro SMG\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"29 - MP5\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"30 - AK-47\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"31 - M4-41\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"32 - Tec 9\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"33 - Country Rifle\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"34 - Sniper Rifle\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"35 - Bazuca RPG\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"36 - Bazuca Normal\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"37 - Lanзa Chamas\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"38 - Minigun\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"39 - C4\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"40 - Detonador\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"41 - Spray\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"44 - Extintor\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"45 - Уculos de visгo norturna\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"46 - Уculos de visгo de calor\n");
        
format(dialograndesizeof(dialogrande),"%s%s",dialogrande,"47 - Paraquedas\n");
        
ShowPlayerDialog(playerid,6DIALOG_STYLE_MSGBOX"- ID DAS ARMAS -"dialogrande"Perfeito!""");
    return 
1;

Reply
#7

https://sampwiki.blast.hk/wiki/GetWeaponName
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)