Dialog funktioniert nicht

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Beim Dialog Handy : Er wird zwar abgerufen doch wenn man irgendwo draufklickt passiert nichts
    dies auch bei Dialog Service


    {
    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    switch(DIALOG_HANDY)
    {
    case 1:
    {
    if(!response)
    {
    SendClientMessage(playerid, 0xFF0000FF, "You cancelled.");
    return 1;
    }


    switch(listitem)
    {
    case 0:
    {
    if(GetPVarInt(playerid,"HandyAn") == 1)
    {
    SendClientMessage(playerid,GREEN,"Du hast dein Handy angeschaltet!");
    SetPVarInt(playerid,"HandyAn",0);
    }
    }
    case 1:
    {
    if(GetPVarInt(playerid,"HandyAn") == 0)
    {
    SendClientMessage(playerid,ROT,"Du hast dein Handy ausgeschaltet!");
    SetPVarInt(playerid,"HandyAn",1);
    }
    }
    case 2:
    {
    ShowPlayerDialog(playerid,DIALOG_SERVICE,2,"Handy System","Polizei\nAdac\nMedic","Okay","Zurück");
    }
    // Add the rest of your listitems for dialog 1 here


    }


    }
    }
    switch(DIALOG_SERVICE)
    {
    case 1:
    {
    if(!response)
    {
    ShowPlayerDialog(playerid,DIALOG_HANDY,2,"Handy System","Polizei\nAdac\nMedic","Okay","Zurück");
    return 1;
    }


    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,HELLBLAU,"Du hast das Polizei Revier alamiert!");
    }
    case 1:
    {
    SendClientMessage(playerid,GELB,"Du hast den Adac alamiert!");
    }
    case 2:
    {
    SendClientMessage(playerid,ROT,"Du hast das Medical Department alamiert!");
    }


    }


    }
    }
    }
    return 1;
    }

  • public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    if(dialogid == DIALOG_HANDY)
    {
    if(response == 1)
    {
    switch (listitem)
    {
    case 0:
    {
    if(GetPVarInt(playerid,"HandyAn") == 0)
    {
    SendClientMessage(playerid,GREEN,"Du hast dein Handy ausgeschaltet!");
    SetPVarInt(playerid,"HandyAn",0);
    }
    else
    {
    if(GetPVarInt(playerid,"HandyAn") == 1)
    {
    SendClientMessage(playerid,GREEN,"Du hast dein Handy angeschaltet!");
    SetPVarInt(playerid,"HandyAn",1);
    }
    }


    }
    case 1:
    {
    ShowPlayerDialog(playerid,DIALOG_SERVICE,2,"Handy System","Polizei\nAdac\nMedic","Okay","Zurück");
    }
    case 2:
    {


    }


    }
    }
    }
    }
    if(dialogid == DIALOG_SERVICE)
    {
    if(response == 1)
    {
    switch (listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,HELLBLAU,"Du hast das Polizei Revier alamiert!");
    }
    case 1:
    {
    SendClientMessage(playerid,GELB,"Du hast den Adac alamiert!");
    }
    case 2:
    {
    SendClientMessage(playerid,ROT,"Du hast das Medical Department alamiert!");
    }
    }
    }
    }
    return 1;
    }
    hab jetzt so , funkt aber trozdem nicht.

  • Sorry, wenn das jetzt ein wenig hart klingen mag, aber das Login und Register Teil ist vollkommener Käse, sprich, das kann schon vom Aufbau her nicht funktionieren, selbst wenn es läuft.
    Schau dir am besten dazu mal das Tutorial von BlackFox an ;)



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Sorry, wenn das jetzt ein wenig hart klingen mag, aber das Login und Register Teil ist vollkommener Käse, sprich, das kann schon vom Aufbau her nicht funktionieren, selbst wenn es läuft.
    Schau dir am besten dazu mal das Tutorial von BlackFox an ;)


    Es funktioniert & natürlich werde ich es ausbauen.
    Desweiteren darum geht es garnicht.

  • Versuch mal so


    if(dialogid==DIALOG_HANDY && response==1)
    {
    if(listitem == 0)
    {
    // Hier im Dialog die 1te Zeile
    }
    if(listitem == 1)
    {
    // Hier im Dialog die 2te Zeile
    }
    }



    musst du deinen Befehl anpassen..