Möchte gerne etwas da ich überhaupt noch net mit selfmade scriptfiles klar komme.
Wenn ein User einen befehl falsch eingibt z.B /Login passwort und dieses falsch ist
wird die IP und das falsch angegeben Passwort in einer Datie namens "Falschepasswörter.ini" gespeichert wird
Falsches Passwort
- Psychosandman
- Geschlossen
- Erledigt
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
-
-
Dafür müsste man jetzt nur wissen, wie er sich bei dir einloggt^^
Also, wie die Sachen deklariert sind -
Will wieder bissl in übung kommen habe mla komplett neues GF angefangen den aus den ich meinen Oberimba gamemode basteln will xD wird nen lv gamemode soviel verrate ich schonmal.
Also es ist der GF der ja sowieso wien wollknäul wo aman nicht mehr Anfang und ende findet
if (strcmp(cmd, "/login", true) ==0 )
{
if(IsPlayerConnected(playerid))
{
new tmppass[64];
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "SERVER: Du bist bereits eingeloggt.");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /login [passwort]");
return 1;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
Encrypt(tmppass);
OnPlayerLogin(playerid,tmppass);
}
return 1;
}
if (strcmp(cmd, "/register", true) ==0 )
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "SERVER: Du bist bereits eingeloggt.");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s.ini", sendername);
new File: hFile = fopen(string, io_read);
if (hFile)
{
SendClientMessage(playerid, COLOR_YELLOW, "Dieser Name ist schon vergeben! Bitte benutze einen anderen.");
fclose(hFile);
return 1;
}
new tmppass[64];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /register [passwort]");
return 1;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
Encrypt(tmppass);
OnPlayerRegister(playerid,tmppass);
}
return 1;
}
Das ist der Login befehl und dann die PW Abfage}
else
{
SendClientMessage(playerid, COLOR_Rot, "James sagt: Das angegebene Passwort stimmt nicht mit dem Richtigen überein");
SendClientMessage(playerid, COLOR_Rot, "James sagt: Deine IP wurde gespeichert und das Falsch eingetippte Passwort");
SendClientMessage(playerid, COLOR_Rot, "James sagt: Du hast insgesammt 4 Versuche das Passwort richtig einzutippen!");
SendClientMessage(playerid, COLOR_Rot, "James sagt: Danach muss ich dich leider vom Server ausschließen");
fclose(UserFile);
gPlayerLogTries[playerid] += 1;
if(gPlayerLogTries[playerid] == 4) { Ban(playerid); }
return 1;
}
so bitte -
Und wo wird gecheckt ob das Passwort richtig ist oder falsch? In welchem public? Das brauch man ja dafür^^
-
das musste selbstverständlich in den Login befehl soweit oben wie möglich machen
-
breadfish.de
Hat das Thema geschlossen.