SA-MP Forums Archive
[Ajuda] Tempo do comando - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Tempo do comando (/showthread.php?tid=663724)



Tempo do comando - BrunoSayden177 - 09.02.2019

Boa tarde, queria saber porque o meu comando: "/esmola" nгo funciona? quando eu tento usar ele, fala que eu so posso usar ele a cada 3 Segundos. Fico grato a quem ajudar!

PHP код:
CMD:esmola(playeridparams[])
    {
        if(
IsPlayerConnected(playerid))
        {
            if(
PlayerInfo[playerid][pEmprego] != 5)
            {
                
SendClientMessage(playeridCOR_GREY"Vocк nгo й Mendigo!");
                return 
1;
            }
            new 
money;
            if(
sscanf(params"ud"sscanfidmoney))
            {
                
SendClientMessage(playeridCOR_GRAD2"{0099ff}Ч{ffffff} USE: /esmola [id] [preзo]");
                return 
1;
            }
            if(
GetTickCount() - TempoEsmola[playerid] < 3000)
            {
                
SendClientMessage(playeridCOR_GREY"Vocк sу pode usar este comando a cada 3 segundos.");
                return 
1;
            }
            if(
money || money 50000) { SendClientMessage(playeridCOR_GREY"O Valor da sua esmola deve ser entre R$1000 e R$50000!"); return 1; }
            if(
IsPlayerConnected(sscanfid))
            {
                if(
sscanfid != INVALID_PLAYER_ID)
                {
                    if(
ProxDetectorS(8.0playeridsscanfid))
                    {
                        if(
sscanfid == playerid)
                        {
                            
SendClientMessage(playeridCOR_GREY"Vocк nгo pode usar este comando em si mesmo!");
                            return 
1;
                        }
                        
GetPlayerName(sscanfidgiveplayerZCMDsizeof(giveplayerZCMD));
                        
GetPlayerName(playeridsendernamesizeof(sendername));
                        
format(stringZCMDsizeof(stringZCMD), "* Vocк pediu ao %s uma esmola de R$%d."giveplayerZCMDmoney);
                        
SendClientMessage(playeridCOR_LIGHTBLUEstringZCMD);
                        
format(stringZCMDsizeof(stringZCMD), "* Mendigo %s perguntou se vocк pode dar R$[%d] para ele... /pagar [quantidade] e ajuda o novato"sendernamemoney);
                        
SendClientMessage(sscanfidCOR_LIGHTBLUEstringZCMD);
                        
MendigoOffer[sscanfid] = playerid;
                        
MendigoPrice[sscanfid] = money;
                        
TempoEsmola[playerid] = GetTickCount();
                    }
                    else
                    {
                        
SendClientMessage(playeridCOR_GREY"O Jogador nгo estб perto de vocк !");
                    }
                }
            }
            else
            {
                
SendClientMessage(playeridCOR_GREY"O Jogador estб Offline!");
            }
        }
        return 
1;
    } 



Re: Tempo do comando - DanielMatrix - 09.02.2019

