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; }
if (strcmp("/bilhete", cmdtext, true, 10) == 0)
{
new bool:contar = false, bilhetecompra[10];
for(new b = 1; b < MAX_BILHETES; b++)
{
if(Bilhetes[playerid][b] == strval(bilhetecompra)) return SendClientMessage(playerid, COR_AMARELO, "Vocк jб tem um bilhete com esse nъmero.");
if(Bilhetes[playerid][b] < 1)
{
if(isnull(bilhetecompra) || !strval(bilhetecompra)) 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(bilhetecompra) > MAIOR_NUMERO) return SendClientMessage(playerid, COR_AMARELO, "Bilhete invalido, escolha um numero menor.");
Bilhetes[playerid][b] = strval(bilhetecompra);
new string[90];
format(string, sizeof(string),"Vocк comprou o bilhete nъmero %d por R$%d.", strval(bilhetecompra), 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;
}
Nao sou bom com strcmp curto zcmd sscanf ...
Mas ve se funfa . PHP код:
PS: Troquei a define params por bilhetecompra |
C:\Users\NETO\Documents\GTA SERVE\GTA SERVE\gamemodes\GM.pwn(4952) : error 017: undefined symbol "isnull"
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; }
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
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;
}