[Ajuda] Alguma Funзгo assim
#1

Galera, to fazendo um FS, mas eu preciso de uma funзгo parecida com o "SetTimer", por exemplo, o settimer, realiza uma aзгo apуs algum determinado tempo, eu to precisando de algo que realiza durante o determinado tempo, nгo sei se existe, dei uma vasta olhada na wiki e nгo to achando nada, desde ja grato.
Reply
#2

Nгo entendi oque vocк quer, pode explicar melhor ?
Reply
#3

posso, vamos la, um exemplo de SetTimer:
pawn Код:
public OnGameModeInit()
{
    print("Testando.");
    SetTimer("message", 10000, false); // O 10000 define 10 segundos, й 10000 milesimos
}
 
public message()
{
    print("10 segundos se passou."); // aqui ele realizou a funзгo apуs um segundo
}
como viu o settimer realiza uma aзгo apуs este segundo, eu queria algo do tipo, durante esses 10 segundo, se o player realiza-se alguma coisa, tal funзгo aconteceria, por exemplo, eu ganhei $100 e durante esses 10 Segundos eu ganho mais dinheiro, entгo isso iria retornar em outra funзгo, mas se eu ganha-se mais dinheiro depois dos 10 segundos, nгo valeria, й sу uma suposiзгo esse troзo do dinheiro, pq eu ja criei a variavel aqui, sу quero saber se existe uma funзгo assim
Reply
#4

Olha essa funзгo que se usa em /count, ele й executado durante certo tempo. Basta usar a mesma lуgica.
pawn Код:
forward Contar(Contagem);
public Contar(Contagem)
{
    new VBString[3];
    format(VBString, 3, "%d",Contagem);
    if(Contagem > 0)
    {
        GameTextForAll(VBString, 700, 5);
        SetTimerEx("Contar",1000, false, "i", Contagem-1);
    }
    else GameTextForAll("Valendo !", 1000, 5);
}
Reply
#5

Faзa um Timer com repetiзгo e dк uma var a ele para no final usar o KillTimer. Caso queira dar um limite nas repetiзхes use uma var dentro da callback.
Veja se entende :

Tu cria o timer de 1 segundo por delay com a repetiзгo "true", agora na callback chamada pelo timer use a var, aumentado o valor dela, e quando a var estiver no valor "limite" vocк irб destruir/"matar" o Timer (KillTimer)


Ok ok, vou dar um exemplo em code.
pawn Код:
new vartimer;
new varcontagem = 0;

public OnGameModeInit()
{
    print("Testando.");
    vartimer = SetTimer("message", 1000, true); // este repete de um em um segundo.
}

forward message();
public message()
{
    if(varcontagem == 10) return print("O timer chegou ao limite.", varcontagem = 0, KillTimer(vartimer); // 10 й o limite da repetiзгo

    varcontagem++
    printf("O timer estб repetindo pela %d vez.", varcontagem);
}
i hope that helped you !
Reply
#6

dragon, й mais ou menos isso que eu quero, obrigado, vou fazer algumas modificaзхes
Reply
#7

( gettimer || getickcount || tickcount ) + ( onplayerupdate || setttimerex || settimerex )
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)