Portal SAMP
[Ajuda] Ajuda em cooldown - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Ajuda em cooldown (/showthread.php?tid=4871)



Ajuda em cooldown - LostZinqs - 05/09/2024

Boa noite amigos, voces poderiam a me ensinar a botar cooldown em um comando? tipo, se o player digitou o comando ele so pode digitar novamente em 5 segundos, alguem poderia me ensinar?


RE: Ajuda em cooldown - White_Blue - 05/09/2024

Acredito que esteja procurando pela função GetTickCount.


RE: Ajuda em cooldown - xbruno1000x - 05/09/2024

Deverá utilizar a função GetTickCount(), segue um exemplo disso:
Código:
    if(newkeys & KEY_SPRINT)
    {
        if(GetTickCount() >  GetPVarInt(playerid, "varTempo"))
            return SendClientMessage(playerid, -1, "Erro: Você não esperou tempo suficiente para realizar essa ação novamente");
            
        //Codigos aqui
        SetPVarInt(playerid, "varTempo", GetTickCount()+1500); //Use GetTickCount() + Tempo em milissegundos. Esse valor será usado para comparar se já se passou o tempo.
    }
GetTickCount é uma função que retorna um valor inteiro em milissegundos. Atualiza o valor a cada milissegundo que se passa, então é ideal para esse tipo de comparação.

Também deixo aqui o link para a documentação:
https://www.open.mp/pt-BR/docs/scripting/functions/GetTickCount