SYNOPSIS int restore_object(string name) int restore_object(string str) BESCHREIBUNG Laedt Werte von Variablen fuer das aktuelle Objekt aus der Datei oder direkt aus dem String . Um direkt aus einem String Variablen laden zu koennen, muss dieser mit der typischen Zeile "#x:y" beginnen. Strings, die von der Efun save_object() erzeugt wurden, beginnen so. Wenn Variablen aus einer Datei geladen werden, kann mit .c enden. Diese Dateiendung wird vom Treiber entfernt. Das Masterobjekt fuegt vermutlich dem Dateinamen ein .o hinzu. Die Gueltigkeit des Dateinamens wird mit der Funktion check_valid_path() automatisch ueberprueft. Die Funktion gibt 1 zurueck, wenn die Variablen erfolgreich geladen wurden und 0, wenn es nichts zu laden gab. Variablen mit dem Typenvermerk nosave werden nicht geladen, zum Beispiel nosave int xxx; Clousers aus Lfuns, Variablne und simul_efuns werden nur geladen, wenn sie gefunden werden. Falls nicht, werden sie mit dem Wert '0' geladen. Wenn Vererbung verwendet wird, kann es vorkommen, dass mehrere Variablen mit dem gleichen Namen an unterschiedlichen Orten vorkommen und deshalb in der Speicherdatei mehrmals auftreten. Beim Laden der Variablen werden sie in Reihenfolge ihres Auftretens im Vererbungsbaum geladen. Ein geeignetes Vorgehen ist die Verwendung von Verbose und einzigartigen Namen bei nicht-statischen Variablen. So wird auch das manuelle Lesen oder Editieren des Savefiles einfacher. GESCHICHTE Das direkte Laden aus einem String wurde in LDMud 3.2.8 eingefuehrt, wird aber moeglicherweise in Zukunft in eine separate Efun ausgelagert. LDMud 3.2.9 ergaenzte die Funktion um die Moeglichkeit, NonLambda-Closures, Symbole und gequotete Arrays zu laden, indem ein neues Format fuer das Savefile verwendet wird. LDMud 3.5.0 unterstuetzt das Einlesen von Formatversion 2 mit hoeherer Praezision der Gleitkommazahlen. SIEHE AUCH save_object(E), restore_value(E), valid_read(M)