Eigener TempBan

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Kann der Temp Ban so funktionieren oder könnte in anderen Zeit verhältnissen die aktuelle Zeit kleiner als die Banzeit sein ?
    Wenn es so nicht funktionniert, wie kann ich es dann machen ?


    OnPlayerConnect


    if(GetPVarInt(playerid,TBAN_KEY) >= 1)
    {
    new year,month,day,hour,minute,second,time;
    getdate(year,month,day);
    gettime(hour,minute,second);
    time = year+month+day+hour;

    if(GetPVarInt(playerid,TBAN_KEY) > time)
    {
    SendClientMessage(playerid,lila,"Tempban noch aktiv");
    Kick(playerid);
    }
    }



    dcmd_tban(playerid,params[])
    {
    new zielid,zeit,grund[128];


    if(sscanf(params, "uds",zielid,zeit,grund))
    {
    return SendClientMessage(playerid,weiß,"Benutzung: /tban [ID] [Stunden] [Grund]");
    }


    if(GetPVarInt(playerid,ADMIN_KEY) >= 4)
    {
    if(!IsPlayerConnected(zielid))
    {
    SendClientMessage(playerid,rot,"Es existiert kein Spieler mit dieser ID");
    }
    else
    {
    new admin[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid,admin,sizeof(admin));
    format(string,sizeof(string),"Du wurdest von Admin %s für %d Stunden gebannt. Grund: %s",admin,zeit,grund);
    SendClientMessage(zielid,lila,string);


    new string2[128];
    new gekickt[MAX_PLAYER_NAME];
    GetPlayerName(zielid,gekickt,sizeof(gekickt));
    format(string2,sizeof(string2),"Admin-Command: Admin %s hat %s für %d Stunden gebannt. Grund: %s",admin,gekickt,zeit,grund);


    new year,month,day,hour,minute,second,bisban;
    getdate(year,month,day);
    gettime(hour,minute,second);
    bisban = year+month+day+hour+zeit;


    SetPVarInt(playerid,TBAN_KEY,bisban);


    SendClientMessageToAll(lila,string2);


    admincmdlog(string2);
    }
    }
    else
    {
    SendClientMessage(playerid,rot,"Du besitzt nicht die nötige Einstufung zur Ausführung dieses Befehls");
    }
    return 1;
    }