Problema con Timers en 1 Loop
#1

Buenas.. otra vez por acб.. ya me tiene re enfermo.


Bueno resulta que tengo un problema con Ciertos "timers", segъn lo que veo se repiten por el nъmero de Zonas (GangZones) que tengo en el servidor. Como pueden ver uso un loop....

Cуdigo
pawn Код:
public OnPlayerEnterDynamicCP(playerid, checkpointid)
{
    for(new i=0; i < sizeof(ZoneInfo); i++)
    {
        if(checkpointid == CPAero || checkpointid == CPRefineria)
        {
           if(GetTeamZoneColor(ZoneInfo[i][zTeam]) != gTeam[playerid])
            {
                if(ZoneInfo[i][zSiendoConquistada] == 1) return Message(playerid, GRIS, "[ERROR]: Esta zona ya esta siendo conquistada");
                //___ Conquista Talibanes
                if(gTeam[playerid] == TEAM_TALIBAN)
                {
                    GangZoneFlashForAll(ZoneID[i], 0x45843396);
                    print("Timer en ejecucion");
                    TimerConquista[playerid] = SetTimer("ConquistaTimer", 5000, false);
                    ZoneInfo[i][zSiendoConquistada] = 1;
                }
                if(gTeam[playerid] == TEAM_USA)
                {
                    GangZoneFlashForAll(ZoneID[i], 0x0080C096);
                    print("Timer en ejecucion");
                    TimerConquista[playerid] = SetTimer("ConquistaTimer", 5000, false);
                    ZoneInfo[i][zSiendoConquistada] = 1;
                }
            }
            else Message(playerid, GRIS, "[ERROR]: Este territorio ya es de tu equipo");
        }
    }
    return 1;
}
Es decir.. tengo 2 GangZones por lo cual se ejecutan 2 timers a la vez.. (No solo los timers, las funciones adentro dй, tambien se ejecutan 2 veces), el problema es que necesito usar el loop, para condicionar ciertas cosas.. Hay alguna forma de hacerlo sin que el timer y las funciones en su interior se me repita...?

Gracias desde ya, y un saludo amablemente.
Reply
#2

PHP код:
new Timers[MAX_PLAYERS];
new 
Strons[MAX_PLAYERS];
Llamada llamandoplayerid )
{
    print(
"Timer en ejecucion");
    return 
1;
}
CMD:test(playeridparams[])
{
    for(new 
i2i++)
    {
    
Strons[playerid]++;
    
    if(
Strons[playerid] == 1)
    {
    
Timers[playerid] = SetTimerEx("llamando"1000false"d"playerid);
    }
    }
    return 
1;

/// Consola
PHP код:
[17:23:54]  
[
17:23:54]  
[
17:23:54]  
[
17:23:54] ||====================================||
[
17:23:54]  Policia y Ladrones By Cesar_******
[17:23:54] ||====================================||
[
17:23:54Number of vehicle modelsxx
[17:24:06Timer en ejecucion 
recuerda que strons tiene que setearlo a Cero.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)