Tooltips

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

    • Hi Community.
      Hier werde ich euch zeigen, wie ihr mit dem Game Maker Tooltips anzeigen lassen könnt. (Funktioniert auch mit Unreg/Lite)
      Dazu erstellt erstmal ein neues Script mit dem Namen 'draw_tooltip' und folgendem Inhalt:

      GML-Quellcode

      1. // draw_tooltip (tip, outline color, backgroud color, x, y);
      2. // Achtung: Dieses Script setzt den halign auf fa_left und den valign auf fa_middle!
      3. var tip, wid, hei, col, bac, psx, psy, tmc;
      4. tip = argument0; // Der anzuzeigende Tooltip
      5. col = argument1; // Die Farbe der Umrandung des Tooltips
      6. bac = argument2; // Die Hintergrundfarbe des Tooltips
      7. psx = argument3; // Die x Position, an der der Tooltip angezeigt werden soll
      8. psy = argument4; // Die y Position, an der der Tooltip angezeigt werden soll
      9. tmc = draw_get_color();
      10. wid = 4 + string_width(tip) + 4;
      11. hei = 2 + string_height(tip) + 2;
      12. draw_set_color(bac);
      13. draw_rectangle(psx, psy - hei / 2, psx + wid, psy + hei / 2, false); // Hier...
      14. draw_set_color(col);
      15. draw_rectangle(psx, psy - hei / 2, psx + wid, psy + hei / 2, true); // ...und hier wird das Tooltip Rechteck gezeichnet...
      16. draw_set_color(tmc);
      17. draw_set_halign(fa_left); draw_set_valign(fa_middle);
      18. draw_text(psx + 4, psy, tip); // ...und hier der Tooltip-Text
      Alles anzeigen
      Jetzt erstellt ihr noch ein Objekt, und schreibt Folgendes ins Draw Event:

      GML-Quellcode

      1. if (position_meeting(mouse_x, mouse_y, self))
      2. draw_tooltip("Hier ist ein Tooltip", c_black, c_yellow, mouse_x + 16, mouse_y + 32);
      Wenn ihr nun euer Spiel startet und mit der Maus über euer Objekt fährt, sollte das Ganze so aussehen:

      Natürlich könnt ihr die einzelnen Parameter beim Aufruf auch verändern.
      Ich hab' noch ein kleines Example angehängt:
      Tooltips.zip
      fabse64 -> haiyyu

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von fabse64 ()

    • Danke für das Lob und für den Tipp mit dem Kürzen. :)

      Ich werde mal schauen, ob ich noch festlegen lassen werde, ob der Tooltip nach links oder nach rechts ausgerichtet sein soll.

      Edit: Schon klar. xD
      fabse64 -> haiyyu

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von fabse64 ()

    • Naja,...das sind ja bloß ein paar Handgriffe:

      GML-Quellcode

      1. // draw_tooltip (tip, outline color, backgroud color, x, y);
      2. // Achtung: Dieses Script setzt den halign auf fa_left und den valign auf fa_middle!
      3. var tip, wid, hei, col, bac, psx, psy, tmc;
      4. tip = argument0; // Der anzuzeigende Tooltip
      5. col = argument1; // Die Farbe der Umrandung des Tooltips
      6. bac = argument2; // Die Hintergrundfarbe des Tooltips
      7. psx = argument3; // Die x Position, an der der Tooltip angezeigt werden soll
      8. psy = argument4; // Die y Position, an der der Tooltip angezeigt werden soll
      9. tmc = draw_get_color();
      10. wid = 4 + string_width(tip) + 4;
      11. hei = 2 + string_height(tip) + 2;
      12. draw_set_color(bac);
      13. draw_rectangle(psx, psy - hei / 2, psx - wid, psy + hei / 2, false); // Hier...
      14. draw_set_color(col);
      15. draw_rectangle(psx, psy - hei / 2, psx - wid, psy + hei / 2, true); // ...und hier wird das Tooltip Rechteck gezeichnet...
      16. draw_set_color(tmc);
      17. draw_set_halign(fa_right); draw_set_valign(fa_middle);
      18. draw_text(psx - 4, psy, tip); // ...und hier der Tooltip-Text
      Alles anzeigen
    • Ne Idee wäre es, dass man die ausrichtung des Tooltips automatisch machen lassen würde. Dazu könntest du mit room_height/2 und room_width/2 das jeweilige Viertel eines Raumes abfragen und dementsprechend den ToolTip ausrichten. Dann würde er nie aus dem Bildschirm geraten.
      So far, Schattenphoenix~
      _____________________________________________________________________________
      "Who needs a stairway to heaven...
      If there is an elevator to hell... ?
      "
      - Vergessen
      "Auch ein perfektes Chaos ist etwas vollkommenes."
      - Jean Genet
    • Pass aber auf, wenn man Views benutzt, muss es auf die View abgestimmt sein.
      Ansonsten wäre ne Möglichkeit, evtl einen boolschen Wert zu vergeben für jedes einstellbare Extra (wie auto-adjust, feste Adjustierung, unjustiert (zentral), usw.)
      So far, Schattenphoenix~
      _____________________________________________________________________________
      "Who needs a stairway to heaven...
      If there is an elevator to hell... ?
      "
      - Vergessen
      "Auch ein perfektes Chaos ist etwas vollkommenes."
      - Jean Genet
    • Benutzer online 1

      1 Besucher