Du fragst ab ob der Spieler nicht Eingeloggt ist setzt aber nirgendwo den Wert. Dann fangen wir mal an
public OnPlayerConnect(playerid)
{
//Funktionen (Login / Registrierung)
PlayerInfo[playerid][pLogin]==false;
Check_Player(playerid);
return 1;
}
Hier wird der Spieler auf nicht Eingeloggt gesetzt.
public OnPlayerRequestClass(playerid, classid)
{
printf("1");
//Funktionen (Login / Registrierung)
if(PlayerInfo[playerid][pLogin]==false)
{
printf("2");
new query[128];
mysql_format(MySQLConnection, query, sizeof(query), "SELECT ID FROM server_accounts WHERE Name = '%e'", PlayerInfo[playerid][pName]);
mysql_function_query(MySQLConnection, query, true, "Check_Player_Step_2", "d", playerid);
printf("%s", query);
}
/*
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
*/
return 1;
}
Hier wird schlussendlich abgefragt ob der Spieler eingeloggt ist oder eben nicht. Beim Connecten wird er immer auf nicht Eingeloggt gesetzt somit schlägt die Anfrage dann nicht fehl.
public Login_Player(playerid)
{
new rows;
cache_get_row_count(rows);
if(rows == 0)
{
//Funktion (Falsches Passwort)
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login", "Login (Text folgt) - Falsches Passwort", "Login", "Abbrechen");
}
else
{
//Funktion (Spieler laden)
PlayerInfo[playerid][pID] = cache_get_field_content_int(0, "ID");
PlayerInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level");
PlayerInfo[playerid][pMoney] = cache_get_field_content_int(0, "Bargeld");
PlayerInfo[playerid][pAdmin] = cache_get_field_content_int(0, "Adminlevel");
PlayerInfo[playerid][pFraktion] = cache_get_field_content_int(0, "Fraktion");
PlayerInfo[playerid][pRank] = cache_get_field_content_int(0, "Rank");
PlayerInfo[playerid][pLogin] = true;
PlayerPlaySound(playerid, 1057 , 0.0, 0.0, 0.0);
GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
SpawnPlayer(playerid);
PlayerInfo[playerid][pLogin]==true;
}
return 1;
}
Sobald der Login erfolgreich war musst du den Wert pLogin natürlich auch auf true setzen.
Ich hoffe ich konnte dir damit helfen.
Liebe Grüße BreadScript / Legal.Highs