Blacklist Spieler werden nach Relogg nicht gespeichert.

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
  • Guten Tag,
    wenn man einen Spieler auf die Blacklist setzt und der Reloggt ist er nicht mehr auf der Blacklist.
    Eigentlicht speichert der alles ab..


    Code:


    COMMAND:setbl(playerid,params[])
    {
    if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
    if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
    if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
    if(Spieler[playerid][pInPrison] == 1)return SendClientMessage(playerid,GRAU,"Du bist im Prison.");
    if(Spieler[playerid][pFriedhof] == 1)return SendClientMessage(playerid,GRAU,"Du bist Tot.");
    if(Spieler[playerid][pDeath] == 1)return SendClientMessage(playerid,GRAU,"Du bist verletzt.");
    if(Spieler[playerid][pJailed] != 0)return SendClientMessage(playerid,GRAU,"Du bist im Gefängnis.");
    if(Spieler[playerid][pTazerd] == 1)return SendClientMessage(playerid,GRAU,"Du bist K.O/getazert.");
    if(Spieler[playerid][pCuffed] == 1)return SendClientMessage(playerid,GRAU,"Du bist gefesselt.");
    new pID,string[128],reason[31];
    if(isPlayerInFrakt(playerid,4) || isPlayerInFrakt(playerid,5) || isPlayerInFrakt(playerid,7) || isPlayerInFrakt(playerid,9) || isPlayerInFrakt(playerid,12) || isPlayerInFrakt(playerid,13) || isPlayerInFrakt(playerid,17))
    {
    if(!isPlayerAMember(playerid,3))return SendClientMessage(playerid,GRAU,"Nicht den jeweiligen Rang.");
    if(sscanf(params,"us[31]",pID,reason))return SendClientMessage(playerid,WRONGCMD,"BENUTZE: /setbl [playerid/Name][Grund]");
    if(strlen(reason) > 30)return SendClientMessage(playerid,WRONGCMD,"BENUTZE: /setbl [playerid/Name][Grund darf maximal 30 Zeichen beinhalten]");
    if(pID == playerid)return SendClientMessage(playerid,GRAU,"Du kannst dich nicht selbst auf die Blacklist setzen.");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,GRAU,"Der angegebene Spieler ist nicht eingeloggt!");
    if(GetPVarInt(pID,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Der angegebene Spieler ist nicht eingeloggt!");
    if(IsPlayerNPC(pID))return SendClientMessage(playerid,GRAU,"Das kannst du nicht!");
    if(Spieler[pID][pBL][Spieler[playerid][pFraktion]] == 1)return SendClientMessage(playerid,GRAU,"Spieler ist bereits auf der Blacklist deiner Fraktion!");
    if(isPlayerInFrakt(playerid,Spieler[pID][pFraktion]))return SendClientMessage(playerid,GRAU,"Du kannst keine Leute aus deiner eigenen Fraktion auf die Blacklist setzen.");
    format(string,sizeof(string),"Du wurdest von %s auf die Blacklist der %s gesetzt. Grund: %s",SpielerName(playerid),FraktionsName(Spieler[playerid][pFraktion]),reason);
    SendClientMessage(pID,FMELDUNG,string);
    format(string,sizeof(string),"%s hat %s auf die Blacklist gesetzt. Grund: %s",SpielerName(playerid),SpielerName(pID),reason);
    SendFraktionsMessage(Spieler[playerid][pFraktion],FMELDUNG,string);
    Spieler[pID][pBL][Spieler[playerid][pFraktion]] = 1;
    strmid(pBLReason[pID][Spieler[playerid][pFraktion]],reason,0,strlen(reason),32);
    return 1;
    }
    return SendClientMessage(playerid,GRAU,"Du bist nicht in der jeweiligen Fraktion.");
    }


    format(stringlogin,sizeof(stringlogin),"SELECT * FROM "#SERVERTAG"_account_blacklist WHERE Name = '%s'",SpielerName(playerid));
    mysql_function_query(MySqlConnection,stringlogin,true,"LoadAccountBlacklists","i",playerid);


    strcat(query,"CREATE TABLE IF NOT EXISTS `"#SERVERTAG"_account_blacklist` (`Name` varchar(24) NOT NULL,");
    for(new fID=0;fID<MAX_FRAKTIONNEN;fID++)
    {
    strcat(query,",");
    format(query,sizeof(query),"%sblacklist%i",query,fID);
    strcat(query,",");
    format(query,sizeof(query),"%sblacklistreason%i",query,fID);
    }


    strcat(mainquery,"UPDATE "#SERVERTAG"_account_blacklist SET ");
    for(new fID=0;fID<MAX_FRAKTIONNEN;fID++)
    {
    if(fID > 0) strcat(mainquery,",");
    format(mainquery,sizeof(mainquery),"%sblacklist%i='%d'",mainquery,fID,Spieler[playerid][pBL][fID]);
    strcat(mainquery,",");
    format(mainquery,sizeof(mainquery),"%sblacklistreason%i='%s'",mainquery,fID,pBLReason[playerid][fID]);
    }