Aktualisierung der spare-simul_efun.
Change-Id: If3df6f2ff29c31244fa4164f436ba534e4aac5ca
diff --git a/secure/simul_efun/spare/livings.c b/secure/simul_efun/spare/livings.c
index 2d0ffde..6d9e5cd 100644
--- a/secure/simul_efun/spare/livings.c
+++ b/secure/simul_efun/spare/livings.c
@@ -23,21 +23,28 @@
netdead = wizinfo[NETDEAD_MAP] = ([]);
}
-public varargs string getuuid( object ob )
+public varargs string getuuid( object|string ob )
{
- if ( !objectp(ob) )
- ob = previous_object();
+ string uid;
+ if (stringp(ob))
+ uid = ob;
+ else
+ {
+ if ( !objectp(ob) )
+ ob = previous_object();
+ uid = getuid(ob);
+ }
- if ( !query_once_interactive(ob) )
- return getuid(ob);
+ // sollte <uid> kein Spieler-UID sein (keine Spieler-UID uebergeben oder
+ // !query_once_interactive(ob)), ist creation 0 und es wird die <uid>
+ // unveraendert zurueckgeben.
+ int creation = master()->query_userlist(uid, USER_CREATION_DATE);
- int creation = master()->query_userlist(getuid(ob), USER_CREATION_DATE);
-
- if (!intp(creation))
- return getuid(ob);
+ if (creation)
+ return uid;
// Username + "_" + CreationDate
- return getuid(ob) + "_" + creation;
+ return uid + "_" + creation;
}
void set_object_living_name(string livname, object obj)