In netdead_revive() default_home auswerten

Wenn der Raum in dem ausgelogt wurde nicht mehr gefunden werden sollte,
als Fallback zuerst versuchen ins default_home zu moven. Hierdurch soll
verhindert werden, dass kleine Spieler in der Abenteurergilde landen,
ohne zu wissen, wie sie von dort nach hause kommen. Nur wenn das
default_home auch deffekt sein sollte die Abenteurergilde als Fallback
verwenden.

Change-Id: I39d04f4c1f4071166c026c06bfafeb7e8c4e6158
diff --git a/std/player/base.c b/std/player/base.c
index f6e5bee..9bd706b 100644
--- a/std/player/base.c
+++ b/std/player/base.c
@@ -3352,15 +3352,23 @@
     }
   }
 
+  // Wenn immer noch kein ndead_location da oder die Bewegung dahin nicht
+  // klappt, ist das naechste Fallback das default_home der Shell.
   if ( !objectp(ndead_location)
       || catch(ret = move( ndead_location, M_GO|M_SILENT );publish) 
-      || ret != 1 )
+      || ret != MOVE_OK )
   {
-    move( "gilden/abenteurer", M_GO|M_SILENT );
+    ret = 0;
+    if(catch(ret = move(default_home, M_GO | M_SILENT); publish) ||
+        ret != MOVE_OK)
+    {
+      // und wenn auch das nicht klappt, bleibt die Abenteurergilde, die
+      // hoffentlich erreichbar ist. Wenn nicht, dann solls hart abbrechen...
+      move("/gilden/abenteurer", M_GO | M_SILENT);
+    }
     ndead_location = environment();
   }
 
-  //  ndead_location=0;
   ndead_l_filename = 0;
   env_ndead_info = 0;
 }