[Tutorial] SetTimer
#2

Simples, mas ъtil...

Quem lhe dera se existisse um quando eu estava comeзando a scriptar...

@edit

Vou complementar seu tutorial, estб faltando exemplos e aplicaзхes de timers.


Vocк pode utilisar um timer para fazer um portгo que abre e apуs um tempo ele fecha sozinho.
Exemplo:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/abrir", cmdtext, true, 10) == 0)
    {
        MoveObject(ID_DO_OBJETO, Float:X,Float:Y,Float:Z, Float:Velocidade, RotX, RotY, RotZ); // Posiзгo do portгo aberto
        SetTimer("Fechar", 8000, false);// False pois nгo queremos que este timer fique repetindo constatemente. O portгo chamara um timer em 8 segundos.
        return 1;
    }
    return 0;
}
forward Fechar();
public Fechar()
{
    MoveObject(ID_DO_OBJETO, Float:X,Float:Y,Float:Z, Float:Velocidade, RotX, RotY, RotZ);// Posiзгo do portгo fechado.
    printf("O portгo foi fechado com sucesso!");
    return 1;
}
Tambйm podemos usar um timer, para fazer uma contagem!

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/contar", cmdtext, true, 10) == 0)
    {
        printf("3");
        SetTimer("contar2",1000, false);// False pois nгo queremos que este timer fique repetindo constatemente.
        return 1;
    }
    return 0;
}

forward contar2();
public contar2()
{
    printf("2");
    SetTimer("contar1",1000, false); // Chamarб o timer congar1
    return 1;
}
forward contar1();
public contar1()
{
    printf("1");
    SetTimer("contargo", 1000, false); // Chamarб o timer
    return 1;
}
forward contargo();
public contargo()
{
    printf("Go");
    return 1;
}
Existe uma funзгo de SetTimers que й expecнfica para um certo player.
Tendeu nгo? Por exemplo: O player digita /peidei e em 5 segundos aparecerб uma para o player: Vocк peidou e jб estб fedendo.

Um exemplo de SetTimerEx:
pawn Код:
new peidando; // Vamos definir o timer.
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/peidei", cmdtext, true, 10) == 0)  // Comando
    {
        peidando = SetTimerEx("CarregarPeido", 5000, false, "i", playerid); //Timer em SetTimerEx...
        return 1;
    }
    return 0;
}


forward CarregarPeido(playerid);
public CarregarPeido(playerid)
{
    SendClientMessage(playerid, -1, "Vocк peidou e jб estб fedendo!");
    return 1;
}
Sгo sу alguns exemplos para ajudar a compreensгo do tutorial

Claro que existem funзхes mais otimizadas para fazer os meus exemplos acima, mas eu fiz do geito bem simples que й para a compreensгo geral.
Reply


Messages In This Thread
SetTimer - by Jorge_Braz - 20.12.2011, 22:04
Re: SetTimer - by Kuddy - 20.12.2011, 22:05
Re: SetTimer - by Jorge_Braz - 20.12.2011, 22:14
Re: SetTimer - by Lуs - 20.12.2011, 22:45
Re: SetTimer - by Cristhian - 20.12.2011, 23:13
Re: SetTimer - by RebeloX - 21.12.2011, 12:24
Re: SetTimer - by Lуs - 21.12.2011, 12:33
Re: SetTimer - by RebeloX - 21.12.2011, 15:02
Re: SetTimer - by Lуs - 21.12.2011, 16:13
Re: SetTimer - by SlashPT - 25.12.2011, 22:02

Forum Jump:


Users browsing this thread: 2 Guest(s)