Vereinfachung beim Texturieren von Objekten

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
  • Abend Leute,


    wie die Überschrift bereits verrät, habe ich heute eine Frage bezüglich des Texturieren´s von Objeken!


    Vorab schon mal, ich mache das ganze immer so:



    Meine Frage ist jetzt, ob man das ganze Vereinfachen kann. Zum einen kostet es immer sehr viel Zeit in jede Zeile die Koordinaten rein zu kopieren und zum anderen Verbraucht man damit auch sehr viele Zeilen im Script.


    Falls jemand eine passende Lösung parat hat, so würde ich diesen bitten, eine Art Tutorial zu erstellen. Danke im voraus!


    MfG
    Wetschi

  • Wenn du die Variable nie wieder brauchst, dann kannst du es so machen:
    Ohne:
    SetObjectMaterial(CreateObject(19362, 1327.0876, -876.3626, 40.3257, 0.0000, 0.0000, 90.0000), 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);
    //...



    oder nur einmal deklarieren:
    new tmp;
    tmp = CreateObject(19362, 1327.0876, -876.3626, 40.3257, 0.0000, 0.0000, 90.0000);
    SetObjectMaterial(tmp, 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);
    //...
    tmp = CreateObject(19362, 1327.0876, -876.3626, 40.3257, 0.0000, 0.0000, 90.0000);
    SetObjectMaterial(tmp, 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);



    Die Koordinaten musst du ohnehin irgendwo einfügen, sonst weiß der Code ja nicht wo er die Objekte erstellen soll.

  • Hmm? ?(:|

    Code: Code
    new tmp;
    tmp = CreateObject(19362, 1327.0876, -876.3626, 40.3257, 0.0000, 0.0000, 90.0000);
    SetObjectMaterial(tmp, 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);
    //...
    tmp = CreateObject(19362, 1327.0876, -876.3626, 40.3257, 0.0000, 0.0000, 90.0000);
    SetObjectMaterial(tmp, 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);

    Ist doch identisch zu meinem Code, oder?

  • Wand 1 bis 3 würde so aussehen:
    SetObjectMaterial(CreateObject(19362, 1320.5771, -878.0583, 40.3257, 0.0000, 0.0000, 0.0000), 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);
    SetObjectMaterial(CreateObject(19362, 1320.5771, -881.2683, 40.3257, 0.0000, 0.0000, 0.0000), 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);
    SetObjectMaterial(CreateObject(19362, 1320.5771, -884.4783, 40.3257, 0.0000, 0.0000, 0.0000), 0, 4570, "stolenbuild03", "sl_dtbuild2wall1", 0xFFFFFFFF);


    Das CreateObject gibt ja die ObjectID zurück. Anstatt diese in einer Variable zwischen zu speichern, wird sie direkt an SetObjectMaterial übergeben.