Input zu lang

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 zusammen,


    ich möchte ein Tutorial Scripten mit

    new string[700];
    format(string,sizeof(string),"----ca. 650 Zeichen langer TEXT und für neuer Zeile \n benutzt-----");
    ShowPlayerDialog(playerid,DIALOG_TUT_1,DIALOG_STYLE_MSGBOX,string,"Weiter","Abbruch");


    Doch der Compiler spuckt dies hier aus:

    C:\Users\Christian\Desktop\GTA Server\gamemodes\BDR2014.pwn(960) : error 075: input line too long (after substitutions)
    C:\Users\Christian\Desktop\GTA Server\gamemodes\BDR2014.pwn(961) : error 037: invalid string (possibly non-terminated string)
    C:\Users\Christian\Desktop\GTA Server\gamemodes\BDR2014.pwn(961) : error 017: undefined symbol "Es"
    C:\Users\Christian\Desktop\GTA Server\gamemodes\BDR2014.pwn(961) : error 017: undefined symbol "folgt"
    C:\Users\Christian\Desktop\GTA Server\gamemodes\BDR2014.pwn(961) : fatal error 107: too many error messages on one line


    Dachte ein string darf in SAMP 0.3x 1024 Zeichen lang sein?
    Kann mir da jemand helfen?


    Herzlichen Dank


    mfg black

  • Benutze dafür Strcat - SA-MP Wiki.
    Mit der Funktion kannst du strings cuten, sprich schneiden. Ein Beispiel findest du in der SA:MP Wiki. Hier auch nochmal ein Beispiel:

    new string[700];
    format(string,sizeof(string),"Willkommen im Tutorial!\n");
    strcat(string,"Es werden dir zunächst einige Grundlagen erklärt.\nBitte passe gut auf und lese dir alles gründlich durch.");
    ShowPlayerDialog(playerid,DIALOG_TUT_1,DIALOG_STYLE_MSGBOX,string,"Weiter","Abbruch");


    Darüber hinaus möchte ich dich informieren das Aufgrund der Bildschirmauflösung mancher Spieler, der Dialog nicht zwingend Vollständig angezeigt wird. Er ragt über den Bildschirmrand.
    Liebe Grüße, Stew! :)

  • Die "Input Line" kann man leicht verkürzen, indem man mehrzeilig schreibt (Wird hier im Forum-Highlighting jedoch falsch gehighlighted!):



    format(string, sizeof(string), "First few characters ... \
    second line ... \
    and so on ...");

  • @Stewart_Godwin:
    Danke für deine schnelle und hilfreiche Antwort, hat hervorragen funktioniert. Das mit dem Dialog kann ich dann noch testen, habe einen 2. PC der einen sehr kleinen Bildschirm hat. Danke für den Hinweis.


    MFG Black