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]);
}