Hilfer mit inputtext unter OnDialogResponse

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


    Habe ein kleines Problem mit inputtext unter OnDialogResponse...


    Mein Code
    donate[playerid][dinput] = inputtext;


    Der string donate[playerid][dinput] ist 128 groß.
    und als Error bekomme ich folgendes:



    : error 047: array sizes do not match, or destination array is too small


    Ich hoffe mir kann dabei jemand helfen.


    MFG
    Mythen

  • donate[playerid][dinput] = strval(inputtext);
    Müsste einen Fehler ausgeben.
    "Array must be indexed" wahrscheinlich.


    Mythen hat nicht mal erwähnt, ob der inputtext eine Zahl sein soll.
    donate[playerid][dinput] = inputtext;
    Das würde nur funktionieren , wenn dinput die Gleiche Größe hat wie inputtext. Da die Größe von inputtext aber unbekannt ist, klappt es nicht.
    Die einfachste Lösung wäre format() . Die Funktion strcat wäre auch möglich ( Gibt wahrscheinlich noch ein paar mehr ).


    format( donate[playerid][dinput] , 128 , inputtext );

  • Habs jetzt so gemacht:

    format(donate[playerid][dinput],128,inputtext);


    doch wenn dan in inputtext nur Text steht wie z.b. TextText
    gibt er wieder diese komischen ÿ aus.
    Doch wenn dort dan z.b. sowas steht: text1
    gibt er auch text1 zurück.
    Hat da jemand noch ne lösung?


    EDIT:
    Auch wenn man text1text schreibt kommen diese ÿ


    EDIT2:


    Da ich mit der Variante nicht weiterkomme.
    Ne Andere Frage.
    Weiß jemand wie man das hier löst?
    Error:
    : error 033: array must be indexed (variable "inputtext")


    Zeile:

    if(inputtext == donate[playerid][dcode]) // ist die Zeile Hier
    {
    new str[128];
    format(str,sizeof(str),"Du hast %s eingegeben",inputtext);
    SendClientMessage(playerid,ROT,str);
    }

    Einmal editiert, zuletzt von Akizo ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen