SYNOPSIS int save_object(string name [, int format]) string save_object([int format]) BESCHREIBUNG Codiert die speicherbaren Variablen des aktuellen Objekts in einen String. In der ersten Form wir der String in die Datei geschrieben. Eine Endung ".c" in wird entfernt, dafuer kann eine Endung ".o" durch das Masterobjekt angefuegt werden, waehrend der Ueberpruefung durch valid_read(). Die Efun save_object() liefert 0, wenn die Speicherdatei erfolgreich erstellt wurde, sonst eine Zahl ungleich 0, wenn ein nicht schwerwiegendee Fehler aufgetreten ist (die Datei konnte nicht geschrieben werden oder das aktuelle Objekt wurde inzwischen zerstoert). In der zweiten Form wird der String direkt zurueck gegeben. Wenn das Objekt zerstoert wurde, wird 0 zurueck gegeben. In beiden Faellen kann durch das optionale Argument das Format der Speicherdatei angegeben werden: -1: das normale Format des Treibers (Standard) 0: das Originalformat nach Amylaar's LPMud und LDMud <=3.2.8 1: LDMud >= 3.2.9: Non-Lambda Closures, Symbole und gequotete Arrays koennen gespeichert werden 2: LDMUd >= 3.5.0: Gleitkommazahlen werden in einem neuen Format geschrieben, welches kompakter ist die Gleitkommazahlen aus 3.5.x verlustfrei speichern kann. Es wird empfohlen, die Angabe des Formats wegzulassen oder in Version 2 (oder hoeher) zu speichern. Eine Variable wird als 'speicherbar' betrachtet, wenn sie nicht als 'nosave' oder 'static' deklariert ist. GESCHICHTE Seit LDMud 3.2.8 liefert save_object() einen fixen Wert bei Erfolg. Das direkte Abspeichern in einen String wurde in LDMud 3.2.8 eingefuehrt, wird aber in Zukunft eventuell in eine separate Efun umgezogen. LDMud 3.2.9 ergaenzte die Funktion um das Speichern von Non-Lambda Closures, Symbolen und gequoteten Arrays. Dazu wurde ein neues Format fuer die Speicherdatei eingefuehrt. LDMud 3.2.10 fuehrte das Argument ein. LDMud 3.5.0 fuehrte Formatversion 2 ein. SIEHE AUCH restore_object(E), save_value(E)