[SAMMELTHREAD] Kleine Scripting Fragen

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
  • Wieso geht der Code nicht mehr? Vorher ging der.



    Es kommt überall 0

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Von der Größe wüsste ich kein Objekt das eine einheitliche Textur hat.
    Du kannst ja ein Objekt setzen und dessen ID dann zu einem der transparenten Objekte ändern und dann entsprechend den Text setzen, dann siehst du ja was dabei raus kommt.
    Gegegebenenfalls muss die Rotation angepasst werden.

  • Habe das oben so deklariert:
      PlayerText:STATSdraw[MAX_PLAYERS][34],


    Und so zeige ich die Textdraws:
    PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][0]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][1]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][2]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][3]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][6]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][7]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][8]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][9]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][10]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][11]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][12]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][13]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][14]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][15]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][16]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][17]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][18]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][19]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][20]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][21]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][22]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][23]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][24]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][25]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][26]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][27]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][28]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][29]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][30]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][31]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][32]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][4]); PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][5]);

  • Das kannst du auch mit einer Schleife lösen.
    Ich weiß jetzt nicht ob das 33'er Textdraw das ist das fehlt, das ist nämlich nicht in der Liste.

    C
    for(new i=0; i<34; i++) PlayerTextDrawShow(showplayerid,STATSdraw[showplayerid][i]);


    Moglicherweise wird es auch nicht (richtig) erstellt. Je nach dem welches fehlt.

  • Will einen Dialog mit allen Waffen von ID 2 bis 38 machen.
    Und dann im nächsten Dialog, wenn ich irgendwo drauf gedrückt habe, mir genau diese geben.


    Mein Code:


    Code
    new wstr[728], gunname[50];
    for(new i = 2; i < 39; i++)
    {
       format(wstr, sizeof wstr, "%s (Waffen-ID: %d)\n", GetWeaponName(i,gunname,sizeof(gunname)), i);
    }
    ShowPlayerDialog(playerid,DIALOG_WAFFENWAHL_SLOT1,DIALOG_STYLE_LIST,"Waffenwahl",wstr,"Auswählen","");


    Code
    GivePlayerWeapon(playerid, listitem+2, 100);




    Jedoch, ingame ist es so, dass mir nur ein komisches Zeichen mit s angezeigt wird und (Waffen-ID: 37)

  • @Jeffry


    (Habe ich dich so richtig markiert :D ? )


    Ich habe vor lange Zeit diesen Befehl mit deiner Hilfe erstellt. Er funktioniert problemlos wenn ich den in meinem TestServer Gamemode benutze, doch nun habe ich ihn in mein HauptGamemode eingebaut und dort crasht der Spieler nicht. Es passiert einfach nichts.. Woran liegt das?




    Mit freundlichen Grüßen
    JustMe.77 8)

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Das Waffe geben funktioniert.
    Das Problem ist nur, dass die Waffennamen nicht angezeigt werden.

  • Das Problem ist nur, dass die Waffennamen nicht angezeigt werden.

    C
    new wstr[1024], gunname[32];
    for(new i = 2; i < 39; i++)
    {
    	GetWeaponName(i,gunname,sizeof(gunname))
     format(wstr, sizeof wstr, "%s%s (Waffen-ID: %d)\n",wstr, gunname, i);
    }
    ShowPlayerDialog(playerid,DIALOG_WAFFENWAHL_SLOT1,DIALOG_STYLE_LIST,"Waffenwahl",wstr,"Auswählen","");

    nun Funktioniert es, außerdem hab ich dir noch ein kleinen Fehler verbessert und die Größe von den Strings angepasst.

    Mit Freundlichen Grüßen
    Whitetiiger aka. Kaito-sensei
    P.s. Alle mit #IRONIE bestätigten Sätze von mir, sind als Ironie anzusehen.

  • Schau dir mal den Parameter killerid im Callback OnPlayerDeath() an, damit kannst du abfragen ob der Spieler Selbstmord begangen hat, oder jemand anders getötet hat.
    [wiki]OnPlayerDeath[/wiki]

  • Beitrag von Eljero ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Gelöst. ().
  • Ich wollte es so machen, dass wenn ich meinen Befehl eingebe oben halt Waffen und Ort steht. Dann sollen alle Arenen angezeigt werden, die ich erstellt habe.
    Wenn keine Arena erstellt wurde, kommt der Dialog ohne inhalt, nur mit Waffen und Ort als "Headline", so wie es soll.
    Erstelle ich dann aber eine, dann bekomme ich einen Fehler in der Konsole


    Mein Code:


    Fehler:

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