[Pedido] Contagem
#1

Queria saber como faзo pra colocar uma contagem no comando tipo quando o player for usar o cmd na segunda vez mostrar quantos segundos falta para ele poder usar novamente o cmd,queria colocar pra eles so poder usar o cmd de 1 em 1 minuto.
Reply
#2

Inicio:
pawn Код:
new Contag;
forward Contagem();
No comando tu bota:
pawn Код:
if(Contag == 1)
{
     SendClientMessage(playerid,COLOR_GRAD5,"Espere 10 Segundos!"); //exemplo
     return 1;
}
//final do comando
Contag = 1;
SetTimer("Contagem",5000,0);
Final GM:
pawn Код:
public Contagem(){ Contag = 0; }
fiz na pressa.
To saindo aqui, se nгo der quando eu voltar ajudo.
Reply
#3

pawn Код:
new cmdbloqueado[MAX_PLAYERS];

forward BloqComando();

public BloqComando();
{
    cmdbloqueado[playerid] = 0;
    return 1;
}


CMD:meucomando(playerid, params[])
{
    if(cmdbloqueado[playerid] == 0
    {
        // funзгo
       
        cmdbloqueado = 1;
        SetTimer("BloqComando", 60000, false);
    }
    else
    {
        // se estiver bloqueado
    }
    return 1;
}
Reply
#4

Queria saber como coloca pra quando tiver bloqueado o cmd contar os segundos que falta pra ele ser liberado.
Reply
#5

Desculpa, o samp repostou duas vezes .
Reply
#6

Tente , eu nгo testei, mais tenta:

pawn Код:
new blockcmd[MAX_PLAYERS];
pawn Код:
CMD:comando(playerid, params[])
{
    if (blockcmd[playerid] == 1)
    {
        SetTimer("cmdblock", 100000, false);
        SendClientMessage(playerid, 0xFF0000FF, "Espere um tempo, depois volte a usar comandos");
        for(new Lp; Lp < 60; Lp++)
        {
            SendClientMessage(playerid, Cor, "%i", Lp);
        }
    }
    //RESTO-DO-COMANDO
    blockcmd[playerid] = 1;
    return 1;
}
pawn Код:
//FINAL- do mode
forward cmdblock();
public cmdblock()
{
    //cmdblock[playerid] = 0;
    for(new i = 0; i < MAX_PLAYERS; i++) {
    SendClientMessage(i, Cor, "Comandos desbloqueados ");
    }
    return 1;
}
Reply
#7

Que isso raio ? '-'

-

Tenta assim, nгo garanto nada u.u Esse vai enviar quantos segundos faltam para poder usar o comando...

pawn Код:
new TempoRestante[MAX_PLAYERS];
new Str[256];
new TimerComando;

CMD:testecmd(playerid) // troque o nome para o comando desejado
{
    if(TempoRestante[playerid] >= 1)
    {
        format(Str, 256, "Ainda faltam %i segundos para vocк poder usar o comando.", TempoRestante[playerid]);
        SendClientMessage(playerid, -1, Str);
        return 0;
    }
    // Demais funзхes
   
    TempoRestante[playerid] = 60;
    TimerComando = SetTimerEx("TempoRestanteMenos", 1000, true, "i", playerid);
    return 1;
}

forward TempoRestanteMenos(playerid);
public TempoRestanteMenso(playerid)
{
    if(TempoRestante[playerid] == 0)
    {
        KillTimer(TimerComando);
        return 0;
    }
    TempoRestante[playerid]--;
    return 1;
}
Reply
#8

@OFF Shadow eu sou novato , pelo menos tentei ajudar ^^ .
Reply
#9

Jб que estгo a usar ZCMD , seria mais fбcil utilizar a callback "OnPlayerCommandPerformed".
PHP код:
new blockcmd[MAX_PLAYERS];

public 
OnPlayerCommandPerformed(playeridcmdtext[], success)
{
if(
blockcmd[playerid] == 1) return SendClientMessage(playerid,-1,"Nгo floode comandos !");
if(
sucess)
{
blockcmd[playerid] = 1;
SetTimerEx("DesbloqCMD",5000,false,"i",playerid);
}
return 
1;
}


forward DesbloqCMD(playerid);
public 
DesbloqCMD(playerid)
{
blockcmd[playerid] = 0;
return 
1;

Acho que assim funcionaria
Obs: desculpe pela identaзгo , pois eu fiz aqui na box do fуrum
Reply
#10

Quote:
Originally Posted by xxRaioxx
Посмотреть сообщение
@OFF Shadow eu sou novato , pelo menos tentei ajudar ^^ .
Nгo, de boa

Quote:
Originally Posted by darkxdll
Посмотреть сообщение
Jб que estгo a usar ZCMD , seria mais fбcil utilizar a callback "OnPlayerCommandPerformed".
PHP код:
new blockcmd[MAX_PLAYERS];
public 
OnPlayerCommandPerformed(playeridcmdtext[], success)
{
if(
blockcmd[playerid] == 1) return SendClientMessage(playerid,-1,"Nгo floode comandos !");
if(
sucess)
{
blockcmd[playerid] = 1;
SetTimerEx("DesbloqCMD",5000,false,"i",playerid);
}
return 
1;
}
forward DesbloqCMD(playerid);
public 
DesbloqCMD(playerid)
{
blockcmd[playerid] = 0;
return 
1;

Acho que assim funcionaria
Obs: desculpe pela identaзгo , pois eu fiz aqui na box do fуrum
Dark, acho que ele quer deixar sу um comando com timer, mas tambйm nгo pude ter certeza, enfim.

@OFF

Ta jogando no BPF ? Vi um cara com um nick parecido com o seu.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)