Keine UUIDs fuer nicht-Spielerobjekte.
Bei Objekten explizit pruefen, ob sie mal interaktiv waren.
Wenn nicht, wird die einfache UID zurueckgeliefert.
Change-Id: Ie1ee6bd5c5d82ecfe5b78bbe128aa96ba2f38873
diff --git a/secure/simul_efun/livings.c b/secure/simul_efun/livings.c
index a734c25..a27eb1d 100644
--- a/secure/simul_efun/livings.c
+++ b/secure/simul_efun/livings.c
@@ -33,10 +33,11 @@
if ( !objectp(ob) )
ob = previous_object();
uid = getuid(ob);
+ if (!query_once_interactive(ob))
+ return uid;
}
- // sollte <uid> kein Spieler-UID sein (keine Spieler-UID uebergeben oder
- // !query_once_interactive(ob)), ist creation 0 und es wird die <uid>
+ // sollte <uid> kein Spieler-UID sein, ist creation 0 und es wird die <uid>
// unveraendert zurueckgeben.
int creation = master()->query_userlist(uid, USER_CREATION_DATE);
diff --git a/secure/simul_efun/spare/livings.c b/secure/simul_efun/spare/livings.c
index a734c25..a27eb1d 100644
--- a/secure/simul_efun/spare/livings.c
+++ b/secure/simul_efun/spare/livings.c
@@ -33,10 +33,11 @@
if ( !objectp(ob) )
ob = previous_object();
uid = getuid(ob);
+ if (!query_once_interactive(ob))
+ return uid;
}
- // sollte <uid> kein Spieler-UID sein (keine Spieler-UID uebergeben oder
- // !query_once_interactive(ob)), ist creation 0 und es wird die <uid>
+ // sollte <uid> kein Spieler-UID sein, ist creation 0 und es wird die <uid>
// unveraendert zurueckgeben.
int creation = master()->query_userlist(uid, USER_CREATION_DATE);