Skin Wechsel

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
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 kurze Frage :D


    Wie kann ich es machen das mit einem Befehl jeder Spieler einen Bestimmten Skin bekommt?


    Ich kenne zwar SetPlayerSkin aber dies ändert ja nur von einer Person den Skin also wie könnte ich es machen?

  • Die for-schleife ist eine "solange-bis"-Schleife.
    Das heißst, du kannst der Schleife sagen, wielange sie Laufen soll.


    In deinem Beispiel for(new i; i < MAX_PLAYERS; i++)
    erstellen wir die neue Variable "i" und sagen, dass die Schleife solange laufen soll, bis i größer ist als die Spieler, die gerade connectet ist. Am Ende des Schleifen-Blocks wird dann dem Wert "i" eins dazu addiert und die Schleife beginnt von Vorne.


    Bei dem
    SetPlayerSkin(i,SkinID);
    wird dann auch immer der Wert "i" eingesetzt. Dies entspricht dann immer der ID des Spielers, welche mit jedem Durchlauf geändert wird.


    Mit freundlichen Grüßen, Luc

  • alles innerhalb der schleife wird einfach wiederholt.


    und wenn du oben ist die bedingung sprich


    for(new i; i < MAX_PLAYERS; i++)


    das heist einfach, das i immer erhöht wird sprich: 0, 1,2,3 usw.


    und die wirkliche Bedingung dabei ist, das i immer kleiner als MAX_PLAYERS ist sprich die max. User anzahl am Server.
    Wenn die Client anzahl erreicht ist soll der Zähler aufhören zu zählen


    Also im klartext:


    Die "playerid" im SetPlayerSkin ist immer von 0 bis zur max User Anzahl.


    das beispiel wäre z.b alle Spieler an einen Punkt zu porten:


    if (strcmp("/portall", cmdtext, true, 10) == 0)
    {
    for(new i; i < MAX_PLAYERS; i++)
    {
    SetPlayerPos(i,X,Y,Z);
    }
    }


    hoffe ich hab dir helfen können


    mfg
    nehlinator