FUNKTION:
void debug_msg(string uid, mixed arg)
void debug_msg(string uid, string fmt, ...)
void debug_msg(string uid, "\b", mixed arg);
void debug_msg(string uid, "\b", string fmt, ...)
ARGUMENTE:
uid - Uid des Debuggers
arg - Auszugebende Variable (kein String)
fmt - Auszugebender Text oder Formatstring
BESCHREIBUNG:
Gibt an den durch uid bezeichneten Spieler eine Meldung aus,
falls dieser anwesend ist.
Wenn das 2. Argument ein String ist, welcher nur aus einem Backspace
besteht ("\b"), so wird der Text nur dann ausgegeben, wenn
this_interactive() und Debugger uebereinstimmen. Dies ist nuetzlich
wenn man ein Objekt debuggen will, was ggf andere auch bekommen,
damit man die Meldungen nur auf eigene Aktionen erhaelt. Dieser
Modus wird im folgenden Interactive-Modus genannt.
Wenn das 2. Argument (bzw das 3. im Interactive-Modus) kein String
ist, so wird dieses im Klartext direkt ausgegeben. Hiermit kann man
schnell eine Variable ausgeben o.ae.
Wenn das 2. Argument (bzw 3.) ein String ist, so wird dieses und
alle weiteren Argumente an sprintf(E) weitergeleitet, welches dann
die Meldung erzeugt.
BEISPIELE:
arr = ({"huhu", 1.0, #'<});
debug_msg("sunrise", arr);
-> ({"huhu",1.0,#'<})
debug_msg("poljana", "erreiche schleifenende\n");
erreiche schleifenende
debug_msg("tarriga", "Debug: Fehler %d in %O\n", n, this_object());
Debug: Fehler 5 in /players/sunrise/mon/spinne#83310
Interactive-Modus:
debug_msg("fiona", "\b", "Fehler 3 in %O\n", this_object());
Fehler 3 in /std/unit#218341
SIEHE AUCH:
sprintf(E)
|