Inputtext abfragen

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 Leute,
    ich habe derzeit ein Problem. Ich versuche, mit einem Input-Dialog ein Wort abzufragen. Sollte dieses Wort mit einem vorher festgelegten übereinstimmen, so wird etwas getan. Wenn nicht, passiert auch nichts. Soweit theoretisch. Ich erklär mal kurz die Anwendung: Ich gehe in ein Pickup - es öffnet sich ein Input-Dialog. Ich gebe ein Wort ein, wenn es das richtige ist, dann öffnet sich ein Tor.
    Mit der Suchfunktion habe ich nur gefunden, wie man den eingegebenen Text ausgibt oder irgendwie weiter verarbeitet. So richtig hat mir das nicht geholfen.
    Probiert habe ich bisher:


    ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Sicherheitsschleuse","Code:","Senden","Abbrechen");


    (Wichtig sind die Zeilen 9 und 10!)

    //Hier ist 'abcd' das Passwort.


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == 1)
    {
    if(!response) return SendClientMessage(playerid, system, "Aktion abgebrochen.");

    new abcd; // In diesem Beispiel ist abcd das Passwort
    if(inputtext[4] == abcd)
    {
    new Float:x, Float:y, Float:z;
    GetObjectPos(gatedown, x, y, z);

    if(z == 1007.79998779)
    {
    MoveObject(gateup, 377.60000610,172.39999390,1015.59997559, 5); //Tor wird geschlossen
    MoveObject(gatedown, 377.60000610,172.39999390,1002.79998779, 5); //Tor wird geschlossen
    }
    if(z == 1002.79998779)
    {
    MoveObject(gateup, 377.60000610,172.39999390,1010.59997559, 5); //Tor wird geöffnet
    MoveObject(gatedown, 377.60000610,172.39999390,1007.79998779, 5); //Tor wird geöffnet
    }
    }
    return 1;
    }
    return 0;
    }


    Könnte mir jemand erklären, wie das geht?

  • Versuch es mal so.



    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == 1)
    {
    if(!response) return SendClientMessage(playerid, system, "Aktion abgebrochen.");
    if(strcmp(inputtext,"abcd",false))
    {
    new Float:x, Float:y, Float:z;
    GetObjectPos(gatedown, x, y, z);
    if(z == 1007.79998779)
    {
    MoveObject(gateup, 377.60000610,172.39999390,1015.59997559, 5); //Tor wird geschlossen
    MoveObject(gatedown, 377.60000610,172.39999390,1002.79998779, 5); //Tor wird geschlossen
    }
    if(z == 1002.79998779)
    {
    MoveObject(gateup, 377.60000610,172.39999390,1010.59997559, 5); //Tor wird geöffnet
    MoveObject(gatedown, 377.60000610,172.39999390,1007.79998779, 5); //Tor wird geöffnet
    }
    }
    return 1;
    }
    return 0;
    }