Ja.
// Beispiel
cache_get_field_content(0, "banngrund", PlayerInfo[playerid][p_Banngrund], handle, 24);
Hab ich so auch genutzt, klappt nur nicht so ganz.
cache_get_field_content(0, "ip", PlayerInfo[playerid][IP], 16, handle);cache_get_field_content(0, "banby", PlayerInfo[playerid][Banby], 32, handle);cache_get_field_content(0, "banreason", PlayerInfo[playerid][BanReason], 64, handle);new string[128];if(PlayerInfo[playerid][Banned] == 1){SendClientMessage(playerid, COLOR_RED, "Dieser Account wurde gesperrt - Mit diesem Account kann nicht mehr gespielt werden!");SendClientMessage(playerid, COLOR_RED, "Nutze 'F8' um ein Screenshot zu erstellen, dieser muss an ein Entban-Antrag angehangen werden.");format(string, sizeof(string), "Gesperrt von: %s\nGrund: %s", PlayerInfo[playerid][Banby], PlayerInfo[playerid][BanReason]);ShowPlayerDialog(playerid, DIALOG_BANNED, DIALOG_STYLE_MSGBOX, "Account wurde gesperrt", string, "Schließen", "");SetTimerEx("PlayerKick", 670, false, "i", playerid);}else{//Spawn....}
Ich erhalte mein Dialog ohne Gebannt von und ohne Grund. Auch wenn ich vorher etwas in die DB eintrage, sind diese nach dem Kick leer.
Edit: Das passiert halt wenn man nicht richtig aufpasst, hab was vertauscht - Fehler behoben
Danke für die Hilfe!
//EDIT:
Habe nichts am Login/Register verändert, lief alles super, jetzt bekomm ich kein Register Dialog mehr wenn ich mit einem neuem Account connecte.
//OnPlayerRequestClass
if(!PlayerInfo[playerid][pLoggedIn])
{
new query[128];
mysql_format(handle, query, sizeof(query), "SELECT id FROM users WHERE name = '%e'", PlayerInfo[playerid][pName]);
mysql_pquery(handle, query, "OnUserCheck", "d", playerid);
}
//OnUserCheck
if(cache_get_row_count() == 0)
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Registration", "Um hier spielen zu können, benötigst du einen Account.\nBitte Registriere dich in dem du ein Passwort angibst:", "Ok", "Abbrechen");
}
else//...