Schönen Abend Community,
ich habe eine " Ocmd: ban " erstellt, ich habe sehr viele Leute nach Hilfe gefragt, keiner hat mein Problem gelöst. Es bant den Spieler.. aber nach einem "gmx" kann er sich wieder neu einlogen "ABER WARUM?!"
Der Befehl:
ocmd:ban(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"[ERROR] Du bist kein Admin Rang 2!");
new pID, reason[128], string[128];
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"[ERROR] Eingeben: /ban [ID] [Grund]");
format(string,sizeof(string),"AdmCmd: %s wurde von %s gebannt. Grund: %s",pSpielerName(pID),pSpielerName(playerid),reason);
SendClientMessageToAll(ROT,string);
GetPlayerName(pID,string,sizeof(string));
SpielerInfo[pID][pBanned]=1;
SavePlayer(pID);
//mysql_SetInt("accounts", "Banned",1, "Name",pSpielerName(pID));
SetTimerEx("BanTimer",500,false,"i",pID);
return 1;
}
Und hier, wenn er sich eigentlich einloggen sollte, und dieser Text kommen sollte, aber es irgendwie nicht kommt.
case DIALOG_LOGIN:
{
if(response)
{
if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
return 1;
}
else
{
new SpielerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true)) // Wir holen uns das Passwort aus der MySQL Datenbank und überprüfen es mit dem angegebenen passwort.
{
if(SpielerInfo[playerid][pBanned]==0)
{
SetPVarInt(playerid,"Eingeloggt",1); //Falls beide passwörter übereinstimmen wird die Variable auf 1 gesetzt damit wir die Skin auswahl benutzen können.
LoadPlayer(playerid); //Der Spieler wird "geladen", speich es werden seine Daten aus der Datenbank geholt und in variablen gespeichert um diese im Skript zu verwenden.
SpawnPlayer(playerid); //Wir lassen den Spieler Spawnen
return 1;
}
else
{
LoadPlayer(playerid); //Der Spieler wird "geladen", sprich es werden seine Daten aus der Datenbank geholt und in variablen gespeichert um diese im Skript zu verwenden
SendClientMessage(playerid,ROT,"Du bist gebannt!");//
SendClientMessage(playerid,ROT,"Bei vermutlicher Unschuld kannst Du im Forum einen Entbannantrag stellen.");
Kick(playerid);
}
}
else
{
//Wenn das Passwort falsch war, lassen wir erneut das Login fenster erscheinen damit der Spieler das Richtige Passwort eingibt.
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
return 1;
}
}
}
else
{
Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
}
}
}
return 1;
}
Was ist nur falsch, bitte ignoriert diesen Thread nicht, und helft mir ... Danke zu mindestens der mir hilft. Schönen Abend noch!
Mit freundlichen Grüßen,