[Ajuda] Comando /bilhete ajudem-me.
#1

Код:
CMD:bilhete(playerid, params[])
{
	new bool:contar = false;
	for(new b = 1; b < MAX_BILHETES; b++)
	{
		if(Bilhetes[playerid][b] == strval(params)) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб tem um bilhete com esse nъmero.");
		if(Bilhetes[playerid][b] < 1)
	    {
			if(isnull(params) || !strval(params)) return SendClientMessage(playerid, COR_AMARELO, "Use: /Bilhete [Numero (Nгo vale o 0)]");
			if(GetPlayerMoney(playerid) < PRECO_BILHETE) return SendClientMessage(playerid, COR_AMARELO, "Vocк nгo tem dinheiro suficiente.");
			if(strval(params) > MAIOR_NUMERO) return SendClientMessage(playerid, COR_AMARELO, "Bilhete invalido, escolha um numero menor.");
			Bilhetes[playerid][b] = strval(params);
			new string[90];
			format(string, sizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d.", strval(params), PRECO_BILHETE);
			SendClientMessage(playerid, COR_VERDE, string);
			GivePlayerMoney(playerid, -PRECO_BILHETE);
			Premio += PRECO_BILHETE;
			SalvarPremio();
			SalvarBilhetes(playerid);
			contar = true;
			break;
		}
	}
	if(contar == false) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб comprou o mбximo de bilhetes.");
	return 1;
}
Eu queria mudar esse comando para a public OnPlayerCommandText me ajudem...
Reply
#2

Ninguem
Reply
#3

Nao sou bom com strcmp curto zcmd sscanf ...
Mas ve se funfa .

PHP код:
    if (strcmp("/bilhete"cmdtexttrue10) == 0)
    {
       new 
bool:contar falsebilhetecompra[10];
       for(new 
1MAX_BILHETESb++)
       {
           if(
Bilhetes[playerid][b] == strval(bilhetecompra)) return SendClientMessage(playeridCOR_AMARELO"Vocк jб tem um bilhete com esse nъmero.");
           if(
Bilhetes[playerid][b] < 1)
           {
               if(
isnull(bilhetecompra) || !strval(bilhetecompra)) return SendClientMessage(playeridCOR_AMARELO"Use: /Bilhete [Numero (Nгo vale o 0)]");
               if(
GetPlayerMoney(playerid) < PRECO_BILHETE) return SendClientMessage(playeridCOR_AMARELO"Vocк nгo tem dinheiro suficiente.");
               if(
strval(bilhetecompra) > MAIOR_NUMERO) return SendClientMessage(playeridCOR_AMARELO"Bilhete invalido, escolha um numero menor.");
               
Bilhetes[playerid][b] = strval(bilhetecompra);
                new 
string[90];
               
format(stringsizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d."strval(bilhetecompra), PRECO_BILHETE);
               
SendClientMessage(playeridCOR_VERDEstring);
               
GivePlayerMoney(playerid, -PRECO_BILHETE);
               
Premio += PRECO_BILHETE;
               
SalvarPremio();
               
SalvarBilhetes(playerid);
               
contar true;
               break;
          }
       }
       if(
contar == false) return SendClientMessage(playeridCOR_AMARELO"Vocк jб comprou o mбximo de bilhetes.");
       return 
1;
    } 

PS: Troquei a define params por bilhetecompra
Reply
#4

Quote:
Originally Posted by Don_Speed
Посмотреть сообщение
Nao sou bom com strcmp curto zcmd sscanf ...
Mas ve se funfa .

PHP код:
    if (strcmp("/bilhete"cmdtexttrue10) == 0)
    {
       new 
bool:contar falsebilhetecompra[10];
       for(new 
1MAX_BILHETESb++)
       {
           if(
Bilhetes[playerid][b] == strval(bilhetecompra)) return SendClientMessage(playeridCOR_AMARELO"Vocк jб tem um bilhete com esse nъmero.");
           if(
Bilhetes[playerid][b] < 1)
           {
               if(
isnull(bilhetecompra) || !strval(bilhetecompra)) return SendClientMessage(playeridCOR_AMARELO"Use: /Bilhete [Numero (Nгo vale o 0)]");
               if(
GetPlayerMoney(playerid) < PRECO_BILHETE) return SendClientMessage(playeridCOR_AMARELO"Vocк nгo tem dinheiro suficiente.");
               if(
strval(bilhetecompra) > MAIOR_NUMERO) return SendClientMessage(playeridCOR_AMARELO"Bilhete invalido, escolha um numero menor.");
               
Bilhetes[playerid][b] = strval(bilhetecompra);
                new 
string[90];
               
format(stringsizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d."strval(bilhetecompra), PRECO_BILHETE);
               
SendClientMessage(playeridCOR_VERDEstring);
               
GivePlayerMoney(playerid, -PRECO_BILHETE);
               
Premio += PRECO_BILHETE;
               
SalvarPremio();
               
SalvarBilhetes(playerid);
               
contar true;
               break;
          }
       }
       if(
contar == false) return SendClientMessage(playeridCOR_AMARELO"Vocк jб comprou o mбximo de bilhetes.");
       return 
1;
    } 

PS: Troquei a define params por bilhetecompra
Код:
C:\Users\NETO\Documents\GTA SERVE\GTA SERVE\gamemodes\GM.pwn(4952) : error 017: undefined symbol "isnull"
Deu esse erro ae.
Reply
#5

Ninguem novamente ta dificil
Reply
#6

aconselho vc a deichar como ta usa zcmd ou SSI deve da
Reply
#7

Quote:
Originally Posted by rogerioexper
Посмотреть сообщение
aconselho vc a deichar como ta usa zcmd ou SSI deve da
Mais ai ele iria bugar que eu uso strcmp ...
Reply
#8

Faz tempo que nгo uso strtok, mas... Tente aн:
Код:
if(strcmp(cmd,"/Bilhete", true) == 0)
{
	new bool:contar = false;
	tmp = strtok(cmdtext, idx);
	for(new b = 1; b < MAX_BILHETES; b++)
	{
		if(Bilhetes[playerid][b] == strval(tmp)) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб tem um bilhete com esse nъmero.");
		if(Bilhetes[playerid][b] < 1)
	    {
			if(!strlen(tmp)) return SendClientMessage(playerid, COR_AMARELO, "Use: /Bilhete [Numero (Nгo vale o 0)]");
			new b = strval(tmp);
			if(GetPlayerMoney(playerid) < PRECO_BILHETE) return SendClientMessage(playerid, COR_AMARELO, "Vocк nгo tem dinheiro suficiente.");
			if(b > MAIOR_NUMERO) return SendClientMessage(playerid, COR_AMARELO, "Bilhete invalido, escolha um numero menor.");
			Bilhetes[playerid][b] = b;
			new string[90];
			format(string, sizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d.", b, PRECO_BILHETE);
			SendClientMessage(playerid, COR_VERDE, string);
			GivePlayerMoney(playerid, -PRECO_BILHETE);
			Premio += PRECO_BILHETE;
			SalvarPremio();
			SalvarBilhetes(playerid);
			contar = true;
			break;
		}
	}
	if(contar == false) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб comprou o mбximo de bilhetes.");
	return 1;
}
Reply
#9

Quote:
Originally Posted by humildadeforever
Посмотреть сообщение
Faz tempo que nгo uso strtok, mas... Tente aн:
Код:
if(strcmp(cmd,"/Bilhete", true) == 0)
{
	new bool:contar = false;
	tmp = strtok(cmdtext, idx);
	for(new b = 1; b < MAX_BILHETES; b++)
	{
		if(Bilhetes[playerid][b] == strval(tmp)) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб tem um bilhete com esse nъmero.");
		if(Bilhetes[playerid][b] < 1)
	    {
			if(!strlen(tmp)) return SendClientMessage(playerid, COR_AMARELO, "Use: /Bilhete [Numero (Nгo vale o 0)]");
			new b = strval(tmp);
			if(GetPlayerMoney(playerid) < PRECO_BILHETE) return SendClientMessage(playerid, COR_AMARELO, "Vocк nгo tem dinheiro suficiente.");
			if(b > MAIOR_NUMERO) return SendClientMessage(playerid, COR_AMARELO, "Bilhete invalido, escolha um numero menor.");
			Bilhetes[playerid][b] = b;
			new string[90];
			format(string, sizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d.", b, PRECO_BILHETE);
			SendClientMessage(playerid, COR_VERDE, string);
			GivePlayerMoney(playerid, -PRECO_BILHETE);
			Premio += PRECO_BILHETE;
			SalvarPremio();
			SalvarBilhetes(playerid);
			contar = true;
			break;
		}
	}
	if(contar == false) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб comprou o mбximo de bilhetes.");
	return 1;
}
Код:
warning 219: local variable "b" shadows a variable at a preceding level
deu isso aqui '-'
Reply
#10

troca todos os b por outra coisa, tipo bnumero
й que eu esqueci que tem "b" no loop xD
Espera ai que eu arrumo pra voce


#Edit
tenta
pawn Код:
if(strcmp(cmd,"/Bilhete", true) == 0)
{
    new bool:contar = false;
    tmp = strtok(cmdtext, idx);
    for(new b = 1; b < MAX_BILHETES; b++)
    {
        if(Bilhetes[playerid][b] == strval(tmp)) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб tem um bilhete com esse nъmero.");
        if(Bilhetes[playerid][b] < 1)
        {
            if(!strlen(tmp)) return SendClientMessage(playerid, COR_AMARELO, "Use: /Bilhete [Numero (Nгo vale o 0)]");
            new bn = strval(tmp);
            if(GetPlayerMoney(playerid) < PRECO_BILHETE) return SendClientMessage(playerid, COR_AMARELO, "Vocк nгo tem dinheiro suficiente.");
            if(bn > MAIOR_NUMERO) return SendClientMessage(playerid, COR_AMARELO, "Bilhete invalido, escolha um numero menor.");
            Bilhetes[playerid][b] = bn;
            new string[90];
            format(string, sizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d.", b, PRECO_BILHETE);
            SendClientMessage(playerid, COR_VERDE, string);
            GivePlayerMoney(playerid, -PRECO_BILHETE);
            Premio += PRECO_BILHETE;
            SalvarPremio();
            SalvarBilhetes(playerid);
            contar = true;
            break;
        }
    }
    if(contar == false) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб comprou o mбximo de bilhetes.");
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)