Chat Farbcodes für Nicknamen

  • Hallo,


    ich würde gerne unseren alten Farbgenerator fürs wbb anpassen wollen und da würde mich gern interessieren wie diese Zahlen als Farbe erkannt werden, die in der User Tabelle für die Nicknamen gespeichert werden, damit ich weiss, wie ich dies umwandeln kann.


    Würde mich gern über eine positive Antwort freuen :)

    • Offizieller Beitrag

    Hi,


    in der Datenbank stehen die Farben als Integer, mit ein bisschen Bitshifting lassen sich die drei Blöcke für R, G und B problemlos daraus extrahieren.
    Nehmen wir einmal an, ein User hat den Befehl /color #abcdef genutzt, dann steht in der Datenbank als Wert für beide Farben 11259375.
    11259375 >> 16 ist 171, in Hexadezimalschreibweise AB.
    (11259375 >> 8) & 0xFF ist 205, demnach CD.
    11259375 & 0xFF ist 239. damit EF.
    Schon haben wir alle 3 Bestandteile der Farbe extrahiert.
    Der Umgekehrte Weg wäre dann: (r << 16) | (g << 8) | b.Beispiel: (171 << 16) | (205 << 8) | 239 = 11259375.

  • uh nun blick ich gar nicht durch 8|
    vorallem jetzt wie man von 11259375 mit der 16 auf 171 kommt. Entweder bin ich grad doof oder mein Mathe ist echt sch... :D
    schade, dass die farbcodes nicht so wie sie sind, direkt in die datenbank gespeichert werden, da fällt ja das codieren und encodieren dann weg :D