Korrektur Spielercheck

Diverse Pruefungen, ob ein Spieler existiert, gefixt.
Dabei direkt auf etwas robusteres umgestellt statt auf
die Existenz des Savefiles zu pruefen.

Change-Id: I13d251e497f166e12403c902c3fcac179c7dd879
diff --git a/std/player/base.c b/std/player/base.c
index 6d7af19..1078454 100644
--- a/std/player/base.c
+++ b/std/player/base.c
@@ -2277,17 +2277,22 @@
     InitPlayer();
 
     // Padreic 01.02.1999
-    if ( !IS_LEARNER(ME) && second = QueryProp(P_SECOND) ) {
-        if ( stringp(second) && lower_case(second)[0..3] == "von " ) {
+    if ( !IS_LEARNER(ME) && (second = QueryProp(P_SECOND)) )
+    {
+        if ( stringp(second) && lower_case(second)[0..3] == "von " )
+        {
             second = lower_case(second[4..]);
             SetProp( P_SECOND, second );
         }
 
         if ( !stringp(second ) ||
-             file_size( "/save/" + second[0..0] + "/" + second + ".o" ) <= 0 ){
+             !master()->find_userinfo(second))
+        {
+            // Wenns nur an Gross-/Kleinschreibung liegt, wird automatisch
+            // korrigiert.
             if ( stringp(second) &&
-                 file_size( "/save/" + lower_case(second[0..0]) + "/" +
-                            lower_case(second) + ".o" ) >0 ){
+                 master()->find_userinfo(lower_case(second)))
+            {
                 SetProp( P_SECOND, lower_case(second) );
                 log_file( "WRONG_SECOND",
                           sprintf( "%s: %s: P_SECOND = %O -> Automatisch "