GTA Közösség - A magyar GTA fórum
San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: mr_rich - 2011. szeptember 04. - 02:44:56
-
Hali!
Készítettem a versenyhez egy textdraw visszaszámolót, csak az a gond ha megnyerem a versenyt akkor nem restartol ujra a számláló hanem ha új versenyre megyek, az elõzõnek mért utolsó idõpontól kezdi a számlálást. Ha valaki tud segitsen. Köszi!
Itt lesz a kód:
[pawn]new GameMinutes =1;
new GameSeconds =20;
new GameTimer;
new GameOver;
new Text:Textdraw0;[/pawn]
[pawn]public GameTime()
{
if(GameSeconds || GameMinutes)
{
GameSeconds--;
if(GameSeconds <= -1)
{
GameMinutes--;
GameSeconds=59;
}
new TimeString[14];
format(TimeString,sizeof(TimeString),\"%02d:%02d\",GameMinutes,GameSeconds);
TextDrawSetString(Textdraw0,TimeString);
}
return 1;
}[/pawn]
[pawn]public OnPlayerEnterDynamicRaceCP(playerid, checkpointid)
{
switch(Racer[playerid])
{
case 1:
{
Textdraw0 = TextDrawCreate(86.000000,427.000000,\"1:20\");
TextDrawAlignment(Textdraw0,2);
TextDrawBackgroundColor(Textdraw0,0x000000ff);
TextDrawFont(Textdraw0,3);
TextDrawLetterSize(Textdraw0,0.499999,2.000000);
TextDrawColor(Textdraw0,0xffffffff);
TextDrawSetOutline(Textdraw0,1);
TextDrawSetProportional(Textdraw0,1);
TextDrawSetShadow(Textdraw0,1);
TextDrawShowForPlayer(playerid,Textdraw0);
GameTimer = SetTimer(\"GameTime\",1000,1);
GameOver = SetTimerEx(\"GameO\",80000,false,\"i\",checkpointid);
}
}
return 1;
}[/pawn]
[pawn]forward GameO(playerid,checkpointid);
public GameO(playerid,checkpointid)
{
KillTimer(GameTimer);
KillTimer(GameOver);
TextDrawDestroy(Textdraw0);
}[/pawn]
-
SetTimer -t írd át SetTimerEx-re szerintem így el tudod indítani bárkinek:
[pawn]GameTimer = SetTimerEx(\"GameTime\", 1000, false, \"d\", playerid);[/pawn]
De amúgy minek indítod el 2X-er?
-
Mivel globál változókat használsz ehhez az idõzítõhöz, ezért amint véget ért újra az alap értékre kellene állítanod õket.
Röviden mikor te újra jelentkezel a versenyre állítsd be az idõzítõket:
[pawn]GameMinutes =1;
GameSeconds =45;[/pawn]
Ez az elméleti része a problémának, az egész kivitelezése nem a legjobb, gondold át újra az egészet.
-
rendben, zárom