Dialog + Inputtext 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
  • Guten Abend, liebe Community.


    Da ich seit neuestem wieder voll und ganz beim Scripten dabei bin, brauche ich nun wieder etwas Hilfe. Durch die Pause die ich hatte, habe ich etwas Erfahrung verloren, und hänge derzeit an einem kleinen Problem.
    Das ganze passiert, bei meinem Tutorial wo man das Geschlecht aussuchen muss. Mann muss im Feld entweder "MANN" oder "FRAU" schreiben. Dabei ist es egal obs groß oder klein geschrieben wird. (Soll auch so sein)


    Nun denn, wenn ich nun im Spiel einfach auf "Weiter" drücke, dann wählt das System automatisch "Männlich" aus, obwohl ich garnichts eingetippt habe.


    Hier ein paar Zeilen:

    //Dort wo der Dialog angezeigt wird
    ShowPlayerDialog(playerid, DIALOG_TUT_1, DIALOG_STYLE_INPUT, COLOR_HEX_LIGHTBLUE"Tutorial: Geschlecht", COLOR_HEX_WHITE"Bitte gebe nun dein Geschlecht ein.\n \nTipp: Gebe entweder "COLOR_HEX_ORANGE"MANN "COLOR_HEX_WHITE"oder "COLOR_HEX_ORANGE"FRAU "COLOR_HEX_WHITE"ein.", "Absenden", "Abbrechen");



    //OnDialogResponse
    case DIALOG_TUT_1:
    {
    if(response)
    {
    if(strcmp(inputtext, "MANN", true) == 0)
    {
    Spieler[playerid][pSex] = 1;
    new string[256];
    format(string, sizeof(string), COLOR_HEX_WHITE"Okay, du bist also "COLOR_HEX_ORANGE"Männlich.\n \n"COLOR_HEX_WHITE"Bitte lese dir nun die folgenden Fragen durch und beantworte sie!");
    ShowPlayerDialog(playerid, DIALOG_TUT_2, DIALOG_STYLE_MSGBOX, COLOR_HEX_LIGHTBLUE"Tutorial: Fragen",string, "Weiter", "Abbrechen");
    SetPlayerCameraPos(playerid, 447.5718, -1750.7904, 17.8588); //PnS Verona Beach
    SetPlayerCameraLookAt(playerid, 448.5773, -1750.8137, 17.8939);
    SetPlayerPos(playerid, 483.1288, -1762.5616, 7.1238);
    return 1;
    }
    else if(strcmp(inputtext, "FRAU", true) == 0)
    {
    Spieler[playerid][pSex] = 2;
    new string[256];
    format(string, sizeof(string), COLOR_HEX_WHITE"Okay, du bist also "COLOR_HEX_ORANGE"Weiblich.\n \n"COLOR_HEX_WHITE"Bitte lese dir nun die folgenden Fragen durch und beantworte sie!");
    ShowPlayerDialog(playerid, DIALOG_TUT_2, DIALOG_STYLE_MSGBOX, COLOR_HEX_LIGHTBLUE"Tutorial: Fragen",string, "Weiter", "Abbrechen");
    SetPlayerCameraPos(playerid, 447.5718, -1750.7904, 17.8588); //PnS Verona Beach
    SetPlayerCameraLookAt(playerid, 448.5773, -1750.8137, 17.8939);
    SetPlayerPos(playerid, 483.1288, -1762.5616, 7.1238);
    return 1;
    }
    ShowPlayerDialog(playerid, DIALOG_TUT_1, DIALOG_STYLE_INPUT, COLOR_HEX_LIGHTBLUE"Tutorial: Geschlecht", COLOR_HEX_WHITE"Bitte gebe nun dein Geschlecht ein.\n \nTipp: Gebe entweder "COLOR_HEX_ORANGE"MANN "COLOR_HEX_WHITE"oder "COLOR_HEX_ORANGE"FRAU "COLOR_HEX_WHITE"ein.", "Absenden", "Abbrechen");
    return 1;
    }
    if(!response)
    {
    SendClientMessage(playerid, COLOR_GREY, "Da du das Tutorial nicht machen wolltest, wurdest du gekickt. Versuche es später erneut!");
    Kick(playerid);
    return 1;
    }
    }


    Ich hoffe, dass ihr mir helfen könntet.


    Mit freundlichen Grüßen, ReyDz.


    //Edit


    Kurze Information:
    Habe es bereits auch schon versucht, indem ich die returns etc. weggelassen habe. Aber komisch ist:
    Wenn ich z.B reinschreibe "BLUBBLUB" o.ä dann nimmt er das nicht an und "kickt" mich zurück zum Dialog. Nur wenn ich einfach auf Weiter drücke.

  • Mhm, der Code an sich sieht eigentlich richtig aus ^^


    Probier einfach mal sowas:


    new test[10];
    strmid(text, inputtext, 0, strlen(inputtext), 10);
    if(strcmp(text, "Mann", true) == 0)


    mfg. :thumbup:

    ast2ufdyxkb1.png


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