Beiträge von Domain_26

    Sry, es handelt sich hier um ein Missverständnis.


    stock SpielerMitTimeban(playerid)
    {
    new Spieler[128];
    format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",SpielerName(playerid));
    if(dini_Exists(Spieler))
    {
    SetPVarInt(playerid,"Timeban",dini_Int(Spieler,"Timebanzeit"));
    }
    return 1;
    }


    Hier habe ich sie schon geladen.


    Und das mit dem Grund und Admin Funktioniert auch ganz gut.


    Das Hauptproblem ist immer noch die Entsperrung, denn diese wird nicht aufgehoben und die Zeit läuft einfach ins Minus.

    Funktioniert immer noch nicht. Ich werde nach dem Connecten sofort gespawnt mit Login Dialog (OnPlayerRequestClass)


    Ich zeig euch jetzt einfach, was in dem OnPlayerConnect callback steht:


    public OnPlayerConnect(playerid)
    {
    SpielerMitTimeban(playerid);
    new Spieler1[128];
    format(Spieler1,sizeof(Spieler1),"/Spieler/%s.txt",SpielerName(playerid));
    if(dini_Exists(Spieler1))
    {
    dini_Get(Spieler1,"Timebangrund");
    dini_Get(Spieler1,"Timebanadmin");
    }
    new time = gettime()-3600;
    if(time < GetPVarInt(playerid,"Timeban"))
    {
    new restzeit = (GetPVarInt(playerid,"Timeban") - time)/60;
    new string[384];
    format(string,sizeof(string),"Dein Account wurde wegen eines Regelverstoßes temporär gesperrt, mit ihm kann zurzeit nicht gespielt werden.\n\nWenn das nicht Dein Account ist, verwende einen anderen Nicknamen\nWenn Du zu Unrecht gesperrt wurdest, dann melde Dich bitte bei einem Admin\n\nGrund: %s\nDauer: %i Minuten\nAdmin: %s",dini_Get(Spieler1,"Timebangrund"),restzeit,dini_Get(Spieler1,"Timebanadmin"));
    ShowPlayerDialog(playerid,BAN,DIALOG_STYLE_MSGBOX,"Script Server Unlimited - Temporärer Spielausschluss",string,"Okay","");
    return 0;
    }
    SpielerMitBan(playerid);
    if(GetPVarInt(playerid,"Ban") !=0)
    {
    new bantext[320];
    new Spieler[64];
    format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",SpielerName(playerid));
    if(dini_Exists(Spieler))
    {
    dini_Get(Spieler,"Reason");
    dini_Get(Spieler,"Admin");
    }
    format(bantext,sizeof(bantext),"Dein Account wurde wegen eines Regelverstoßes gesperrt, mit ihm kann nicht mehr gespielt werden.\n\nWenn das nicht Dein Account ist, verwende einen anderen Nicknamen\nWenn Du zu Unrecht gesperrt wurdest, dann melde Dich bitte bei einem Admin\n\nGrund: %s\nDauer: permanent\nAdmin: %s",dini_Get(Spieler,"Reason"),dini_Get(Spieler,"Admin"));
    ShowPlayerDialog(playerid,BAN,DIALOG_STYLE_MSGBOX,"Script Server Unlimited - Spielausschluss",bantext,"Okay","");
    return 0;
    }
    new cstring[128];
    format(cstring,sizeof(cstring),"%s [ID: %i] hat den Server betreten.",SpielerName(playerid),playerid);
    SendClientMessageToAll(Tuerkies,cstring);
    TextDrawShowForPlayer(playerid,Textdraw0);
    TextDrawShowForPlayer(playerid,Textdraw1);
    TextDrawShowForPlayer(playerid,Textdraw2);
    TextDrawShowForPlayer(playerid,Textdraw3);
    TextDrawShowForPlayer(playerid,Textdraw4);
    PlayAudioStreamForPlayer(playerid,"https://ronehothiphopdetroit.files.wordpress.com/2014/07/wiz-khalifa_you-and-your-friends_radio-edit.mp3");
    for(new i=0; i<25; i++)
    {
    SendClientMessage(playerid,-1,"");
    }
    new Spieler2[64],string[256];
    new Sname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Sname,sizeof(Sname));
    format(Spieler2,sizeof(Spieler2),"/Spieler/%s.txt",Sname);
    if(dini_Exists(Spieler2))
    {
    SendClientMessage(playerid,Blau,"Herzlich Willkommen zurück auf Script Server Unlimited");
    format(string,sizeof(string),"Willkommen zurück %s\n\nDein Account wurde in unserer Datenbank gefunden.\nGebe niemals dein Passwort weiter, auch nicht der Administration!\nBitte gebe nun dein Passwort ein um dich einzuloggen:",Sname);
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Script Server - Login",string,"Login","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,Blau,"Herzlich Willkommen auf Script Sever Unlimited");
    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Script Server - Registrieren","Herzlich Willkommen auf Hurensohn Gaming.\n\nBitte wähle ein Passwort um Dir einen Account zu erstellen!","Registrieren","Abbrechen");
    return 1;
    }
    return 1;
    }


    Nicht wundern wenn da überflüssige Funktionen stehen, bin noch Anfänger

    Ich habe ein Timebansystem mit DINI.
    Mein Timebansystem funktioniert beim bannen aber nachdem die Zeit wieder abgelaufen ist steht da folgendes:



    Dass heißt das die Zeit einfach ins Minus geht.
    Ich habe vor, dass der Spieler sich nachdem er temporär gebannt wurde sich wieder einzuloggen wenn die Zeit abgelaufen ist, nur weiß ich nicht genau wie ich das mit dem dem Login verbinden soll (Weil /ban da schon steht)


    ocmd:tban(playerid,params[])
    {
    if(!IstSpielerAdmin(playerid,3))return SendClientMessage(playerid,Grau,"[Fehler] Du hast nicht die benötigten Rechte für diesen Befehl.");
    {
    new pID;
    new zeit;
    new grund[64];
    new string[128];
    new tmptime;
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht verbunden.");
    if(sscanf(params,"uis",pID,zeit,grund))return SendClientMessage(playerid,Gelb,"/tban [Spieler/ID] [Zeit] [Grund]");
    {
    format(string,sizeof(string),"%s wurde von %s für %i Minuten gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),zeit,grund);
    SendClientMessageToAll(Superhellrot,string);
    tmptime = (gettime()+3600)+(60*zeit);
    SetPVarInt(pID,"Timeban",tmptime);
    new Spieler[128];
    format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",SpielerName(pID));
    {
    dini_Set(Spieler,"Timebangrund",grund);
    dini_Set(Spieler,"Timebanadmin",SpielerName(playerid));
    dini_IntSet(Spieler,"Timebanzeit",GetPVarInt(pID,"Timeban"));
    }
    Kick(pID);
    }
    }
    return 1;



    new Spieler1[128];
    format(Spieler1,sizeof(Spieler1),"/Spieler/%s.txt",SpielerName(playerid));
    if(fexist(Spieler1))
    {
    dini_Get(Spieler1,"Timebangrund");
    dini_Get(Spieler1,"Timebanadmin");
    SetPVarInt(playerid,"Timeban",dini_Int(Spieler1,"Timebanzeit"));
    }
    new time = gettime();
    if(time < GetPVarInt(playerid,"Timeban"))
    {
    new restzeit = (GetPVarInt(playerid,"Timeban") - time - 3600)/60;
    new string[384];
    format(string,sizeof(string),"Dein Account wurde wegen eines Regelverstoßes temporaer gesperrt, mit ihm kann zurzeit nicht gespielt werden.\n\nWenn das nicht Dein Account ist, verwende einen anderen Nicknamen\nWenn Du zu Unrecht gesperrt wurdest, dann melde Dich bitte bei einem Admin\n\nGrund: %s\nDauer: %i Minuten\nAdmin: %s",dini_Get(Spieler1,"Timebangrund"),restzeit,dini_Get(Spieler1,"Timebanadmin"));
    ShowPlayerDialog(playerid,TIMEBAN,DIALOG_STYLE_MSGBOX,"Script Server Unlimited - Spielausschluss",string,"Okay","");
    return 0;
    }


    Ich hoffe Ihr könnt mir dabei helfen.


    Mit freundlichen Grüßen
    Domain_26