[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Ganz ganz schlechte Idee, selbst die Plugins compilen zu wollen, wegen so einem Quatsch.


    Am Einfachsten wäre n Makro, wo du die Funktion umbennenst und die Parameter tauschst oder du Hookst die Funktion und änderst da die Parameter Reihenfolge.


    Ich kann später mal n Codebeispiel geben, wenn gewünscht, gerade aber unterwegs. (Kannst ja mal suchen, gibt hier viele Beispiele)

    oh okay dachte das wäre einfach aber gut da gebe ich dir dann recht


    es ist halt sehr nervig wenn man eine map hat und man ständig den materialindex nach vorne holen muss vor dem text bei 350x texte sehr belastend

    damals war es mal richtig...

    wäre nett wenn du mir später einen Makro dafür gibst wenn es das auch behebet das ich immer eine zahl in jeden text umpacken muss um den error los zu bekommen ^^

  • Beitrag von Bulls (AL) ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Fast richtig, aber nur fast 😅 ().
  • Code
    #define SetDynamicObjectMaterialText SetDynamicObjectMaterialTextEx
    
    stock SetDynamicObjectMaterialTextEx(STREAMER_TAG_OBJECT:objectid, const text[], materialindex, materialsize = OBJECT_MATERIAL_SIZE_256x128, const fontface[] = "Arial", fontsize = 24, bold = 1, fontcolor = 0xFFFFFFFF, backcolor = 0, textalignment = 0)
    {
        return SetDynamicObjectMaterialText(objectid, materialindex, text, materialsize, fontface, fontsize, bold, fontcolor, backcolor, textalignment);
    }

    Mach das so und schon hast du das gleiche Ergebnis, ohne irgendwelche Includes bearbeiten oder Plugins recompilen zu müssen.

    Code
    error 035: argument type mismatch (argument 2)

    bekomme ich hier

    Code
    return SetDynamicObjectMaterialText(objectid, materialindex, text, materialsize, fontface, fontsize, bold, fontcolor, backcolor, textalignment);
  • Mach das so und schon hast du das gleiche Ergebnis, ohne irgendwelche Includes bearbeiten oder Plugins recompilen zu müssen.

    Nein, so funktioniert es nicht ganz, da SetDynamicObjectMaterialText durch das Makro auch in der Funktion überschrieben wird, somit hätten wir hier eine unendliche Rekursion und einen Parameter Fehler 😅


    ast2ufdyxkb1.png


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

  • Nein, so funktioniert es nicht ganz, da SetDynamicObjectMaterialText durch das Makro auch in der Funktion überschrieben wird, somit hätten wir hier eine unendliche Rekursion und einen Parameter Fehler 😅


    Habe ich keine fehler aber nun bekomme ich beim starten vom script dieses

    Code
    //cancel


    korektur war mein fehler aber nun gibt es im script diesen warning

    Code
    symbol "_ALS_SetDynamicObjectMaterialTe" is truncated to 31 characters