Farben im Mud
*************

   Farben in der Ausgabe werden im MorgenGrauen bislang eher selten
   verwendet und die Einfaerbung meistens den Triggern des Clients
   ueberlassen. Moechte man allerdings direkt etwas (farblich)
   markieren, stehen hierfuer einige Hervorhebungs-Tags zur
   Verfuegung, welche in ReceiveMsg() durch die passenden Steuercodes
   fuer den Terminaltypen des Clients ersetzt werden.

   Hierfuer muss die Ausgabe lediglich durch ReceiveMsg() und deren
   Wrapper erfolgen, weitere Massnahmen sind weder noetig noch
   empfohlen.

   Benutzt werden diese Tags, indem die in den auszugebenden Text
   zwischen zwei "%^" gesetzt werden: "`%^tag%^markierter
   Text%^endetag%^`". Hierbei sollte dann ReceiveMsg() allerdings auch
   der Zeilenumbruch ueberlassen werden.

   Zu beachten ist, dass je nach Client bzw. seinem Terminaltyp nicht
   alle Tags benutzbar sind. Falls z.B. der Client kein ANSI
   untertuetzt und die Spielerin dieses abgeschaltet hat, werden diese
   Tags nicht gesendet oder als Tag "normal" behandelt.

   Technisch erfolgt die Ersetzung mittels terminal_colour(), welches
   man nutzen koennte, um Farben in eine Ausgabe zu bringen, ohne
   ReceiveMsg & Co zu nutzen. Allerdings ist aktuell die Farbtabelle
   des Spielerobjekts nicht abfragbar.


Tag-Liste
=========


Logische Hervorhebungen
-----------------------

   Zusaetzlich zu den direkt physischen Hervorhebungen (s.u.) gibt es
   noch logische Hervorhebungen, welche zu einer vom Spieler
   konfigurierbaren (TODO) Darstellung fuehren:

   mention
      Erwaehnungen eines Charnamens mit @Charname

   normal
      Normale Darstellung des Clients


Physische Hervorhebungen
------------------------

   Diese Hervorhebungen stellen direkt eine bestimmte Farbe oder
   Darstellung ein.

   Vordergrundfarben (ANSI)
      black, red, green, yellow, blue, purple, cyan, white

   Hintergrundfarben (ANSI)
      bg_black, bg_red, bg_green, bg_yellow, bg_blue, bg_purple,
      bg_cyan, bg_white

   Sonstiges (VT100, ANSI)
      bold (fettgedruckt), underlined (unterstrichen), blink
      (blinkend), invers (Vorder- und Hintergrundfarbe invertiert)


Beispiel
========

   this_player().ReceiveMsg(
      "Zesstra wirft Dir einen %^red%^roten Eimer%^normal%^ an den
      Kopf.", MT_LOOK, MA_EMOTE);


SIEHE AUCH
==========

   ReceiveMsg(), *../efun/terminal_colour*, P_TTY, P_TTY_TYPE

Letzte Aenderung: 10.22.2022
