Hey Breadfishes',
ich habe ein Problem mit einem Dialog von mir!
Undzwar ist der der Dialog der mit /hilfe ausgelöst wird.
Wenn ich /hilfe eingebe, kommt ein Dialog (DIALOG_HILFE).
Wenn ich das erste listitem auswähle (allgemeine Hilfe) öffnet sich die MSGBOX mit der Hilfe.
Wenn ich jedoch das zweite, oder dritte listitem auswähle wird der Dialog (DIALOG_JOBS) aufeinmal als listitem genutzt und ich bekomme die Nachricht, dass ich den Job "x" habe!
Könnt ihr mir villeicht helfen dieses Dialog-Wirrwarr zu lösen?
Dialog Definierungen:
#define DIALOG_HILFE 17
#define DIALOG_JOBS 27
Befehl /hilfe und /jobs:
if(strcmp("/hilfe", cmdtext, true, 6) == 0)
{
if(IsPlayerConnected(playerid))
{
ShowPlayerDialog(playerid,DIALOG_HILFE,DIALOG_STYLE_LIST,"Hilfe System 2.1","Allgemeine Hilfe\nHaus Hilfe\nHandy Hilfe\nJob Hilfe","OK","");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED, "Du musst eingeloggt sein!");
return 1;
}
}
// Jobs Dialog
if(strcmp(cmdtext,"/jobs", true)==0)
{
if(IsPlayerInRangeOfPoint(playerid,4.0,-1845.5664,7.4096,1061.1436))
{
ShowPlayerDialog(playerid,27,DIALOG_STYLE_LIST,"Jobangebot 2014","Arbeitslosengeld I\nKündigen\nDrogendealer\nTaxifahrer\nPizzalieferant\nStuntman","Bestätigen","Abbrechen");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du bist nicht im Job-Center!");
return 1;
}
}
On Dialof Response (Hilfe und Jobs):
f(dialogid == DIALOG_HILFE)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid,DIALOG_HILFE1,DIALOG_STYLE_MSGBOX,"Allgemeine Hilfe","/stats /lizenzen (/liz) /kaufen (24/7) /kopfhörer /navi /report","OK","");
}
if(listitem == 1)
{
//ShowPlayerDialog(playerid,DIALOG_HH,DIALOG_STYLE_MSGBOX,"Haushilfe"," -> /kaufehaus - Damit kannst du dir ein Haus kaufen.\n -> /verkaufehaus - Damit kannst du dein Haus verkaufen.\n -> /haustuer - damit kannst du dein Haus auf-/zuschließen.\n -> /hausbetreten - Damtit kannst du dein Haus betreten. -> /hausverlassen - Damit kannst du dein Haus verlassen,\n","Weiter","Schließen");
}
if(listitem == 2)
{
ShowPlayerDialog(playerid,DIALOG_HILFE2,DIALOG_STYLE_MSGBOX,"Handy Hilfe","...","OK","");
}
if(listitem == 3)
{
ShowPlayerDialog(playerid,DIALOG_HILFE3,DIALOG_STYLE_LIST,"Job Hilfe","Drogendealer\nTaxifahrer\nPizzaliferant\nStuntman","OK","");
}
}
if(dialogid == DIALOG_HILFE1)
{
if(response)
{
ShowPlayerDialog(playerid,DIALOG_HILFE,DIALOG_STYLE_LIST,"Hilfe System 2.1","Allgemeine Hilfe\nHaus Hilfe\nHandy Hilfe\nJob Hilfe","OK","");
}
}
if(dialogid == DIALOG_HILFE2)
{
if(response)
{
ShowPlayerDialog(playerid,DIALOG_HILFE,DIALOG_STYLE_LIST,"Hilfe System 2.1","Allgemeine Hilfe\nHaus Hilfe\nHandy Hilfe\nJob Hilfe","OK","");
}
}
// Dialog Jobs
if(dialogid == DIALOG_JOBS)
{
if(response == 0)
{
SendClientMessage(playerid,COLOR_ORANGE,"Jobauswahl abgebrochen!");
return 1;
}
if(listitem == 0)
{
if(Spieler[playerid][Beruf] == 0)
{
Spieler[playerid][Beruf] = 1;
SendClientMessage(playerid,COLOR_YELLOW,"Du hast erfolgreich dein Arbeitslosengeld I beantragt!");
SendClientMessage(playerid,COLOR_YELLOW,"Du erhälst es ab sofort jeden Zahltag!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du musst arbeitslos sein um Arbeitslosengeld I zu beantragen!");
return 1;
}
}
}
if(listitem == 1)
{
if(Spieler[playerid][Beruf] > 0)
{
Spieler[playerid][Beruf] = 0;
SendClientMessage(playerid,COLOR_YELLOW,"Du hast deinen Job gekündigt und bist nun Arbeitslos!");
SendClientMessage(playerid,COLOR_YELLOW,"Du kannst Arbeitslosengeld I beantragen um ohne Arbeit Geld zu bekommen!");
EnableStuntBonusForPlayer(playerid,0);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du musst einen Job haben um zu kündigen!");
return 1;
}
}
if(listitem == 2)
{
if(Spieler[playerid][Beruf] == 0)
{
Spieler[playerid][Beruf] = 2;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Drogendealer!");
SendClientMessage(playerid,COLOR_YELLOW,"Unter dem Menü Jobhilfe (/hilfe) findest du alle Befehle!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du musst arbeitlos sein um einen neuen Job anzunehmen!");
return 1;
}
}
if(listitem == 3)
{
if(Spieler[playerid][Beruf] == 0)
{
Spieler[playerid][Beruf] = 3;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Taxifahrer!");
SendClientMessage(playerid,COLOR_YELLOW,"Unter dem Menü Jobhilfe (/hilfe) findest du alle Befehle!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du musst arbeitlos sein um einen neuen Job anzunehmen!");
return 1;
}
}
if(listitem == 4)
{
if(Spieler[playerid][Beruf] == 0)
{
Spieler[playerid][Beruf] = 4;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Pizzalieferant!");
SendClientMessage(playerid,COLOR_YELLOW,"Unter dem Menü Jobhilfe (/hilfe) findest du alle Befehle!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du musst arbeitlos sein um einen neuen Job anzunehmen!");
return 1;
}
}
if(listitem == 5)
{
if(Spieler[playerid][Beruf] == 0)
{
Spieler[playerid][Beruf] = 3;
EnableStuntBonusForPlayer(playerid, 1);
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Stuntman!");
SendClientMessage(playerid,COLOR_YELLOW,"Unter dem Menü Jobhilfe (/hilfe) findest du alle Befehle!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du musst arbeitlos sein um einen neuen Job anzunehmen!");
return 1;
}
}
Wenn ihr weitere Scriptteile braucht einfach bescheid sagen!
Über eure Hilfe würde ich mich sehr freuen!