Abend
Ich habe mal eine kleine Frage zu meinem /timeban Befehl.
Nun ich hab vor das wenn man einen Spieler mit /timeban [Name/ID] [Zeit in Minuten] [Grund] Timebanen tut.
Nur ist das Problem, er wird zwar Gebannt aber in der zwischen Zeit wo er Offline also nicht auf dem Server aktiv ist wird die Timeban zeit nicht abgezogen.
Also sagen wir ich Banne einen für 2 Minuten wird diese nicht abgezogen, und wenn der Spieler Connecten möchte steht dort "Du bist noch für 156451316450 Minuten Gebannt" ( Weiß die zahl jetzt nicht genau :D)
Ich selber weiß natürlich das man so etwas noch Scripten muss das er die Zeit abzieht aber wie genau stellt man dies an ?
Also kurz Fassung:
- Spieler wird Gebannt auf Zeit aber die Zeit wird nicht runtergezählt.
- Und wenn der Spieler Connecten tut erscheint diese merkwürdige Zahl ""Du bist noch für 156451316450 Minuten Gebannt" ( Weiß die zahl jetzt nicht genau :D) "
- Und ich benutze das Datei System (DINI)
Hier habt ihr mal den Befehl:
ocmd:timeban(playerid,params[])
{
if(GetPVarInt(playerid,"Tutorial") == 1)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen, da du im Tutorial bist.");
if(GetPVarInt(playerid,"loggedin") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
new pID, time, grund[32];
if(GetPVarInt(playerid,"Adminlevel") !=4 && GetPVarInt(playerid,"Adminlevel") != 1337 && GetPVarInt(playerid,"Adminlevel") != 2000)return SendClientMessage(playerid,DUNKELROT," Du hast kein Zugriff auf diesen Befehl!");
if(sscanf(params,"uis",pID,time,grund))return SendClientMessage(playerid,ORANGE,"Verwende: /timeban [Name/ID] [Zeit in Minuten] [Grund]");
if(strlen(grund) > 32)return SendClientMessage(playerid,ORANGE,"Benutze: /timeban [Name/ID] [Zeit in Sekunden] [Timeban Grund darf Maximal nur 32 Zeichen beinhalten]");
else
if(playerid == pID) return SendClientMessage(playerid,DUNKELROT,"Du kannst dich nicht selber Timebannen.");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online.");
{
if(time>1||time<1000)
{
new string[128];
format(string,sizeof(string),"Info: %s wurde für %i Sekunden vom Admin %s vom Server gebannt Grund: %s",SpielerName(pID),time,SpielerName(playerid),grund);
SendClientMessageToAll(0xFF6347AA,string);
new wert;
wert=gettime()+(time);
SetPVarInt(pID,"Timeban",wert);
Kick(pID);
return 1;
}
SendClientMessage(playerid,ROT,"Du musst einen wert von 1 bis 1000 Angeben");
return 1;
}
}
Hoffe ihr könnt mir da ein wenig weiter Helfen.
Grüße