Heyho zusammen,
undzwar komme ich gleich zur sache
kann mir jemand sagen wie ich das hinkriege das der Score jede Stunde die er Online ist um eins Steigt?
Danke um die Antwort im Vorraus
MfG Jogi
Heyho zusammen,
undzwar komme ich gleich zur sache
kann mir jemand sagen wie ich das hinkriege das der Score jede Stunde die er Online ist um eins Steigt?
Danke um die Antwort im Vorraus
MfG Jogi
Erstelle eine Variable die für jeden Spieler gilt bzw mach eine *.ini variable.
Erstelle einen Timer der jede Minuten 1x die Funktion ausführt.
Erstelle eine for-schleife in der timer funktion in der du bei jedem Spieler die Variable +1 rechnest
Und eine Abfrage obs 60 ist.
Wenn es 60 ist gibst du 1 Score und machst die Zeit wieder auf 0.
ähm kannst dus mir bitte irgendwie genauer erklären für anfänger ?
zB in meinem Script ist die Spieler Variable Zeit = "Player[playerid][Time]"
Nun denn:
forward Timer();
public OnGameModeInit()
{
SetTimer("Timer",60000,true);
return 1;
}
public Timer()
{
new i = 0;
for(; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
Player[i][Time] ++;
}
if(Player[i][Time] == 60)
{
SetPlayerScore(i) ++;
Player[i][Time] = 0;
}
}
return 1;
}
(Kann Fehler enthalten! :D)
Haha
SetTimer("Timer",60000,true);
ist nicht eine Stunde.
Beim Timer wird die Zahl immer in Millisekunden angegeben.
60000ms = 1Min.
1000ms = 1sek
36000000=1h
Der Timer soll auch jede Minute laufen?
Sagen wir Player 1 Joint um 14:20
Player 2 joint um 14:40, dann würden beide zur selben Zeit einen Punkt bekommen, unfair oder?
So läuft der Timer jede Minute und so ist es für jeden Spieler gleich.
Das hat schon seinen Sinn
ZitatHaha
SetTimer("Timer",60000,true);
ist nicht eine Stunde.
Beim Timer wird die Zahl immer in Millisekunden angegeben.
Jez bin ich beleidigt