--- nh342off/dat/opthelp 2003-08-30 03:07:07.000000000 +0300 +++ nh342showb/dat/opthelp 2003-09-01 20:51:23.000000000 +0300 @@ -61,6 +61,10 @@ Boolean option if MFLOPPY was set at compile time: checkspace check free disk space before writing files to disk [TRUE] +Boolean option if SHOW_BORN was set at compile time: +showborn show numbers of created monsters after the number + vanquished [FALSE] + Boolean option if EXP_ON_BOTL was set at compile time: showexp display your accumulated experience points [FALSE] --- nh342off/dat/wizhelp 2003-08-30 03:07:10.000000000 +0300 +++ nh342showb/dat/wizhelp 2003-09-01 20:51:23.000000000 +0300 @@ -16,6 +16,7 @@ #panic == panic test #polyself == polymorph self #seenv == show seen vectors +#showkills == show numbers of monsters killed #stats == show memory statistics #timeout == look at timeout queue #vision == show vision array --- nh342off/doc/Guidebook.mn 2003-08-30 03:07:13.000000000 +0300 +++ nh342showb/doc/Guidebook.mn 2003-09-01 20:51:23.000000000 +0300 @@ -2016,6 +2016,10 @@ Control what parts of the score list you are shown at the end (ex. ``scores:5 top scores/4 around my score/own scores''). Only the first letter of each category (`t', `a', or `o') is necessary. +.lp showborn +When the game ends, show the number of each monster created +in the "Vanquished creatures" list, if it differs from the +number of those monsters killed. .lp showexp Show your accumulated experience points on bottom line (default off). .lp showrace --- nh342off/doc/Guidebook.tex 2003-08-30 03:07:13.000000000 +0300 +++ nh342showb/doc/Guidebook.tex 2003-09-01 20:51:23.000000000 +0300 @@ -2474,6 +2474,11 @@ ``{\tt scores:5top scores/4around my score/own scores}''). Only the first letter of each category (`{\tt t}', `{\tt a}' or `{\tt o}') is necessary. %.lp +\item[\ib{showborn}] +When the game ends, show the number of each monster created +in the ``Vanquished creatures'' list, if it differs from the +number of those monsters killed. +%.lp \item[\ib{showexp}] Show your accumulated experience points on bottom line (default off). %.lp --- nh342off/doc/Guidebook.txt 2003-08-30 03:07:13.000000000 +0300 +++ nh342showb/doc/Guidebook.txt 2003-09-01 20:51:23.000000000 +0300 @@ -2644,6 +2644,11 @@ + showborn + When the game ends, show the number of each monster created + in the "Vanquished creatures" list, if it differs from the + number of those monsters killed. + showexp Show your accumulated experience points on bottom line (de- fault off). --- nh342off/include/flag.h 2003-08-30 03:07:17.000000000 +0300 +++ nh342showb/include/flag.h 2003-09-01 20:51:23.000000000 +0300 @@ -214,6 +214,9 @@ boolean lan_mail; /* mail is initialized */ boolean lan_mail_fetched; /* mail is awaiting display */ #endif +#ifdef SHOW_BORN + boolean show_born; /* show numbers of created monsters */ +#endif /* * Window capability support. */ --- nh342off/src/cmd.c 2003-08-30 03:07:27.000000000 +0300 +++ nh342showb/src/cmd.c 2003-09-01 21:05:11.000000000 +0300 @@ -123,6 +123,10 @@ STATIC_PTR int NDECL(wiz_show_vision); STATIC_PTR int NDECL(wiz_mon_polycontrol); STATIC_PTR int NDECL(wiz_show_wmodes); +STATIC_PTR int NDECL(wiz_showkills); /* showborn patch */ +#ifdef SHOW_BORN +extern void FDECL(list_vanquished, (int, BOOLEAN_P)); /* showborn patch */ +#endif /* SHOW_BORN */ #if defined(__BORLANDC__) && !defined(_WIN32) extern void FDECL(show_borlandc_stats, (winid)); #endif @@ -753,6 +757,13 @@ return 0; } +/* #showkills command */ +STATIC_PTR int wiz_showkills() /* showborn patch */ +{ + list_vanquished('y', FALSE); + return 0; +} + #endif /* WIZARD */ @@ -1506,6 +1517,7 @@ {(char *)0, (char *)0, donull, TRUE}, #endif {(char *)0, (char *)0, donull, TRUE}, + {(char *)0, (char *)0, donull, TRUE}, /* showkills (showborn patch) */ {(char *)0, (char *)0, donull, TRUE}, {(char *)0, (char *)0, donull, TRUE}, {(char *)0, (char *)0, donull, TRUE}, @@ -1528,6 +1540,7 @@ {"portdebug", "wizard port debug command", wiz_port_debug, TRUE}, #endif {"seenv", "show seen vectors", wiz_show_seenv, TRUE}, + {"showkills", "show list of monsters killed", wiz_showkills, TRUE}, {"stats", "show memory statistics", wiz_show_stats, TRUE}, {"timeout", "look at timeout queue", wiz_timeout_queue, TRUE}, {"vision", "show vision array", wiz_show_vision, TRUE}, --- nh342off/src/end.c 2003-08-30 03:07:30.000000000 +0300 +++ nh342showb/src/end.c 2003-09-01 20:51:23.000000000 +0300 @@ -39,7 +39,7 @@ STATIC_DCL void FDECL(sort_valuables, (struct valuable_data *,int)); STATIC_DCL void FDECL(artifact_score, (struct obj *,BOOLEAN_P,winid)); STATIC_DCL void FDECL(savelife, (int)); -STATIC_DCL void FDECL(list_vanquished, (CHAR_P,BOOLEAN_P)); +void FDECL(list_vanquished, (CHAR_P,BOOLEAN_P)); /* showborn patch */ STATIC_DCL void FDECL(list_genocided, (CHAR_P,BOOLEAN_P)); STATIC_DCL boolean FDECL(should_query_disclose_option, (int,char *)); @@ -970,7 +970,7 @@ nethack_exit(status); } -STATIC_OVL void +void /* showborn patch */ list_vanquished(defquery, ask) char defquery; boolean ask; @@ -1026,6 +1026,11 @@ else Sprintf(buf, "%d %s", nkilled, makeplural(mons[i].mname)); +#ifdef SHOW_BORN + if (iflags.show_born && nkilled != mvitals[i].born) + Sprintf(buf + strlen(buf), " (%d created)", + (int) mvitals[i].born); +#endif } putstr(klwin, 0, buf); } --- nh342off/src/options.c 2003-08-30 03:07:36.000000000 +0300 +++ nh342showb/src/options.c 2003-09-01 20:51:23.000000000 +0300 @@ -160,6 +160,9 @@ #else {"sanity_check", (boolean *)0, FALSE, SET_IN_FILE}, #endif +#ifdef SHOW_BORN + {"showborn", &iflags.show_born, FALSE, SET_IN_GAME}, +#endif #ifdef EXP_ON_BOTL {"showexp", &flags.showexp, FALSE, SET_IN_GAME}, #else