restore_object()
****************


SYNOPSIS
========

   mixed restore_object(string name);


BESCHREIBUNG
============

   Diese Simul-Efun unterscheidet sich in einigen Details von der
   Driver-Efun restore_object() (s. auch dort! Wichtig!).

   1. diese sefun restauriert auch die mit F_SAVE markierten Properties
   eines Objektes, sofern das Savefile von sefun save_object erstellt
   wurde (was die efun des Driver nicht tut!).
   2. Sofern ein Pfad angegeben wird und dieser NICHT mit /data/ beginnt,
   wird das Savefile als erstes immer unter /data/+name gesucht. Erst wenn es
   dort nicht gefunden wird, wird unter name gesucht.


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

   save_object(E), restore_object(E), save_value(E)

29.01.2017, Zesstra
