Brauche Hilfe bei String!

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 Leute ich brauche Hilfe bei meinem KFZ-System!
    Habe ein Problem mir meinem Kennzeichen System!


    Also zuerst hab ich 2 Dialoge erstellt mit denen man sich ein Nummernschild zuweißen kann!
    Im ersten 2 Buchstaben und im zweitem bis zu 4 Zahlen!


    Das mit den Zahlen klappt alles! Aber die Buchstaben werden mir nicht angezeigt! Liegt es am Variablen Typ?
    Brauche dringend Hilfe!


    new kfzzahlen;
    new kfzbuchstaben;


    if(dialogid == KFZ_BUCHSTABEN_DIALOG)
    {
    if(response)
    {
    if (strlen(inputtext) > 2)
    {
    ShowPlayerDialog(playerid,KFZ_BUCHSTABEN_DIALOG,DIALOG_STYLE_INPUT,"TÜV","Gebe hier genau 2 Buchstaben ein!\nMit diesen Buchstaben wird dein Nummernschild beginnen!","Weiter","Abbrechen");
    SendClientMessage(playerid, COLOR_RED, "EINGABEFEHLER: Du darfst maximal 2 Buchstaben eingeben!");
    }
    if (strlen(inputtext) < 2)
    {
    ShowPlayerDialog(playerid,KFZ_BUCHSTABEN_DIALOG,DIALOG_STYLE_INPUT,"TÜV","Gebe hier genau 2 Buchstaben ein!\nMit diesen Buchstaben wird dein Nummernschild beginnen!","Weiter","Abbrechen");
    SendClientMessage(playerid, COLOR_RED, "EINGABEFEHLER: Du musst genau 2 Buchstaben eingeben, nicht mehr und nicht weniger!");
    }
    if (strlen(inputtext) < 1)
    {
    ShowPlayerDialog(playerid,KFZ_BUCHSTABEN_DIALOG,DIALOG_STYLE_INPUT,"TÜV","Gebe hier genau 2 Buchstaben ein!\nMit diesen Buchstaben wird dein Nummernschild beginnen!","Weiter","Abbrechen");
    SendClientMessage(playerid, COLOR_RED, "EINGABEFEHLER: Du musst genau 2 Buchstaben eingeben, nicht mehr und nicht weniger!");
    }
    kfzbuchstaben = strval(inputtext);
    ShowPlayerDialog(playerid,KFZ_ZAHLEN_DIALOG,DIALOG_STYLE_INPUT,"TÜV","Gebe hier maximal 4 und minimal 1 Zahl ein!\nMit dieser Zahl wird dein Nummernschild enden!","Einzahlen","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Vorgang abgebrochen!");
    }
    }


    Wäre nett wenn ihr mir helfen würdet!

  • Okay thx schonmal liegt also am Variablentyp!


    Array-Index fehlt (bspw. Array[1], Name: "kfzbuchstaben")


    Kommt jetzt! Ich weiß zwar wie ich z.B. jedem einzelnem Array einen Buchstaben zuweisen kann!
    Aber wie weiße ich dem gesammtem Array denn jetzt den inputtext zu?

  • Klappt leider nicht! Hier nochmal der Code für die Zahlen und das erstellen des Nummernschildes vllt liegt der Fehler ja darin!


    if(dialogid == KFZ_ZAHLEN_DIALOG)
    {
    if(response)
    {
    if (strlen(inputtext) < 1)
    {
    ShowPlayerDialog(playerid,KFZ_ZAHLEN_DIALOG,DIALOG_STYLE_INPUT,"TÜV","Gebe hier maximal 4 und minimal 1 Zahl ein!\nMit dieser Zahl wird dein Nummernschild enden!","Einzahlen","Abbrechen");
    SendClientMessage(playerid, COLOR_RED, "EINGABEFEHLER: Du musst mindestens eine Zahl eingeben!");
    }
    if (strlen(inputtext) > 4)
    {
    ShowPlayerDialog(playerid,KFZ_ZAHLEN_DIALOG,DIALOG_STYLE_INPUT,"TÜV","Gebe hier maximal 4 und minimal 1 Zahl ein!\nMit dieser Zahl wird dein Nummernschild enden!","Einzahlen","Abbrechen");
    SendClientMessage(playerid, COLOR_RED, "EINGABEFEHLER: Du darfst maximal 4 Zahlen eingeben!");
    }
    kfzzahlen = strval(inputtext);
    new kennzeichen[126];
    format(kennzeichen,sizeof(kennzeichen),"%s - %i", kfzbuchstaben, kfzzahlen);
    new vid = GetPlayerVehicleID(playerid);
    SetVehicleNumberPlate(vid,kennzeichen);
    SetVehicleToRespawn(vid);
    new Float: X,Float: Y, Float: Z;
    GetPlayerPos(playerid,X,Y,Z);
    SetVehiclePos(vid,X,Y,Z);
    PutPlayerInVehicle(playerid,vid,0);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Vorgang abgebrochen!");
    }
    }

  • Was klappt nicht? kommen fehler oder erscheint das nummernschild einfach nicht?


    vielleicht musst du auf die 8er länge schauen ;) ein nummernschild darf, glaube ich, nur eine länge von 8 Zeichen haben und du hast so schon 9, also 2 zahlen + 1 leerschlag + 1 minus + 1 leerschlag + 4 Buchstaben.


    machs sonst so


    format(kennzeichen,sizeof(kennzeichen),"%s-%i", kfzbuchstaben, kfzzahlen);

  • Okay hab jetzt mal zum testen das hier eingefügt!


    SendClientMessage(playerid, COLOR_RED, kfzbuchstaben);


    Wenn man es nun ausführt steht nichts im Chat! Man sieht zwar das eine zweile hinzugefügt wird aber diese ist leer!