Dialog frage

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
  • Hey, ich habe eine Frage undzwar mache ich gerade ein Taxi system das so geht:
    Id steigt in das Auto von Playerid, Playerid gibt /Taxi Id ein und nun erscheint bei Id eine Input Box, darein schreibt er den Ort wohin er will.
    Playerid bekommt dan die Nachricht in einer MSG Box wo Id in das Input geschrieben hat.
    Nun geht das Taxi Fahren los.
    Hier mein Bisheriger Code.
    ocmd:taxi(playerid, params[])
    {
    new id;
    if (sscanf(params, "u",id)) SendClientMessage(playerid, COLOR_GREY, "/taxi [SpielerID]");
    else if(GetPVarInt(id, "Job") == 3) SendClientMessage(playerid, COLOR_GREY, "Du kannst keinen Taxi Fahrer für Geld Transportieren!");
    else if (id == INVALID_PLAYER_ID || id == playerid || IsPlayerNPC(id)) SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler kann nicht Transportiert werden.");
    else if(GetPVarInt(playerid, "Job") != 3) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Taxi Fahrer");
    else if(GetPVarInt(playerid, "Rang") < 2) return SendClientMessage(playerid, COLOR_RED, "Du hast einen zu niedrigen Rang!");
    else
    {
    ShowPlayerDialog(id,TaxiOrt,DIALOG_STYLE_INPUT,"Wohin willst du?","Schreibe hier rein wohin du Fahren möchtest.","Fahren","Abbrechen");
    }
    return 1;
    }
    So nun das Input was bei Id kommen soll, hier mal der Code(noch nichts gemacht)
    if(dialogid == TaxiOrt)
    {
    if(response == 0)
    {
    RemovePlayerFromVehicle(id);
    SendClientMessage(playerid, COLOR_SERVER, "Du hast das Taxi Fahren lassen, du musst nun Laufen!");
    }
    if(response == 1)
    {
    new MSG = strval(inputtext);

    }
    }
    Wie mache ich jetzt das der Text was in der Input von Id steht bei Playerid in der MSG steht??
    Hilfe ;D


  • if(dialogid == TaxiOrt)
    {
    if(response == 0)
    {
    RemovePlayerFromVehicle(id);
    SendClientMessage(playerid, COLOR_SERVER, "Du hast das Taxi Fahren lassen, du musst nun Laufen!");
    }
    if(response == 1)
    {
    new string[55];
    format(string, sizeof(string), "%s", strval(inputtext));
    SendClientMessage(playerid, COLOR_SERVER, string);
    }
    }



    Vllt. so? :rolleyes:

  • Möchte aber das Der Taxi Fahrer den Zivilisten Fahren kann also der Taxi fahrer macht /taxi ID dan öffnet sich beim Zivilisten das Dialog mit Input.
    Dan macht der Zivilisten seinen Ort in das Dialog input und dan soll der Taxi Fahrer eine MSG Box(Auch Dialog) mit dem text von dem Zivilisten bekommen.
    Und ja ich weiß jetzt nicht muss ich das mit einer for schleife machen?

  • Achsoo..
    Also das der Taxifahrer den Inputtext von dem Dialog "TaxiOrt" gesendet bekommt?
    Wenn ja dann:

    ocmd:taxi(playerid, params[])
    {
    new id;
    if (sscanf(params, "u",id)) SendClientMessage(playerid, COLOR_GREY, "/taxi [SpielerID]");
    else if(GetPVarInt(id, "Job") == 3) SendClientMessage(playerid, COLOR_GREY, "Du kannst keinen Taxi Fahrer für Geld Transportieren!");
    else if (id == INVALID_PLAYER_ID || id == playerid || IsPlayerNPC(id)) SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler kann nicht Transportiert werden.");
    else if(GetPVarInt(playerid, "Job") != 3) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Taxi Fahrer");
    else if(GetPVarInt(playerid, "Rang") < 2) return SendClientMessage(playerid, COLOR_RED, "Du hast einen zu niedrigen Rang!");
    else
    {
    new name[17];
    GetPlayerName(playerid, name, 17);
    SetPVarInt(id, "TaxiDriverName", name); //Keine Ahnung ob das funktioniert :s
    ShowPlayerDialog(id,TaxiOrt,DIALOG_STYLE_INPUT,"Wohin willst du?","Schreibe hier rein wohin du Fahren möchtest.","Fahren","Abbrechen");
    }


    return 1;
    }




    if(dialogid == TaxiOrt)
    {
    if(response == 0)
    {
    RemovePlayerFromVehicle(id);
    SendClientMessage(playerid, COLOR_SERVER, "Du hast das Taxi Fahren lassen, du musst nun Laufen!");
    }
    if(response == 1)
    {
    new string[55];
    format(string, sizeof(string), "%s", strval(inputtext));
    SendClientMessage(GetPVarInt(playerid, "TaxiDriverName", name), COLOR_SERVER, string);
    }
    }



    Ich bin mir ziemlich unsicher ob es funktioniert, aber einen Versuch ist es Wert.

  • Ich glaube zwar das es besser geht aber naya ich versuchs :D
    //Edit:
    Nein geht nicht.
    War auch irgendwie Vorauszusehen.
    Naya weitere Hilfe wäre ganz nett

    Einmal editiert, zuletzt von .Art. ()