Wenn der String von dem ersten Charakter leer ist, wird das sogenannte NULL-Byte zurückgegeben.
Sobald im String das NULL-Byte steht, wird jede lese Operation darauf abgebrochen.
Beispiel kann dein string sein "\0Hallo" dann würdest du nicht Hallo lesen können, da beim NULL Byte schon abgebrochen wird.
Folglich musst du prüfen ob das im String vorhanden ist ![]()
C
new ch[3][MAX_PLAYER_NAME];
format(Info[playerid][CharacterName1],MAX_PLAYER_NAME,dini_Get(file, "CharacterName1"));
format(Info[playerid][CharacterName2],MAX_PLAYER_NAME,dini_Get(file, "CharacterName2"));
format(Info[playerid][CharacterName3],MAX_PLAYER_NAME,dini_Get(file, "CharacterName3"));
if(Info[playerid][CharacterName1][0] == EOS) ch[0] = "/";
else strcat(ch[0],Info[playerid][CharacterName1]);
if(Info[playerid][CharacterName2][0] == EOS) ch[1] = "/";
else strcat(ch[1],Info[playerid][CharacterName2]);
if(Info[playerid][CharacterName3][0] == EOS) ch[2] = "/";
else strcat(ch[2],Info[playerid][CharacterName3]);
format(string,sizeof(string),"%s\n%s\n%s",ch[0],ch[1],ch[2]);
ShowPlayerDialog(playerid,DIALOG_LOGIN_2,DIALOG_STYLE_LIST,"Charaktere:",string,"Login","Abbrechen");
Alles anzeigen
