Ich habe mir einen Login-Command erstellt.
dcmd_login(playerid,params[])
{
new name[MAX_PLAYER_NAME], string[256];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "/madAd/%s.ini", name );
new passwort;
if(sscanf(params, "s", passwort))
{
return SendClientMessage(playerid,COLOR_RED,"Benutzung: /login [Passwort]");
}
/*new stringword[128];
stringword = dini_Get(string, "Passwort:"); */
if(passwort == dini_Get(string, "Passwort:"))
{
loggedin[playerid] = 1;
SendClientMessage(playerid, COLOR_GREEN, "Du hast dich erfolgreich eingeloggt, herzlichen Glückwunsch!");
new plip[128];
GetPlayerIp(playerid, plip, sizeof(plip));
dini_Set(string, "IP:", plip);
alvl = dini_Get(string, "AdminLevel:");
}
else
{
return SendClientMessage(playerid, COLOR_GREEN, "Falsches Passwort!");
}
return 1;
}
Nur leider hat er irgendiwe immer ein Problem mit dem der Dini-Abfrage beim Passwort-String.
Er meldet immer
ZitatC:\Users\Martin\Desktop\samp03asvr_win32\filterscripts\madAd.pwn(843) : error 033: array must be indexed (variable "dini_Get")
Ich kann es auch so machen, wie es momentan auskommentiert ist, also
new stringword[512];
stringword = dini_Get(string, "Passwort:");
und dann die Abfrage
if(passwort == stringword"))
benutzen, der gleiche Error(nur mit: variable "stringword") erscheint. Ich hoffe, ihr helft mir, Licht ins Dunkel zu bringen.
Mit freundlichen Grüßen,
der ratlose Maddin...