Kann ja auch nicht,
OnDialogResponse wird immer dann aufgerufen wenn du Irgendetwas mit dem Dialog machst, die dialogid ändert sich aber je nach Dialog
Somit ist die erste if-Abfrage direkt unwahr da du im Dialog DIA_HELP_ALLGEMEIN bist und dialogid daher nicht == DIA_HELP sein kann, somit springt er direkt raus.
Du musst für jeden Dialog einen eigenen if block starten:
//
if (dialogid == DIA_HELP)
{
if (response)
{
if (listitem == 0)
{
ShowPlayerDialog(playerid, DIA_HELP_ALLGEMEIN, DIALOG_STYLE_MSGBOX, "Hilfe-Allgemein", " \n \n \n \n", "Zurück", "Schließen");
}
if (listitem == 1)
{
ShowPlayerDialog(playerid, DIA_HELP_HAUS, DIALOG_STYLE_MSGBOX, "Hilfe-Haus", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 2)
{
ShowPlayerDialog(playerid, DIA_HELP_AUTO, DIALOG_STYLE_MSGBOX, "Hilfe-Auto", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 3)
{
ShowPlayerDialog(playerid, DIA_HELP_FRAKTION, DIALOG_STYLE_MSGBOX, "Hilfe-Fraktion", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 4)
{
ShowPlayerDialog(playerid, DIA_HELP_JOB, DIALOG_STYLE_MSGBOX, "Hilfe-Job", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
}
}
if (dialogid == DIA_HELP_ALLGEMEIN)
{
if (response == 0)
{
return 1;
}
else
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_LIST, "Hilfe", "Allgemein \nHaus \nAuto \nFraktion \nJob", "Auswählen", "Abbrechen");
return 1;
}
}
//rest