Dialog Problem

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
  • Hallo Breadfish


    Ich habe versucht ein Dialog zu erstellen aber es klappt net ganz wo liegt den mein Fehler??



    #define NOTRUF 151



    if(strcmp(cmdtext,"/service",true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    ShowPlayerDialog(playerid, DIALOG_NOTRUF, DIALOG_STYLE_LIST, "Service", "Bus\nMedic\nMechaniker\nSAPD", "Auswahl", "Abbrechen");
    }
    }



    if(dialogid == DIALOG_NOTRUF)
    {
    if(response)
    {
    if(listitem == 0)


    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Bus rufen. Begib dich auf eine offene Straße!");
    return 1;
    }
    if(BusDrivers < 1)
    {
    SendClientMessage(playerid, COLOR_GREY, " Im Moment ist kein Busfahrer im Dienst, bitte versuch es Später erneut !");
    return 1;
    }
    if(TransportDuty[playerid] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Im Moment kannst du keinen Bus rufen !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s braucht ein Bus. Gib (/accept bus) ein, um anzunehmen.)", sendername);
    SendJobMessage(14, TEAM_AZTECAS_COLOR, string);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast einen Bus Fahrer gerufen,Warte auf eine Antwort.");
    BusCall = playerid;
    return 1;
    }
    }
    }


    if(listitem == 1)
    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Notruf absetzen. Begib dich auf eine offene Straße!");
    return 1;
    }
    if(TowTruckers < 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Es ist kein Mechaniker im Dienst, bitte versuch es Später erneut!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s braucht einen Mechaniker. (gib /accept mechaniker ein um den Anruf anzunehmen)", sendername);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 24 || PlayerInfo[i][pLeader] == 24)
    {
    SendClientMessage(i, ORANGE, string);
    }
    }
    }
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast einen Mechaniker gerufen, warte auf eine Antwort.");
    MechanicCall = playerid;
    return 1;
    }
    }
    }
    if(listitem == 2)
    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Notruf absetzen. Begib dich auf eine offene Straße!");
    return 1;
    }
    if(Medics < 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Es ist kein Medic im Dienst, bitte versuch es Später erneut!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s braucht einen Arzt. (gib /accept medic ein um den Anruf anzunehmen)", sendername);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 4 || PlayerInfo[i][pLeader] == 4)
    {
    SendClientMessage(i, TEAM_AZTECAS_COLOR, string);
    }
    }
    }
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast das Krankenhaus gerufen, warte auf eine Antwort.");
    MedicCall = playerid;
    return 1;
    }
    }
    }
    if(listitem == 3)
    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Notruf absetzen. Begib dich auf eine offene Straße!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s hat einen Streifenwagen Angefordert. gib /accept SAPD ein um den Auftrag anzunehmen)", sendername);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 1 || PlayerInfo[i][pLeader] == 1)
    {
    SendClientMessage(i, TEAM_AZTECAS_COLOR, string);
    }
    }
    }
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast nach einem Streifenwagen gerufen, warte auf eine Antwort.");
    CopCall = playerid;
    return 1;
    }
    }
    }
    }
    }



    Mein Script crasht sofort halt


    MFG

  • Achso...dein Compiler schmiert ab xD Dachte dein Server crasht...^^


    Ja, das ist leider nicht so wirklich gut hier eingerückt...allerdings, wenn ich die Suchfunktion mal grob verwende sehe ich, dass es 25 { gibt und 33 }.


    Da stimmt wohl irgendwas nicht :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • kannst du mir zeigen wie ich den dialog richtig einbaue ?



    if(dialogid == DIALOG_NOTRUF)
    {
    if(response)
    {
    if(listitem == 0)


    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Bus rufen. Begib dich auf eine offene Straße!");
    return 1;
    }
    if(BusDrivers < 1)
    {
    SendClientMessage(playerid, COLOR_GREY, " Im Moment ist kein Busfahrer im Dienst, bitte versuch es Später erneut !");
    return 1;
    }
    if(TransportDuty[playerid] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Im Moment kannst du keinen Bus rufen !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s braucht ein Bus. Gib (/accept bus) ein, um anzunehmen.)", sendername);
    SendJobMessage(14, TEAM_AZTECAS_COLOR, string);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast einen Bus Fahrer gerufen,Warte auf eine Antwort.");
    BusCall = playerid;
    return 1;
    }
    }
    }


    if(listitem == 1)
    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Notruf absetzen. Begib dich auf eine offene Straße!");
    return 1;
    }
    if(TowTruckers < 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Es ist kein Mechaniker im Dienst, bitte versuch es Später erneut!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s braucht einen Mechaniker. (gib /accept mechaniker ein um den Anruf anzunehmen)", sendername);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 24 || PlayerInfo[i][pLeader] == 24)
    {
    SendClientMessage(i, ORANGE, string);
    }
    }
    }
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast einen Mechaniker gerufen, warte auf eine Antwort.");
    MechanicCall = playerid;
    return 1;
    }
    }
    }
    if(listitem == 2)
    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Notruf absetzen. Begib dich auf eine offene Straße!");
    return 1;
    }
    if(Medics < 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Es ist kein Medic im Dienst, bitte versuch es Später erneut!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s braucht einen Arzt. (gib /accept medic ein um den Anruf anzunehmen)", sendername);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 4 || PlayerInfo[i][pLeader] == 4)
    {
    SendClientMessage(i, TEAM_AZTECAS_COLOR, string);
    }
    }
    }
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast das Krankenhaus gerufen, warte auf eine Antwort.");
    MedicCall = playerid;
    return 1;
    }
    }
    }
    if(listitem == 3)
    {
    if(GetPlayerInterior(playerid) != 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Von hier aus kannst du keinen Notruf absetzen. Begib dich auf eine offene Straße!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "** %s hat einen Streifenwagen Angefordert. gib /accept SAPDPolizei ein um den Auftrag anzunehmen)", sendername);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pMember] == 1 || PlayerInfo[i][pLeader] == 1)
    {
    SendClientMessage(i, TEAM_AZTECAS_COLOR, string);
    }
    }
    }
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast nach einem Streifenwagen gerufen, warte auf eine Antwort.");
    CopCall = playerid;
    return 1;
    }
    }
    }
    }
    }