PHP код:
if(GetTickCount() - TempoEsmola[playerid] < 3000
            { 
                
SendClientMessage(playeridCOR_GREY"Vocк sу pode usar este comando a cada 3 segundos."); 
                return 
1
            } 
remova essa parte acima


Re: Tempo do comando - BrunoSayden177 - 09.02.2019

Quote:
Originally Posted by DanielMatrix
Посмотреть сообщение
PHP код:
if(GetTickCount() - TempoEsmola[playerid] < 3000
            { 
                
SendClientMessage(playeridCOR_GREY"Vocк sу pode usar este comando a cada 3 segundos."); 
                return 
1
            } 
remova essa parte acima
Isso eu sei pow, so que eu quero que de pra usar o comando de 3 em 3 segs, porem quando tento usar ele, mesmo sem ter usado anteriormente, ele fala que so posso usar em cada 3 segundos, saca?


Re: Tempo do comando - DanielMatrix - 09.02.2019

PHP код:
CMD:esmola(playeridparams[]) {
    new 
Dinheiro,Userid,String[200],xNome[MAX_PLAYER_NAME];
    if(
sscanf(params"ud"UseridDinheiro)) return SendClientMessage(playeridCOR_GRAD2"{0099ff}USE: /esmola {ffffff}[ID/NOME] [ESMOLA]");
    if(!
IsPlayerConnected(Userid)) return false;
    if(
Userid == playerid) return SendClientMessage(playeridCOR_GREY"Vocк nгo pode usar este comando em si mesmo!"); 
    if(
Dinheiro || Dinheiro 50000) return SendClientMessage(playeridCOR_GREY"O Valor da sua esmola deve ser entre R$1000 e R$50000!"); 
    if(!
ProxDetectorS(8.0playeridUserid)) return false;
    
GetPlayerName(UseridxNomesizeof(xNome)); 
    
format(Stringsizeof(String), "* Vocк pediu ao %s uma esmola de R$%d."xNomeDinheiro); 
    
SendClientMessage(playeridCOR_LIGHTBLUEString); 
    
format(Stringsizeof(String), "* Mendigo %s perguntou se vocк pode dar R$[%d] para ele... /pagar [quantidade] e ajuda o novato"xNomeDinheiro); 
    
SendClientMessage(UseridCOR_LIGHTBLUEString); 
    
    return 
true;




Re: Tempo do comando - BrunoSayden177 - 10.02.2019

Quote:
Originally Posted by DanielMatrix
Посмотреть сообщение
PHP код:
CMD:esmola(playeridparams[]) {
    new 
Dinheiro,Userid,String[200],xNome[MAX_PLAYER_NAME];
    if(
sscanf(params"ud"UseridDinheiro)) return SendClientMessage(playeridCOR_GRAD2"{0099ff}USE: /esmola {ffffff}[ID/NOME] [ESMOLA]");
    if(!
IsPlayerConnected(Userid)) return false;
    if(
Userid == playerid) return SendClientMessage(playeridCOR_GREY"Vocк nгo pode usar este comando em si mesmo!"); 
    if(
Dinheiro || Dinheiro 50000) return SendClientMessage(playeridCOR_GREY"O Valor da sua esmola deve ser entre R$1000 e R$50000!"); 
    if(!
ProxDetectorS(8.0playeridUserid)) return false;
    
GetPlayerName(UseridxNomesizeof(xNome)); 
    
format(Stringsizeof(String), "* Vocк pediu ao %s uma esmola de R$%d."xNomeDinheiro); 
    
SendClientMessage(playeridCOR_LIGHTBLUEString); 
    
format(Stringsizeof(String), "* Mendigo %s perguntou se vocк pode dar R$[%d] para ele... /pagar [quantidade] e ajuda o novato"xNomeDinheiro); 
    
SendClientMessage(UseridCOR_LIGHTBLUEString); 
    
    return 
true;

Cara, Eu sei montar um comando, so quero como faz pra poder usar somente o comando em 3 em 3 segundos usando o GetTickCount


Re: Tempo do comando - NWDMadara - 10.02.2019

Ao usar o comando: TempoEsmola[playerid] = gettime() + 3;

if(TempoEsmola[playerid] > gettime()) return SendClientMessage(playerid, COLOR_ERRO, "[ x ] Vocк sу poderб usar este comando novamente daqui a 3 segundos!");


Re: Tempo do comando - BrunoSayden177 - 10.02.2019

Quote:
Originally Posted by NWDMadara
Посмотреть сообщение
Ao usar o comando: TempoEsmola[playerid] = gettime() + 3;

if(TempoEsmola[playerid] > gettime()) return SendClientMessage(playerid, COLOR_ERRO, "[ x ] Vocк sу poderб usar este comando novamente daqui a 3 segundos!");
Nгo funcionou..


Re: Tempo do comando - NWDMadara - 10.02.2019

Tem certeza? Nгo estб usando o comando apуs se passarem os 3 segundos?

https://sampwiki.blast.hk/wiki/Gettime


Re: Tempo do comando - BrunoSayden177 - 10.02.2019

Quote:
Originally Posted by NWDMadara
Посмотреть сообщение
Tem certeza? Nгo estб usando o comando apуs se passarem os 3 segundos?

https://sampwiki.blast.hk/wiki/Gettime
Nгo estб funcionando men.


Re: Tempo do comando - DanielMatrix - 10.02.2019

Ah sim entendi seu problema agora, nesse caso vocк terб que manipular variбveis .