Moin,
ich bin im Moment dabei mir eine eigenen Tempban-Funktion zu scripten.
Das Ende des Tempbans wird in einer Datei gespeichert.
Beispiel:
Wenn ein Spieler sich nun einlogt, und in seiner Spielerdatei gespeichert ist, dass er einen Tempban hat (tempbanned = 1) wird dieser auf den tempban überprüft.
Ist der Tempban noch gültig wird der Spieler gekickt, ist er nicht mehr gültig, wird tembanned auf 0 gesetzt und der Spieler kann spielen.
Die Abfrage, ob der Spieler noch gebannt ist, sieht so aus:
if (jahr < tInfo[playerid][Jahr] && monat < tInfo[playerid][Monat] && tag < tInfo[playerid][Tag]
&& stunde < tInfo[playerid][Stunde] && minute < tInfo[playerid][Minute] && sekunde < tInfo[playerid][Sekunde]) {
SendClientMessage(playerid,COLOR_RED, "Du bist noch gebannt.");
Kick(playerid);
return 1;
}
else {
pInfo[playerid][tempbanned] = 0;
return 1;
}
Diese Abfrage ist, wie sich im nachinein herausgestellt hat Sinnlos, denn wenn nur die aktuelle Sekunde größer ist als die, die in der Tempban datei steht, wird der Tempban aufgehoben.
Ursprünglich wollte ich das das Datum bis zu welchem der Spieler gebannt ist Speichern und mit dem aktuellen Datum abgleichen, doch wie das geht weiß ich nicht
Ist dies überhaupt möglich?
Wenn nicht, wie kann ich es sonst machen?