GM-Farben $EE2711=Blau

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • GM-Farben $EE2711=Blau

    Im GM6.1 gibt es viele verschiedene Möglichkeiten Farben anzugeben. Standardgemäß: c_white, ...
    Man kann aber auch $EE2711 verwenden. So und jetzt meine Frage:
    Wie kann ich das Format umwandeln? Man kann den Spieler doch nach einer Farbe fragen (get_color(); Oder auch draw_getpixel(x,y);). Aber das gibt nur eine 7-Stellige Zahl aus.
    Und wie bringe ich das jetzt ins $Format?
    57 6F 77 2C 20 64 61 73 20 68 61 73 74 20 64 75 20 67 61 6E 7A 20 61 6C 6C 65 69 6E 20 67 65 73 63 68 61 66 66 74 2E 20
  • Ich wollte ein Themendesigner programmieren. Und da MUSS man eine INI schreiben die nur diesen Code kennt. :(
    Ist es echt nicht möglich? Anzeigen kann er, aber nicht damit umgehen. ;)
    57 6F 77 2C 20 64 61 73 20 68 61 73 74 20 64 75 20 67 61 6E 7A 20 61 6C 6C 65 69 6E 20 67 65 73 63 68 61 66 66 74 2E 20
  • Doch, du musst die Farben einfach in Rot, Grün und Blau trennen, die einzelnen Werte in Hex umrechnen und das ganze dann wieder in der Reihenfolge Rot, Grün und Blau in einen String zusammenkleben. Erfordert etwas mathematisches Können, ist aber nicht allzu schwer. Farbwerte im GM sind Delphi Farbwerte, dafür gibt es im Netz Umrechnungsformeln. Einfach mal etwas suchen und selber ausprobieren, das schult viel mehr als irgendwas Vorgekautes.
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum
  • Für sowas gibbet Wikipedia
    Umwandlung von Dezimalzahlen in Hexadezimalzahlen

    Eine Möglichkeit, eine Zahl des Dezimalsystems in eine Zahl des Hexadezimalsystems umzurechnen, ist die Betrachtung der Divisionsreste, die entstehen, wenn die Zahl durch die Basis 16 geteilt wird.

    Im Beispiel der 1278 Basis 10 sähe das so aus:

    Quellcode

    1. 1278 : 16 = 79 Rest: 14 (= E) (Nr:1278-(79*16)=14)
    2. 79 : 16 = 4 Rest: 15 (= F) (Nr:79-(4*16)=15)
    3. 4 : 16 = 0 Rest: 4 (Nr:4-(0*16)=4)
    Die Hexadezimalzahl wird von unten nach oben gelesen und ergibt somit 4.F.E.

    Umwandlung von Hexadezimalzahlen in Dezimalzahlen

    Um eine Hexadezimalzahl in eine Dezimalzahl umzuwandeln, muss man die einzelnen Ziffern mit der jeweiligen Potenz der Basis multiplizieren. Der Exponent der Basis entspricht der Stelle der Ziffer, wobei der Zahl vor dem Komma eine Null zugeordnet wird. Dazu muss man allerdings noch die Ziffern A, B, C, D, E, F in die entsprechenden Dezimalzahlen 10, 11, 12, 13, 14, 15 umwandeln.

    Beispiel für 4FE Basis16:

    4 * 16^2 + 15 * 16^1 + 14 * 16^0 = 1278_{(10)}

    Für das Zählen und Rechnen im Hexadezimalsystem gibt es eine Eselsbrücke: A = 10 und B = 11 kann sich jeder merken. C wie zwölf, D wie dreizehn, E für vierzehn kommt vor F wie fünfzehn.
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Danke! Das ist ja einfach. Man muss zwar erstmal in die Materie reinkommen ..., aber Problem gelöst.
    57 6F 77 2C 20 64 61 73 20 68 61 73 74 20 64 75 20 67 61 6E 7A 20 61 6C 6C 65 69 6E 20 67 65 73 63 68 61 66 66 74 2E 20

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DanielGM61 ()