Du musst die Dialoge verschieden benennen.
Außerdem musst du den Dialog auch abfragen, um Aktionen bei "response" zu setzen.
Btw: Benutz zum Einrücken lieber Tab anstatt Leertaste.
-----
Ganz oben unter die Includes musst du noch DIALOG_WAFFENSHOPLSPISTOLEN und DIALOG_WAFFENSHOPLSNAHMAPF definen.
Und
ShowPlayerDialog(playerid,DIALOG_WAFFENSHOPLS,DIALOG_STYLE_LIST,"Waffen Menü","Nahkampfwaffen\nPistolen","Weiter","Abbruch");
solltest du je nach dem wie man bei dir Waffen kauft z.B. unter OnPlayerCommandText oder OnPlayerKeyStateChange setzen.
Und wenn er dabei noch irgendwo in der Nähe sein muss, IsPlayerInRangeOfPoint benutzen.
if(dialogid == DIALOG_WAFFENSHOPLS)
{
if(response == 1)
{
if(listitem == 0)//Nahkampfwaffen
{
ShowPlayerDialog(playerid,DIALOG_WAFFENSHOPLSNAHKAMPF,DIALOG_STYLE_LIST,"Nahkampfwaffen","Schlagring: PREIS\nMesser: PREIS\nKatana: PREIS\n","Kaufen","Zurück");
}
if(listitem == 1)//Pistolen
{
ShowPlayerDialog(playerid,DIALOG_WAFFENSHOPLSPISTOLEN,DIALOG_STYLE_LIST,"Pistolen","9MM: PREIS\nSilenced 9MM: PREIS\nDesert Eagle: PREIS\n","Kaufen","Zurück");
}
}
else
{
SendClientMessage(playerid,ROT,"Vielleicht überlegst du es dir.");
return 1;
}
}
if(dialogid==DIALOG_WAFFENSHOPLSNAHKAMPF)//Nahkampfwaffen
{
if(response)
{
if(listitem == 0)
{
GivePlayerWeapon(playerid,1,1);
SendClientMessage(playerid,BLAU,"Du hast dir einen Schlagring gekauft!");
}
}
else
{
ShowPlayerDialog(playerid,DIALOG_WAFFENSHOPLS,DIALOG_STYLE_LIST,"Waffen Menü","Nahkampfwaffen\nPistolen","Weiter","Abbruch");
}
}
if(dialogid==DIALOG_WAFFENSHOPLSPISTOLEN)//Pistolen
{
if(response)
{
if(listitem == 0)
{
//Hier das Geld abziehen und die Waffen vergeben
}
}
else
{
ShowPlayerDialog(playerid,DIALOG_WAFFENSHOPLS,DIALOG_STYLE_LIST,"Waffen Menü","Nahkampfwaffen\nPistolen","Weiter","Abbruch");
}
}