[Ajuda] Bug no comando
#1

Alguйm desbuga este comando aqui pra mim, o erro dele й que quando vou fazer /darcomb [id] [quantia], o combustivel ele vem pra mim e nгo pro id selecionado.

PHP код:
if(strcmp(cmd"/darcomb"true) == 0){
new 
tmp[256];
new 
msg[256];
new 
petroleo;
new 
plidcomb;
new 
aname[MAX_PLAYER_NAME];
GetPlayerName(playeridanameMAX_PLAYER_NAME);
format(filesizeof(file), PASTA_CONTASaname);
tmp strtok(cmdtextidx);
if(
dini_Int(file"Profissao") == Frentista || IsPlayerAdmin(playerid) || pAdmin[playerid] > 3){
if(!
strlen(tmp)){
SendClientMessage(playeridVermelho"[ERRO] Use: /darcomb [id] [litros]");
return 
1;
}
plid strval(tmp);
tmp strtok(cmdtextidx);
if(!
strlen(tmp)) {
SendClientMessage(playeridVermelho"[ERRO] Use: /darcomb [id] [litros]");
return 
1;
}
comb strval(tmp);
if(
comb 100 || comb <= 0){
SendClientMessage(playeridVermelho"[ERRO] Quantidade invбlida. Os valores devem ser de 1 а 100.");
return 
1;
}
if(
IsPlayerConnected(plid)){
new 
pname[MAX_PLAYER_NAME];
GetPlayerName(playeridpnameMAX_PLAYER_NAME);
format(file2sizeof(file2), PASTA_CONTASpname);
if((
dini_Int(file2"Combustivel") + comb) < 100){
format(msg,sizeof(msg),"(INFO) Um frentista abasteceu %d litros de combustнvel em seu tanque, totalizando %d litros",comb,petroleo);
SendClientMessage(plid,COLOR_GREEN,msg);
petroleo dini_Int(file2"Combustivel") + comb;
dini_IntSet(file2"Combustivel"petroleo);
SendClientMessage(plid,COLOR_GREEN,"(INFO) Agora nгo gaste atoa!")FOAgora nгo gaste atoa!");
SendClientMessage(playerid,COLOR_GREEN,"
(INFOCombustнvel fornecido.");
return 1;
}
else if((dini_Int(file2, "
Combustivel") + comb) >= 100){
dini_IntSet(file2, "
Combustivel", 100);
format(msg,sizeof(msg),"
(INFOUm Frentista completou seu tanquecolocando %d litros",petroleo);
petroleo = 100 - dini_Int(file2, "
Combustivel");
SendClientMessage(plid,COLOR_GREEN,msg);
SendClientMessage(plid,COLOR_GREEN,"
(INFOEconomize se nгo vai ficar a pй");
SendClientMessage(playerid,COLOR_GREEN,"
(INFOCombustivel fornecido.");
return 1;
}
}else{
SendClientMessage(playerid, Vermelho, "
[ERROJogador nгo conectado/logado.");
return 1;
}
}else{
SendClientMessage(playerid, Vermelho, "
[ERROVocк nгo tem permissгo!");
return 1;
}

Reply
#2

muda isso
pawn Код:
if(IsPlayerConnected(plid)){
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
format(file2, sizeof(file2), PASTA_CONTAS, pname);
para

pawn Код:
if(IsPlayerConnected(plid)){
new pname[MAX_PLAYER_NAME];
GetPlayerName(plid, pname, MAX_PLAYER_NAME);
format(file2, sizeof(file2), PASTA_CONTAS, pname);
Reply
#3

Por favor, altere a sua assinatura para "Editando o meu gamemode baixado da net".

pawn Код:
if(strcmp(cmd, "/darcomb", true) == 0)
{
    new tmp[256];
    new msg[256];
    new petroleo;
    new plid, comb;
    new aname[MAX_PLAYER_NAME];
   
    GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
    format(file, sizeof(file), PASTA_CONTAS, aname);
    tmp = strtok(cmdtext, idx);
    if(dini_Int(file, "Profissao") == Frentista || IsPlayerAdmin(playerid) || pAdmin[playerid] > 3)
    {
        plid = strval(tmp);
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp)) return SendClientMessage(playerid, Vermelho, "[ERRO] Use: /darcomb [id] [litros]");
        comb = strval(tmp);
        if(comb > 100 || comb <= 0) return SendClientMessage(playerid, Vermelho, "[ERRO] Quantidade invбlida. Os valores devem ser de 1 а 100.");
        if(IsPlayerConnected(plid))
        {
            new pname[MAX_PLAYER_NAME];
           
            GetPlayerName(plid, pname, MAX_PLAYER_NAME);
            format(file2, sizeof(file2), PASTA_CONTAS, pname);
            if((dini_Int(file2, "Combustivel") + comb) < 100)
            {
                format(msg,sizeof(msg),"(INFO) Um frentista abasteceu %d litros de combustнvel em seu tanque, totalizando %d litros",comb,petroleo);
                SendClientMessage(plid,COLOR_GREEN,msg);
                petroleo = dini_Int(file2, "Combustivel") + comb;
                dini_IntSet(file2, "Combustivel", petroleo);
                SendClientMessage(plid,COLOR_GREEN,"(INFO) Agora nгo gaste atoa!")FO) Agora nгo gaste atoa!");
                SendClientMessage(playerid,COLOR_GREEN,"
(INFO) Combustнvel fornecido.");
            }
            else if((dini_Int(file2, "
Combustivel") + comb) >= 100)
            {
                dini_IntSet(file2, "
Combustivel", 100);
                format(msg,sizeof(msg),"
(INFO) Um Frentista completou seu tanque, colocando %d litros",petroleo);
                petroleo = 100 - dini_Int(file2, "
Combustivel");
                SendClientMessage(plid,COLOR_GREEN,msg);
                SendClientMessage(plid,COLOR_GREEN,"
(INFO) Economize se nгo vai ficar a pй");
                SendClientMessage(playerid,COLOR_GREEN,"
(INFO) Combustivel fornecido.");
            }
        }
        else
        {
            SendClientMessage(playerid, Vermelho, "
[ERRO] Jogador nгo conectado/logado.");
        }
    }
    else
    {
        SendClientMessage(playerid, Vermelho, "
[ERRO] Vocк nгo tem permissгo!");
    }
}

// USAR ICMD OU ZCMD EM VEZ DE STRCMP
// USAR DOF2 EM VEZ DE DINI
// USAR SSCANF EM VEZ DE STRTOK
// OPTIMIZAR O CУDIGO
Reply
#4

Estou quase acabando meu GM que comeзei do 0, vem um ...... falar que peguei da Internet, kkkkkkk й de morrer de rir

______

@EDIT vlw PT, mas agora sу tem um problema, quando mostra totalizando %s litros, ele mostra 0 e nгo o tanto que eu dei
Reply
#5

Quote:
Originally Posted by ZaturN
Посмотреть сообщение
Estou quase acabando meu GM que comeзei do 0, vem um ...... falar que peguei da Internet, kkkkkkk й de morrer de rir
Mentir й feio cara GM do 0 ¬¬ , Tu nгo sabe nem indentar um gamemode muito menos criar um do 0.

@ Eu vi seus post muitas partes dele й de ajuda.
Reply
#6

Sim, porque eu fiz algumas cagadas, posso nгo saber identar mas sei criar
Reply
#7

todos nos aqui presentes sabemos que n e vc que esta a criar, atualmentes todos sabem que ja n se deve usar strtok esta ultrapassada, tem o sscanf para melhorar isso.

dini cara isso e passado, agr tens a DOF2, Y_ini, MySQL, SQLite...

e essa coisa que falta e simples, se foi vc mesmo que criou sabera resolver.
Reply
#8

Quote:
Originally Posted by ZaturN
Посмотреть сообщение
Sim, porque eu fiz algumas cagadas, posso nгo saber identar mas sei criar
Serб? , lhe dou um host com 3 meses mensais + 1 dominio com.br

Skype: petrick.schoba ou envie um email para Contato@vendashost.com

Com o ip do servidor, caso for verdade hoje й seu diade sorte meu caro.
Reply
#9

Mentir й feio...
Reply
#10

PT o GM ta em strtok, dini e etc, porque eu comecei a criar a mais o menos no comeзo de 2012, ai quando chegou no meio do ano, eu fiquei sem internet atй no meio do ano de 2013, mas continuei criando o GM, e nгo tinha como eu saber se tinha atualizaзхes, pode ver um tуpico meu ai, que eu falo que usava 0.3c, antigo pakas, e quis mudar pro 0.3x e nгo sabia que tinha atualizado.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)