new
dList[4][] = //--Deklaráljuk a listát két dimenziós tömbben
{
\"Krumpli\",
\"Dió \" ,
\"Polc\",
\"Futni\"
},
dText[768], //--Majd a megformázandó karakterláncot
        
;
public OnGameModeInit()
{
        for(new i; i < sizeof dList; ++i) //--Egy ciklust lefuttatunk, ami összehegeszti a \'dText\' változóba a \'dList\' dolgait
{
strcat(dText, dList);
strcat(dText, \"\\n\");
}
        //--Meg is tudjuk számolni, hány listitemünk van eddig:
printf(\"Listitemek: %d darab\", sizeof dList);
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 10000 && response) //--Megvizsgáljuk a dialog ID-jét, és hogy van-e rá válasz (0,1)
{
                if(0 <= listitem < sizeof dList) //--Ha nagyobb vagy egyenlõ nullával, de kisebb mint a \'dList\' darabszáma
        {
                        static bufu[128]; //--Deklarálás, ez lesz majd a formázandó karakterlánc
   if(!listitem)
   {
      format(bufu, sizeof bufu , \"[iNFO] Kiválasztott sor: %s\", dList[listitem]); //--Formázás
   }
   else
      {
      format(bufu, sizeof bufu , \"[iNFO] Kiválasztott sor: %s\", dList[listitem]); //--Megint formázás 
       }
                        SendClientMessage(playerid, 0xFFFFFFFF, bufu); //--Kiíratjuk a \'bufu\' karakterláncot
                }
        }
        return 1;
}
 Ez meg majd kell egy parancshoz: 
ShowPlayerDialog(playerid, 10000, 2, \"Válassz!\", dText, \"Mehet!\", \"\");
 Reményeim szerint mindent leírtam érthetõen, ha van egyszerûbb megoldás, szívesen várom HSZ-ben, és kiegészítem! 

UP: Nincs tesztelve