Attach3DTextLabelToVehicle - Benötige Hilfe

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 liebes Forum,


    bin gerade dabei ein Script zu erweitern, dazu wollte in bei jedem Auto die zugehörigkeit schreiben.
    z.B bei dem Anti-Terroristen kommt bei den Autos das 3DTextLabel "Anti-Terror-Fahrzeug" und bei den Terroristen das 3DTextLabel "Terroristen-Fahrzeug".


    Die Autos sind im Script so eingefügt:


    Antiterror[0] = AddStaticVehicle(...)
    Antiterror[1] = AddStaticVehicle(...)
    Antiterror[2] = AddStaticVehicle(...)
    Antiterror[3] = AddStaticVehicle(...)


    und das gleiche bei den Terroristen.


    Die Labels habe ich schon unter OnGameModeInit erstellt, undzwar so:
    new Text3D:anti3dtext, Text3D:terror3dtext;
    anti3dtext = Create3DTextLabel( "Anti-Terrot-Einheit\nFahrzeug", Blau, 0.0, 0.0, 0.0, 50.0, 0, 1 );
    terror3dtext = Create3DTextLabel( "Terrot-Einheit\nFahrzeug", Rot, 0.0, 0.0, 0.0, 50.0, 0, 1 );


    Und jetzt will ich versuchen, dass diese an die Auto attatched werden. Nur ich weis leider nicht wie. :/



    Ich hoffe ihr könnt mir helfen.



    Mit freundlichen Grüßen,
    ShiiX

    [align=center]

  • Woran scheitert es denn bei dir ?
    Attach3DTextLabelToVehicle
    Die Funktion ist doch eindeutig. In deinem Beispiel wäre es:


    Attach3DTextLabelToVehicle ( anti3dtext , Antiterror[0] , 0.0 , 0.0 , 0.0 );
    Allerdings muss man erwähnen.Du musst pro Fahrzeug einen EIGENEN 3DText erstellen.Du kannst den nicht an mehrere Fahrzeuge attachen.
    Heisst,du müsstest es quasi als Array machen:
    anti3dtext[0] = Create3DTextLabel( ... )
    anti3dtext[1] = Create3DTextLabel( ... )
    anti3dtext[2] = Create3DTextLabel( ... )

  • Kann man nicht via For-Schleife die Fahrzeuge der Fraktion abfragen? Und dann anstatt z.B die VehicleID einfach "i" eintragen?


    /e: Rechtschreibfehler


    /e²: Wie siehst mit "an einem Spieler attatchen, wenn er in eins der oben genannten Fahrzeuge steigt" aus?

    [align=center]

  • das hier


    Attach3DTextLabelToVehicle(anti3dtext, Antiterror[0], 0, 0, 0);


    muss man für jeden Wagen einzeln definieren
    es geht nicht per scheife eins für alle zu nehmen

  • Kann das gehen?
    if(classid == 285 || classid == 287 || classid == 265 || classid == 288 || classid == 286 || classid == 284 || classid == 280 || classid == 266 || classid == 179)
    {
    for(new i = i; i < MAX_PLAYERS; i++)
    if(gTeam[playerid] == TEAM_LS)
    {
    Attach3DTextLabelToPlayer(anti3dtext, i, 0.0, 0.0, 0.7);
    }
    }
    if(classid == 142 || classid == 122 || classid == 108 || classid == 107 || classid == 102 || classid == 100 || classid == 270 || classid == 263 || classid == 247)
    {
    for(new i = i; i < MAX_PLAYERS; i++)
    if(gTeam[playerid] == TEAM_LV)
    {
    Attach3DTextLabelToPlayer(terror3dtext, i, 0.0, 0.0, 0.7);
    }
    }

    [align=center]

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Kann gehen,erzielt nur Sicherlich nicht den gewünschten Effekt.
    Ich verweise nochmal auf meinen Post.
    http://forum.sa-mp.de/san-andr…%B6tige-hilfe/#post968231


    Du kannst nicht einen 3DText an viele Fahrzeuge / Spieler attachen. Du musst mehrere 3DTexte erstellen ( Auch wenn die den gleichen Text haben,völlig egal ) und diese dann an das Fahrzeuge / Spieler attachen . Auch verstehe ich nicht wieso du dort eine Schleife hast aber vor der Schleife einen Abfrage , die auf die classid ( wahrscheinlich meinst du skinid ) bezieht. Das macht doch gar keinen Sinn :-O!

  • Ich habs mir so gedacht, dass die SkinID's abgefragt werden. Dann werden die Herausgefiltert, die diese ID's besitzen und denen wird das 3DTextLabel angehongen...
    Naja, scheint aber nach deiner Aussage nicht zu funktionieren.. :/

    [align=center]