]> granicus.if.org Git - nethack/commitdiff
fix B02001 - WIZKIT artifacts
authornethack.rankin <nethack.rankin>
Thu, 3 Apr 2003 03:59:40 +0000 (03:59 +0000)
committernethack.rankin <nethack.rankin>
Thu, 3 Apr 2003 03:59:40 +0000 (03:59 +0000)
     Fix the reported bug of artifacts created via wizard mode WIZKIT
being "forgotten" and possibly duplicated during play.  Perform artifact
initialization before $WIZKIT processing; role info needed by the former
is already sufficiently set up by that point.

doc/fixes34.2
src/allmain.c

index 1cdc7b107f6efbcb30bf7adb2794679d4beab990..04aea105d4a30a5c6f5d9a878b5d8bf53d2b8fb0 100644 (file)
@@ -33,6 +33,7 @@ jumping over a sokobon pit would result in the player next to, not in, the pit
 don't let arrow, rock or dart traps provide an infinite number of objects
 dropping from height or throwing a normal container may damage contents
 some Magicbane messages treated "erinys" as plural
+initialize artifacts before processing $WIZKIT
 
 
 Platform- and/or Interface-Specific Fixes
index 6e3070414e63d286c3cd9301753a61289684d3d1..f9e09b851870a9dea23f9f5462172ab455995088 100644 (file)
@@ -1,4 +1,4 @@
-/*     SCCS Id: @(#)allmain.c  3.4     2002/01/04      */
+/*     SCCS Id: @(#)allmain.c  3.4     2003/04/02      */
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* NetHack may be freely redistributed.  See license for details. */
 
@@ -495,10 +495,11 @@ newgame()
                                 * and init_artifacts() */
 
        init_dungeons();        /* must be before u_init() to avoid rndmonst()
-                                * creating odd monsters for initial tins and
-                                * eggs */
+                                * creating odd monsters for any tins and eggs
+                                * in hero's initial inventory */
+       init_artifacts();       /* before u_init() in case $WIZKIT specifies
+                                * any aritfacts */
        u_init();
-       init_artifacts();
 
 #ifndef NO_SIGNAL
        (void) signal(SIGINT, (SIG_RET_TYPE) done1);