SYNOPSIS
string load_name()
string load_name(object|string obj)
BESCHREIBUNG
Die Funktion liefert den Namen, mit dem <obj> geladen wurde. <obj>
kann direkt als Objekt oder als String mit seinem Namen angegeben
werden.
Wenn <obj> ein Clon ist, liefert die Funktion den Namen des Blueprints.
Wenn <obj> ein Blueprint ist, liefert die Funktion den Namen des Files,
aus dem der Blueprint kompiliert wurde.
Wenn <obj> ueber seinen Namen angegeben wurde, aber nicht / nicht mehr
existiert, generiert die Funktion den Namen, wie er sein muesste und
gibt diesen zurueck. Wenn der angegebene Name ungueltig ist, liefert
die Funktion 0.
Als Spezialfall liefert die Funktion 0, wenn <ob> 0 ist.
Fuer virtuelle Objekte liefert load_name() den originalen Ladenamen
des Objekts, welches der virtuelle Compiler erzeugte.
Wird <obj> nicht angegeben, wird der Name fuer das momentan gueltige
Objekt angegeben.
Im Gegensatz zum object_name() kann der load_name() nicht durch
rename_object() oder einen VC veraendert werden. Ist ein <obj> jedoch
einem replace_program() unterworfen, spiegelt der load_name() nicht
mehr das effektive Verhalten des Objekts wider.
BEISPIELE
object o;
o = clone_object("/std/thing");
write(load_name(o)); --> liefert "/std/thing" in !Compat Modus
und "std/thing" im Compat Modus
write(load_name("/std/thing")); --> gleich wie oben
write(load_name("/std/thing#4n5")); --> liefert 0
GESCHICHTE
Eingefuehrt in LDMud 3.2.6.
Strings als Argumente sind moeglich seit 3.2.8.
0 ist zulaessig seit 3.2.9.
SIEHE AUCH
clone_object(E), clonep(E), object_name(E), load_object(E),
replace_program(E), program_name(E), present_clone(E)
|