Hey.
Ich habe bei den meisten Timern / Funktionen von mir ein großes Problem.
Undzwar wenn ich sie alleine teste , geht alles perfekt , nur wenn mehrere auf dem Server sind nicht.
zB. bei /verhaften , alleine klappt alles perfekt , bei mehreren wird die Knastzeit und das Geld nur auf 0 gesetzt.
Dann bei Timern , alleine laufen sie perfekt , bei mehreren Leuten schneller , zB. wenn 2 Leute da sind erhöht sich eine Variable 2x anstatt 1x!
Beispiel:
if(deagleeventaktiv)
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(deagleeventteilnehmer[i])
{
SendClientMessage(playerid,Hellblau,"Das Event wurde gestartet!");
DeagleTime = 2;
DeagleTimer = SetTimer("DeagleEventTimer",1000,1);
}
}
}
public DeagleEventTimer()
{
if(DeagleTime >= 1)
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(deagleeventteilnehmer[i])
{
if(DeagleTime == 2)
{
SendClientMessage(i,Hellblau,"Das Event startet in 20 Sekunden.");
}
else if(DeagleTime == 7)
{
SendClientMessage(i,Hellblau,"Das Event startet in 15 Sekunden.");
}
else if(DeagleTime == 12)
{
SendClientMessage(i,Hellblau,"Das Event startet in 10 Sekunden.");
}
else if(DeagleTime == 19)
{
SendClientMessage(i,Hellblau,"Das Event startet in 3 Sekunden.");
}
else if(DeagleTime == 20)
{
SendClientMessage(i,Hellblau,"Das Event startet in 2 Sekunden.");
}
else if(DeagleTime == 21)
{
SendClientMessage(i,Hellblau,"Das Event startet in 1 Sekunde.");
}
else if(DeagleTime >= 22)
{
SendClientMessage(i,Hellblau,"Viel Glück!");
TogglePlayerControllable(i,1);
DeagleCheckTimer=SetTimer("DeagleCheck",1000,1);
DeagleTime=0;
KillTimer(DeagleTimer);
}
}
}
DeagleTime++;
}
}
{
if(DeagleTime >= 1)
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(deagleeventteilnehmer[i])
{
if(DeagleTime == 2)
{
SendClientMessage(i,Hellblau,"Das Event startet in 20 Sekunden.");
}
else if(DeagleTime == 7)
{
SendClientMessage(i,Hellblau,"Das Event startet in 15 Sekunden.");
}
else if(DeagleTime == 12)
{
SendClientMessage(i,Hellblau,"Das Event startet in 10 Sekunden.");
}
else if(DeagleTime == 19)
{
SendClientMessage(i,Hellblau,"Das Event startet in 3 Sekunden.");
}
else if(DeagleTime == 20)
{
SendClientMessage(i,Hellblau,"Das Event startet in 2 Sekunden.");
}
else if(DeagleTime == 21)
{
SendClientMessage(i,Hellblau,"Das Event startet in 1 Sekunde.");
}
else if(DeagleTime >= 22)
{
SendClientMessage(i,Hellblau,"Viel Glück!");
TogglePlayerControllable(i,1);
DeagleCheckTimer=SetTimer("DeagleCheck",1000,1);
DeagleTime=0;
KillTimer(DeagleTimer);
}
}
}
DeagleTime++;
}
}