Szerző Téma: TimerEx hívás  (Megtekintve 556 alkalommal)

TimerEx hívás
« Dátum: 2012. március 28. - 16:00:33 »
0 Show voters
Hali.
Ha valaki tudja, hogyan tudnék egy SetTimerEx-et indítani a mód indulásakor, az adjon már egy kis útba igazítást, mert én nem tudtam rájönni. Köszi elõre is

Gang[St]e[R]

  • Vendég
TimerEx hívás
« Válasz #1 Dátum: 2012. március 28. - 16:04:01 »
0 Show voters
a SetTimerEx annyiban tér el a SetTimer-tõl, hogy kér játékos id-t és egyebeket. A SetTimer mindenkire szól, a SetTimerEx pedig arra akinek indítottad. Az OnGameModeInit-nél meg nincs játékos id, maximum for ciklussal indíthatod.

TimerEx hívás
« Válasz #2 Dátum: 2012. március 28. - 16:09:30 »
0 Show voters
Hát én azt akarnám, hogy mikor elindul a gamemode akkor elindul egy 1perces Timer ami megjelenit egy checkpointot, és ha a CPbe megy valaki akkor az eltünik és újra elindul a Timer ami elõhívja a CP-t és ugyanúgy folytatódik körkörösen. Az elsõ elindulással vannak gondjaim
 
stock CPINDUL(playerid)
{
    SetTimerEx(\"CP\", 10000, false,\"i\",playerid);
}
public OnGameModeInit()
{
CPINDUL(); //EZZEL VAN A GOND
return1;
}
public OnPlayerEnterDynamicCP(playerid, checkpointid)
{
if(GetPVarInt(playerid,\"CPclear\")==1)
{
SetPVarInt(playerid,\"CPclear\",2);
SetTimerEx(\"CPwait\", 10000, false,\"i\",playerid);
}
return 1;
}
forward CP(playerid);
public CP(playerid)
{
cpclearing = CreateDynamicCP(2051.4656,1370.3862,10.6719,10.0,-1,-1,playerid,200.0);
SetPVarInt(playerid,\"CPclear\",1);
SendClientMessage(playerid,COLOR_WHITE,\"Go to the CP\");
}
forward CPwait(playerid);
public CPwait(playerid)
{
if(IsPlayerInDynamicCP(playerid,cpclearing) && GetPVarInt(playerid,\"CPclear\")==2)
{
GivePlayerExp(playerid,10,\"CP cleared\");
}
SendClientMessage(playerid,COLOR_WHITE,\"CP cleared. Wait!\");
        SetPVarInt(playerid,\"CPclear\",0);
DestroyDynamicCP(cpclearing);
CPINDUL(playerid);
return 1;
}
« Utoljára szerkesztve: 2012. március 28. - 16:22:35 írta mr_rich »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal