29.11.2010, 15:35
keller012, troquei algumas variбveis do seu comando e o testei. Cheguei б conclusгo que o Bug й na prуpria funзгo strtok. Dк uma olhada em zcmd que talvez essa funзгo nгo tenha esse Bug.
Vocк postou apenas uma parte do seu comando, tive que montar o comeзo dele vendo um GodFather, entгo poste sempre o comando do comeзo ao fim.
Nгo consegui arrumar seu comando perfeitamente, cada vez que se restringe um nъmero como o que vocк citou algum outro mais б frente й liberado. Mas eliminei parte do seu problema, alйm de ter dado uma identada. Espero ter ajudado
Vocк postou apenas uma parte do seu comando, tive que montar o comeзo dele vendo um GodFather, entгo poste sempre o comando do comeзo ao fim.
Nгo consegui arrumar seu comando perfeitamente, cada vez que se restringe um nъmero como o que vocк citou algum outro mais б frente й liberado. Mas eliminei parte do seu problema, alйm de ter dado uma identada. Espero ter ajudado
pawn Код:
if(strcmp(cmd, "/pegardrogas", true) == 0)
{
if (PlayerInfo[playerid][pMember] == 14 || PlayerInfo[playerid][pLeader] == 14)
{
if(!bancoon2)
{
if (PlayerToPoint(3, playerid,687.7962,-1286.3744,13.5738))
{
new quantia;
tmp = strtok(cmdtext, idx);
quantia = strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /pegargrana [quantia]");
return 1;
}
if(quantia == 999999999999 && quantia <= 999999999999999)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode pegar mais de 40 unidades de maconha");
return 1;
}
if(quantia == 999999999999 || quantia == 999999999999999 || quantia == 9999999999999999 || quantia == 99999999999999999 || quantia == 999999999999999999)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode pegar mais de 40 unidades de maconha");
return 1;
}
if(quantia == 999999999999999)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode pegar mais de 40 unidades de maconha");
return 1;
}
if(quantia > 40)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode pegar mais de 40 unidades de maconha");
return 1;
}
if(quantia > sysyak[QuantMac2])
{
SendClientMessage(playerid, VERMELHO, "O Banco nгo tem toda essa quantia!");
return 1;
}
if (tdrogas2[playerid] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE,"Aguarde 12 horas para usar o comando novamente");
return 1;
}
if(PlayerInfo[playerid][pDrugs] >= 99)
{
format(string, sizeof(string), " Voce ainda tem %d g de drogas,Venda tudo primeiro !", PlayerInfo[playerid][pDrugs]);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
}
PlayerInfo[playerid][pDrugs] += quantia;
sysyak[QuantMac2] -= quantia;
SetTimerEx("tempodrogas2",4320000,0,"i",playerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "** (( %s pegou %d gramas de drogas do banco )) **", sendername, quantia);
SendFamilyMessage(14, 0x7BDDA5AA, string);
SaveMaconhaYak();
tdrogas2[playerid] = 1;
}
}
}
return 1;
}