From d6f8241ac1d2a79e2cee69c6246b7dfbe6f1fa57 Mon Sep 17 00:00:00 2001 From: nhmall Date: Sun, 26 Apr 2026 12:34:02 -0400 Subject: [PATCH] update dat src include... --- dat/data.base | 6 +++--- dat/dungeon.lua | 2 +- dat/history | 2 +- dat/tribute | 4 ++-- include/amiconf.h | 2 +- include/global.h | 2 +- include/monsters.h | 12 ++++++------ include/objects.h | 2 +- include/patchlevel.h | 4 ++-- include/tradstdc.h | 2 +- include/vmsconf.h | 2 +- include/winprocs.h | 6 +++--- include/wintype.h | 2 +- src/attrib.c | 2 +- src/dig.c | 2 +- src/display.c | 4 ++-- src/do.c | 6 +++--- src/do_name.c | 2 +- src/do_wear.c | 2 +- src/dokick.c | 4 ++-- src/dothrow.c | 2 +- src/eat.c | 12 ++++++------ src/hack.c | 4 ++-- src/mdlib.c | 2 +- src/mhitu.c | 2 +- src/mkobj.c | 6 +++--- src/monmove.c | 4 ++-- src/objnam.c | 4 ++-- src/options.c | 2 +- src/pager.c | 2 +- src/potion.c | 2 +- src/read.c | 4 ++-- src/rumors.c | 2 +- src/sfstruct.c | 2 +- src/shk.c | 4 ++-- src/sit.c | 2 +- src/sounds.c | 2 +- src/timeout.c | 2 +- src/trap.c | 6 +++--- src/uhitm.c | 4 ++-- src/windows.c | 2 +- src/wizard.c | 2 +- src/worm.c | 2 +- src/zap.c | 6 +++--- util/makedefs.c | 2 +- util/sfctool.c | 2 +- 46 files changed, 78 insertions(+), 78 deletions(-) diff --git a/dat/data.base b/dat/data.base index b051cc62a..ec1e5306e 100644 --- a/dat/data.base +++ b/dat/data.base @@ -1384,7 +1384,7 @@ dispater Wealth". It refers to the wealth of precious stone below the earth. [ Encyclopedia Mythica, ed. M.F. Lindemans ] -# 3.7; monster adapted from slash'em based on an AD&D Monster Manual entry; +# 5.0; monster adapted from slash'em based on an AD&D Monster Manual entry; # slash'em lacked a description so this entry has been created from scratch; # the puma comparison is how the AD&D monster is described (except that # that creature has six legs and two tentacles!) but the actual monster's @@ -2048,7 +2048,7 @@ gem or rock same as for jewels: it is always the false ones that look the most real, the most brilliant. [ Salvador Dali ] -# 3.7; monster derived from slash'em which lacked a description so this +# 5.0; monster derived from slash'em which lacked a description so this # entry has been created from scratch genetic engineer These very odd people have mastered the ability to insert gene @@ -2418,7 +2418,7 @@ helm of caution A helmet which confers the "warning" property, sensing the strength of threats posed by unseen hostile creatures. # note: this quotation had "high of steel" but we're going to cheat--it is -# now deliberately mistranslated as "high of crystal" to match nethack 3.7's +# now deliberately mistranslated as "high of crystal" to match nethack 5.0's # change to helm of brilliance and become more useful to players. # PR #1109 wanted to change it to be for all helms but being covered with # gems and gold is not appropriate for ordinary helmets (plus it states that diff --git a/dat/dungeon.lua b/dat/dungeon.lua index d90eb9214..7550d1317 100644 --- a/dat/dungeon.lua +++ b/dat/dungeon.lua @@ -185,7 +185,7 @@ dungeon = { }, { name = "minend", --- 3.7.0: minend changed to no-bones to simplify achievement tracking +-- 5.0.0: minend changed to no-bones to simplify achievement tracking -- bonetag = "E" base = -1, nlevels = 3 diff --git a/dat/history b/dat/history index 3d4b6e9bc..850ceab79 100644 --- a/dat/history +++ b/dat/history @@ -1,4 +1,4 @@ -NetHack History file for release 3.7 +NetHack History file for release 5.0 Behold, mortal, the origins of NetHack... diff --git a/dat/tribute b/dat/tribute index f58dc89ac..a2944d7d6 100644 --- a/dat/tribute +++ b/dat/tribute @@ -2464,7 +2464,7 @@ Dibbler removed his cigar. [Moving Pictures, by Terry Pratchett] %e passage # -# New for 3.7 - these are worthy but 16 passages are already more than enough. +# New for 5.0 - these are worthy but 16 passages are already more than enough. #-# #-# p. 304 #-%passage 17 @@ -4138,7 +4138,7 @@ followed by long periods of being dead." [Interesting Times, by Terry Pratchett] %e passage # -# 3 new passages for 3.7 +# 3 new passages for 5.0 # # p. 45 %passage 11 diff --git a/include/amiconf.h b/include/amiconf.h index 682ed3a2b..17b03c2eb 100644 --- a/include/amiconf.h +++ b/include/amiconf.h @@ -53,7 +53,7 @@ typedef long off_t; /* data librarian defs */ #define DLBFILE "nhdat" /* main library */ -/* nhsdat sound library not used in 3.7 */ +/* nhsdat sound library not used in 5.0 */ #undef DLBFILE2 #ifndef CROSS_TO_AMIGA diff --git a/include/global.h b/include/global.h index 88168858e..ef3497ea4 100644 --- a/include/global.h +++ b/include/global.h @@ -422,7 +422,7 @@ extern struct nomakedefs_s nomakedefs; #include "color.h" /* - * Version 3.7.x has aspirations of portable file formats. We + * Version 5.0.x has aspirations of portable file formats. We * make a distinction between MAIL functionality and MAIL_STRUCTURES * so that the underlying structures are consistent, whether MAIL is * defined or not. diff --git a/include/monsters.h b/include/monsters.h index 01bc6cc3a..202411128 100644 --- a/include/monsters.h +++ b/include/monsters.h @@ -972,7 +972,7 @@ 8, CLR_RED, SCORPION), /* * trappers, lurkers, &c - * Note: prior to 3.7, these were defined to do AD_DGST damage, + * Note: prior to 5.0, these were defined to do AD_DGST damage, * but they don't swallow their victims into their stomachs and * digest, they enfold and crush or suffocate. * The Monster Manual states that someone engulfed by a trapper @@ -2031,7 +2031,7 @@ | M1_OMNIVORE, M2_STRONG, 0, 13, HI_GOLD, GOLDEN_NAGA), - /* 3.7: guardian naga used to have three attacks: bite, spit, hug + /* 5.0: guardian naga used to have three attacks: bite, spit, hug but in order for the hug to succeed the two preceding attacks had to have hit, and it's not possible to both bite and spit, hence the hug never hit; change to spit, bite, touch, hug; if the bite @@ -2132,7 +2132,7 @@ M1_HUMANOID | M1_OMNIVORE | M1_POIS | M1_TPORT, M2_HOSTILE, M3_INFRAVISIBLE, 9, CLR_CYAN, QUANTUM_MECHANIC), - /* 3.7: from slash'em, to expand Q class; hit polymorphs target */ + /* 5.0: from slash'em, to expand Q class; hit polymorphs target */ MON(NAM("genetic engineer"), S_QUANTMECH, LVL(12, 12, 3, 10, 0), (G_GENO | 1), A(ATTK(AT_CLAW, AD_POLY, 1, 4), @@ -2695,7 +2695,7 @@ | M2_SHAPESHIFTER, M3_INFRAVISIBLE, 11, HI_DOMESTIC, DOPPELGANGER), - /* 3.7: shopkeepers used to have speed 18, but if/when they were + /* 5.0: shopkeepers used to have speed 18, but if/when they were hasted they always got 2 moves per turn and had a tendency to move away from blocking the door and then move right back; since they might start with a potion of speed and drink that as soon as the @@ -2925,7 +2925,7 @@ #define SEDUCTION_ATTACKS_NO \ A(ATTK(AT_CLAW, AD_PHYS, 1, 3), ATTK(AT_CLAW, AD_PHYS, 1, 3), \ ATTK(AT_BITE, AD_DRLI, 2, 6), NO_ATTK, NO_ATTK, NO_ATTK) - /* incubus and succubus; prior to 3.7, succubus and incubus were + /* incubus and succubus; prior to 5.0, succubus and incubus were distinct monsters; "amorous demon" is considered to be a temporary placeholder but may be here to stay... */ MON(NAMS("incubus", "succubus", "amorous demon"), S_DEMON, @@ -3195,7 +3195,7 @@ /* * sea monsters * - * 3.7: all the fish except kraken used to specify M1_SLITHY, presumably + * 5.0: all the fish except kraken used to specify M1_SLITHY, presumably * cloned from giant eel. Using "slither" to describe their movement * wasn't appropriate. Unfortunately, locomotion() isn't able to choose * "swim" as their movement description because it is only passed a diff --git a/include/objects.h b/include/objects.h index d9ae062c5..78d1c9d7a 100644 --- a/include/objects.h +++ b/include/objects.h @@ -224,7 +224,7 @@ WEAPON("stiletto", NoDes, /* 3.6: worm teeth and crysknives now stack; when a stack of teeth is enchanted at once, they fuse into one crysknife; when a stack of crysknives drops, the whole stack reverts to teeth */ -/* 3.7: change crysknife from MINERAL to BONE and worm tooth from 0 to BONE */ +/* 5.0: change crysknife from MINERAL to BONE and worm tooth from 0 to BONE */ WEAPON("worm tooth", NoDes, 1, 1, 0, 0, 20, 2, 2, 2, 0, 0, P_KNIFE, BONE, CLR_WHITE, WORM_TOOTH), diff --git a/include/patchlevel.h b/include/patchlevel.h index 68e54dbf5..ca88656ca 100644 --- a/include/patchlevel.h +++ b/include/patchlevel.h @@ -62,7 +62,7 @@ /*#define VERSION_COMPATIBILITY 0x03070000L*/ /****************************************************************************/ -/* Version 3.7.x */ +/* Version 5.0.x */ /* * NetHack 5.0.0, @@ -95,7 +95,7 @@ * the official 3.6.6 binary was built. * windows: switch from using keyhandling dll's to incorporating the three * variations (default, ray, 340) in sys/winnt/nttty.c - * curses: cherry-picked selectsaved code from 3.7 for menu of save files + * curses: cherry-picked selectsaved code from 5.0 for menu of save files * NetHackW: fix delayed rendering of cursor when using farlook */ diff --git a/include/tradstdc.h b/include/tradstdc.h index f4532aeba..a202c0c7b 100644 --- a/include/tradstdc.h +++ b/include/tradstdc.h @@ -157,7 +157,7 @@ typedef const char *vA; [nethack's core doesn't use VA_NEXT() so doesn't use VA_SHIFT() either, and this definition is just retained for completeness. lev_comp does use VA_NEXT(), but it passes all 'argX' arguments. - Note: as of 3.7.0, lev_comp doesn't exist anymore.] + Note: as of 5.0.0, lev_comp doesn't exist anymore.] */ #define VA_SHIFT() \ (arg1 = arg2, arg2 = arg3, arg3 = arg4, arg4 = arg5, arg5 = arg6, \ diff --git a/include/vmsconf.h b/include/vmsconf.h index 4fb77d24c..a4d1eb724 100644 --- a/include/vmsconf.h +++ b/include/vmsconf.h @@ -164,7 +164,7 @@ PANICTRACE_GDB=2 #at conclusion of panic, show a call traceback and then */ /* This used to be force-defined for VMS in topten.c, but with - * the global variable consolidation into g in 3.7, it has to be + * the global variable consolidation into g in 5.0, it has to be * defined here so that decl.h includes the field in g. */ #define UPDATE_RECORD_IN_PLACE diff --git a/include/winprocs.h b/include/winprocs.h index bbf97c91d..2797e7128 100644 --- a/include/winprocs.h +++ b/include/winprocs.h @@ -127,7 +127,7 @@ extern #define display_file (*windowprocs.win_display_file) #define start_menu (*windowprocs.win_start_menu) #define end_menu (*windowprocs.win_end_menu) -/* 3.7: There are real add_menu() and select_menu in the core now. +/* 5.0: There are real add_menu() and select_menu in the core now. * add_menu does some common activities, such as menu_colors. * select_menu does some before and after activities. * add_menu() and select_menu() are in windows.c @@ -151,7 +151,7 @@ extern #define nh_poskey (*windowprocs.win_nh_poskey) #define nhbell (*windowprocs.win_nhbell) #define nh_doprev_message (*windowprocs.win_doprev_message) -/* 3.7: There is a real getlin() in the core now, which does +/* 5.0: There is a real getlin() in the core now, which does * some before and after activities. * [alternative fix for menu search via ':'.] * getlin() is in windows.c @@ -297,7 +297,7 @@ struct wc_Opt { /* Macro for the currently active Window Port whose function pointers have been loaded */ #if 0 -/* 3.7 The string comparison version isn't used anymore */ +/* 5.0 The string comparison version isn't used anymore */ #define WINDOWPORT(wn) \ (windowprocs.name && !strncmpi((#wn), windowprocs.name, strlen((#wn)))) #endif diff --git a/include/wintype.h b/include/wintype.h index 3ec938d30..5d17e4147 100644 --- a/include/wintype.h +++ b/include/wintype.h @@ -167,7 +167,7 @@ typedef struct glyphinfo { #define MENU_ITEMFLAGS_SKIPINVERT 0x0000002U #define MENU_ITEMFLAGS_SKIPMENUCOLORS 0x0000004U -/* 3.7+ enhanced menu flags that not all window ports are likely to +/* 5.0+ enhanced menu flags that not all window ports are likely to * support initially. * * As behavior and appearance modification flags are added, the various diff --git a/src/attrib.c b/src/attrib.c index cd33557ad..27a0ad5d4 100644 --- a/src/attrib.c +++ b/src/attrib.c @@ -683,7 +683,7 @@ rnd_attr(void) { int i, x = rn2(100); - /* 3.7: the x -= ... calculation used to have an off by 1 error that + /* 5.0: the x -= ... calculation used to have an off by 1 error that resulted in the values being biased toward Str and away from Cha */ for (i = 0; i < A_MAX; ++i) if ((x -= gu.urole.attrdist[i]) < 0) diff --git a/src/dig.c b/src/dig.c index df27bb73d..0b69d6028 100644 --- a/src/dig.c +++ b/src/dig.c @@ -455,7 +455,7 @@ dig(void) } else if (digtyp == DIGTYP_BOULDER && (obj = sobj_at(BOULDER, dpx, dpy)) != 0) { fracture_rock(obj); - /*[3.7: this probably isn't necessary anymore]*/ + /*[5.0: this probably isn't necessary anymore]*/ if ((bobj = sobj_at(BOULDER, dpx, dpy)) != 0) { /* another boulder here, restack it to the top */ obj_extract_self(bobj); diff --git a/src/display.c b/src/display.c index 437d74154..2632b3fa8 100644 --- a/src/display.c +++ b/src/display.c @@ -2214,7 +2214,7 @@ flush_screen(int cursor_on_u) glyph_info bkglyphinfo = nul_glyphinfo; int bkglyph; - /* 3.7: don't update map, status, or perm_invent during save/restore */ + /* 5.0: don't update map, status, or perm_invent during save/restore */ if (_suppress_map_output()) return; @@ -3453,7 +3453,7 @@ t_warn(struct rm *lev) static const char warn_str[] = "wall_angle: %s: case %d: seenv = 0x%x"; const char *wname; - /* 3.7: non-T_wall cases added after shop repair (via breaching a wall, + /* 5.0: non-T_wall cases added after shop repair (via breaching a wall, using locking magic to put a door there, then unlocking the door; D_CLOSED carried over to the wall) triggered warning for "unknown" */ switch (lev->typ) { diff --git a/src/do.c b/src/do.c index ae39a0137..6d8747924 100644 --- a/src/do.c +++ b/src/do.c @@ -77,7 +77,7 @@ boulder_hits_pool( levl[rx][ry].typ = ROOM, levl[rx][ry].flags = 0; recalc_block_point(rx, ry); } - /* 3.7: normally DEADMONSTER() is used when traversing the fmon + /* 5.0: normally DEADMONSTER() is used when traversing the fmon list--dead monsters usually aren't still at specific map locations; however, if ice melts causing a giant to drown, that giant would still be on the map when it drops inventory; @@ -1533,7 +1533,7 @@ goto_level( * -2 5.21 4.17 0.0 * -3 2.08 0.0 0.0 * - * 3.7.0: the chance for the "mysterious force" to kick in goes down + * 5.0.0: the chance for the "mysterious force" to kick in goes down * as it kicks in, starting at 25% per climb attempt and dropping off * gradually but substantially. The drop off is greater when hero is * sent down farther so benefits lawfuls more than chaotics this time. @@ -2438,7 +2438,7 @@ set_wounded_legs(long side, int timex) set_itimeout(&HWounded_legs, (long) timex); /* the leg being wounded and its timeout might differ from one attack to the next, but we don't track the legs separately; - 3.7: both legs will ultimately heal together; this used to use + 5.0: both legs will ultimately heal together; this used to use direct assignment instead of bitwise-OR so getting wounded in one leg mysteriously healed the other */ EWounded_legs |= side; diff --git a/src/do_name.c b/src/do_name.c index 0fd1e98a0..81f8853be 100644 --- a/src/do_name.c +++ b/src/do_name.c @@ -433,7 +433,7 @@ objtyp_is_callable(int i) switch(objects[i].oc_class) { case AMULET_CLASS: - /* 3.7: calling these used to be allowed but that enabled the + /* 5.0: calling these used to be allowed but that enabled the player to tell whether two unID'd amulets of yendor were both fake or one was real by calling them distinct names and then checking discoveries to see whether first name was replaced diff --git a/src/do_wear.c b/src/do_wear.c index 6b24c426a..b92d7e31a 100644 --- a/src/do_wear.c +++ b/src/do_wear.c @@ -2501,7 +2501,7 @@ find_ac(void) uac -= u.ublessed; uac -= u.uspellprot; - /* put a cap on armor class [3.7: was +127,-128, now reduced to +/- 99 */ + /* put a cap on armor class [5.0: was +127,-128, now reduced to +/- 99 */ if (abs(uac) > AC_MAX) uac = sgn(uac) * AC_MAX; diff --git a/src/dokick.c b/src/dokick.c index 4e531a016..601810839 100644 --- a/src/dokick.c +++ b/src/dokick.c @@ -601,13 +601,13 @@ really_kick_object(coordxy x, coordxy y) || closed_door(x + u.dx, y + u.dy)) range = 1; - /* 3.7: this used to skip 'costly' handling if kickedobj->no_charge + /* 5.0: this used to skip 'costly' handling if kickedobj->no_charge was set but that optimization could result in no_charge staying set for objects kicked out of the shop */ shkp = find_objowner(gk.kickedobj, x, y); costly = (shkp && (costly_spot(x, y) || (costly_adjacent(shkp, x, y) && gk.kickedobj->unpaid))); - /* 3.7: give feedback about the item being kicked; some follow-on + /* 5.0: give feedback about the item being kicked; some follow-on messages refer to "it" */ Norep("You kick %s.", !isgold ? singular(gk.kickedobj, doname) : doname(gk.kickedobj)); diff --git a/src/dothrow.c b/src/dothrow.c index c63ad6412..8bc204915 100644 --- a/src/dothrow.c +++ b/src/dothrow.c @@ -2082,7 +2082,7 @@ thitmonst( /* throwing real gems to co-aligned unicorns boosts Luck, to cross-aligned unicorns changes Luck by random amount; throwing worthless glass doesn't affect Luck but doesn't anger them; - 3.7: treat rocks and gray stones as attacks rather than like glass + 5.0: treat rocks and gray stones as attacks rather than like glass and also treat gems or glass shot via sling as attacks */ if (obj->oclass == GEM_CLASS && is_unicorn(mon->data) && objects[obj->otyp].oc_material != MINERAL && !uslinging()) { diff --git a/src/eat.c b/src/eat.c index 179b44b0b..cde86e137 100644 --- a/src/eat.c +++ b/src/eat.c @@ -839,7 +839,7 @@ cprefx(int pm) /* life-saving needed to reach here */ exercise(A_WIS, FALSE); /* revive an actual corpse; can't do that if it was a tin; - 3.7: this used to assume that such tins were impossible but + 5.0: this used to assume that such tins were impossible but they can be wished for in wizard mode; they can't make it to normal play though because bones creation empties them */ if (svc.context.victual.piece /* Null for tins */ @@ -1891,7 +1891,7 @@ eatcorpse(struct obj *otmp) rotted -= 2L; } - /* 3.7: globs don't become tainted, they shrink away */ + /* 5.0: globs don't become tainted, they shrink away */ if (!glob && !stoneable && !slimeable && rotted > 5L) { boolean cannibal = maybe_cannibal(mnum, FALSE); @@ -2632,7 +2632,7 @@ edibility_prompts(struct obj *otmp) */ char buf[BUFSZ], foodsmell[BUFSZ], it_or_they[QBUFSZ]; - /* 3.7: decaying globs don't become tainted anymore; in 3.6, they did */ + /* 5.0: decaying globs don't become tainted anymore; in 3.6, they did */ boolean cadaver = (otmp->otyp == CORPSE), stoneorslime = FALSE; int material = objects[otmp->otyp].oc_material, mnum = otmp->corpsenm; long rotted = 0L; @@ -3179,7 +3179,7 @@ gethungry(void) u.uhunger--; /* ordinary food consumption */ /* - * 3.7: trigger is randomized instead of (moves % N). Makes + * 5.0: trigger is randomized instead of (moves % N). Makes * ring juggling (using the 'time' option to see the turn counter * in order to time swapping of a pair of rings of slow digestion, * wearing one on one hand, then putting on the other and taking @@ -3209,7 +3209,7 @@ gethungry(void) * Possessing the real Amulet imposes a separate hunger penalty * from wearing an amulet (so gets a double penalty when worn). * - * 3.7.0: Worn meat rings don't affect hunger. + * 5.0.0: Worn meat rings don't affect hunger. * Same with worn cheap plastic imitation of the Amulet. * +0 ring of protection might do something (enhanced "magical * cancellation") if hero doesn't have protection from some @@ -3222,7 +3222,7 @@ gethungry(void) */ switch (accessorytime) { /* note: use even cases among 0..19 only */ case 0: - /* 3.7: if not wearing a ring of slow digestion, obtaining + /* 5.0: if not wearing a ring of slow digestion, obtaining that property from worn armor (white dragon scales/mail) causes the armor to burn nutrition; since it's not actually a ring, we don't check for it on the ring diff --git a/src/hack.c b/src/hack.c index 3017eb2c7..78ca5579d 100644 --- a/src/hack.c +++ b/src/hack.c @@ -2298,7 +2298,7 @@ domove_fight_empty(coordxy x, coordxy y) } else if (solid) { /* glyph might indicate unseen terrain if hero is blind; unlike searching, this won't reveal what that terrain is; - 3.7: used to say "solid rock" for STONE, but that made it be + 5.0: used to say "solid rock" for STONE, but that made it be different from unmapped walls outside of rooms (and was wrong on arboreal levels) */ if (levl[x][y].seenv || IS_STWALL(levl[x][y].typ) @@ -2310,7 +2310,7 @@ domove_fight_empty(coordxy x, coordxy y) } /* note: 'solid' is misleadingly named and catches pools of water and lava as well as rock and walls; - 3.7: furniture too */ + 5.0: furniture too */ } else { Strcpy(buf, "thin air"); } diff --git a/src/mdlib.c b/src/mdlib.c index 873922fc1..8c8b0cd8d 100644 --- a/src/mdlib.c +++ b/src/mdlib.c @@ -93,7 +93,7 @@ staticfn void opt_out_words(char *, int *) NONNULLPTRS; staticfn void build_savebones_compat_string(void); static int idxopttext, done_runtime_opt_init_once = 0; -#define MAXOPT 60 /* 3.7: currently 40 lines get inserted into opttext[] */ +#define MAXOPT 60 /* 5.0: currently 40 lines get inserted into opttext[] */ static char *opttext[MAXOPT] = { 0 }; #define STOREOPTTEXT(line) \ ((void) ((idxopttext < MAXOPT) \ diff --git a/src/mhitu.c b/src/mhitu.c index 05e6f38aa..947e47fa4 100644 --- a/src/mhitu.c +++ b/src/mhitu.c @@ -1312,7 +1312,7 @@ gulpmu(struct monst *mtmp, struct attack *mattk) place_monster(mtmp, u.ux, u.uy); set_ustuck(mtmp); newsym(mtmp->mx, mtmp->my); - /* 3.7: dismount for all engulfers, not just for purple worms */ + /* 5.0: dismount for all engulfers, not just for purple worms */ if (u.usteed) { char buf[BUFSZ]; diff --git a/src/mkobj.c b/src/mkobj.c index 650b1502f..93f047d14 100644 --- a/src/mkobj.c +++ b/src/mkobj.c @@ -957,7 +957,7 @@ mksobj_init(struct obj **obj, boolean artif) /* for emphasis; glob quantity is always 1 and weight varies when other globs coalesce with it or this one shrinks */ otmp->quan = 1L; - /* 3.7: globs in 3.6.x left owt as 0 and let weight() fix + /* 5.0: globs in 3.6.x left owt as 0 and let weight() fix that up during 'obj->owt = weight(obj)' below, but now we initialize glob->owt explicitly so weight() doesn't need to perform any fix up and returns glob->owt as-is */ @@ -1899,7 +1899,7 @@ weight(struct obj *obj) manage glob->owt and there is nothing for weight() to do except return the current value as-is */ if (obj->globby) { - /* 3.7: in 3.6.x this checked for owt==0 and then used + /* 5.0: in 3.6.x this checked for owt==0 and then used owt as-is when non-zero or objects[].oc_weight if zero; we don't do that anymore because it confused calculating the weight of a container when a glob inside shrank down @@ -1964,7 +1964,7 @@ weight(struct obj *obj) } else if (obj->oclass == FOOD_CLASS && obj->oeaten) { return eaten_stat((int) obj->quan * wt, obj); } else if (obj->oclass == COIN_CLASS) { - /* 3.7: always weigh at least 1 unit; used to yield 0 for 1..49 */ + /* 5.0: always weigh at least 1 unit; used to yield 0 for 1..49 */ wt = (int) ((obj->quan + 50L) / 100L); return max(wt, 1); } else if (obj->otyp == HEAVY_IRON_BALL && obj->owt != 0) { diff --git a/src/monmove.c b/src/monmove.c index 1c6242896..a21716e06 100644 --- a/src/monmove.c +++ b/src/monmove.c @@ -1784,13 +1784,13 @@ m_move(struct monst *mtmp, int after) * attack it. */ if (intruder && intruder != mtmp - /* 3.7: this used to use 'dist2() < 2' which meant that intended + /* 5.0: this used to use 'dist2() < 2' which meant that intended attack was disallowed if they were adjacent diagonally */ && dist2(mtmp->mx, mtmp->my, tx, ty) <= 2) { gb.bhitpos.x = tx, gb.bhitpos.y = ty; gn.notonhead = (intruder->mx != tx || intruder->my != ty); covetousattack = mattackm(mtmp, intruder); - /* 3.7: this used to erroneously use '== 2' (M_ATTK_DEF_DIED) */ + /* 5.0: this used to erroneously use '== 2' (M_ATTK_DEF_DIED) */ if (covetousattack & M_ATTK_AGR_DIED) return MMOVE_DIED; mmoved = MMOVE_MOVED; diff --git a/src/objnam.c b/src/objnam.c index 032c6c0e6..f28367b5b 100644 --- a/src/objnam.c +++ b/src/objnam.c @@ -4106,9 +4106,9 @@ readobjnam_preparse(struct _readobjnam_data *d) break; d->gsize = 1; } else if (!strncmpi(d->bp, "medium ", l = 7)) { - /* 3.7: in 3.6, "medium" was only used during wishing and the + /* 5.0: in 3.6, "medium" was only used during wishing and the mid-size glob had no adjective when formatted, but as of - 3.7, "medium" has become an explicit part of the name for + 5.0, "medium" has become an explicit part of the name for combined globs of at least 5 individual ones (owt >= 100) and less than 15 (owt < 300) */ d->gsize = 2; diff --git a/src/options.c b/src/options.c index cdf29ed20..18edcfa96 100644 --- a/src/options.c +++ b/src/options.c @@ -3679,7 +3679,7 @@ optfn_scores( if ((op = string_for_opt(opts, FALSE)) == empty_optstr) return optn_err; - /* 3.7: earlier versions left old values for unspecified arguments + /* 5.0: earlier versions left old values for unspecified arguments if player's scores:foo option only specified some of the three; in particular, attempting to use 'scores:own' rather than 'scores:0 top/0 around/own' didn't work as intended */ diff --git a/src/pager.c b/src/pager.c index 4c40594de..9e399fff3 100644 --- a/src/pager.c +++ b/src/pager.c @@ -556,7 +556,7 @@ look_at_monster( /* describe a pool location's contents; might return a static buffer so caller should use it or copy it before calling waterbody_name() again - [3.7: moved here from mkmaze.c] */ + [5.0: moved here from mkmaze.c] */ const char * waterbody_name(coordxy x, coordxy y) { diff --git a/src/potion.c b/src/potion.c index f289c1d7b..fc2d629a3 100644 --- a/src/potion.c +++ b/src/potion.c @@ -582,7 +582,7 @@ dodrink(void) * was no longer dealing with an inventory item. Unwearing * the current potion is intended to keep it in inventory.] * - * 3.7: switch back to relying on useup() unless the object is + * 5.0: switch back to relying on useup() unless the object is * actually worn. Otherwise drinking a stack of unpaid potions * one by one in a shop makes each one a separate used-up item * for 'Ix' invent display and for itemized shop billing instead diff --git a/src/read.c b/src/read.c index 967824df2..614466e7f 100644 --- a/src/read.c +++ b/src/read.c @@ -1505,7 +1505,7 @@ seffect_remove_curse(struct obj **sobjp) if (scursed) { pline_The("scroll disintegrates."); } else { - /* 3.7: this used to use a straight + /* 5.0: this used to use a straight for (obj = invent; obj; obj = obj->nobj) {} traversal, but for the confused case, secondary weapon might become cursed and be dropped, moving it from the invent chain @@ -3212,7 +3212,7 @@ create_particular_parse( d->which = name_to_mon(bufp, &gender_name_var); /* * With the introduction of male and female monster names - * in 3.7, preserve that detail. + * in 5.0, preserve that detail. * * If d->fem is already set to MALE or FEMALE at this juncture, it means * one of those terms was explicitly specified. diff --git a/src/rumors.c b/src/rumors.c index 9d4ada852..e33dea512 100644 --- a/src/rumors.c +++ b/src/rumors.c @@ -303,7 +303,7 @@ rumor_check(void) DISABLE_WARNING_FORMAT_NONLITERAL -/* 3.7: augments rumors_check(); test 'engrave' or 'epitaph' or 'bogusmon' */ +/* 5.0: augments rumors_check(); test 'engrave' or 'epitaph' or 'bogusmon' */ staticfn void others_check( const char *ftype, /* header: "{Engravings|Epitaphs|Bogus monsters}:" */ diff --git a/src/sfstruct.c b/src/sfstruct.c index a58de75eb..268e2e3ac 100644 --- a/src/sfstruct.c +++ b/src/sfstruct.c @@ -308,7 +308,7 @@ static long floc = 0L; /* * historical structlevel savefile writing and reading routines follow. - * These were moved here from save.c and restore.c between 3.6.3 and 3.7.0. + * These were moved here from save.c and restore.c between 3.6.3 and 5.0.0,. */ staticfn int getidx(int, int); diff --git a/src/shk.c b/src/shk.c index 4180ec670..09b184fd9 100644 --- a/src/shk.c +++ b/src/shk.c @@ -1525,7 +1525,7 @@ cheapest_item(int ibillct, Bill *ibill) long gmin = ibill[0].cost; /* - * 3.7: old version didn't determine cheapest item correctly if it + * 5.0: old version didn't determine cheapest item correctly if it * was either the partly used or partly intact portion of a partially * used stack. Rather than modify it to use bp_to_obj() in order to * obtain quanities for every entry on eshkp->bill_p[], switch to @@ -2107,7 +2107,7 @@ pay_billed_items( } while (via_menu); /* - * 3.7: this used to make two passes through eshkp->bill_p[], + * 5.0: this used to make two passes through eshkp->bill_p[], * the first for used up items and the second for unpaid ones. * Items which were partly used were processed on both passes. * diff --git a/src/sit.c b/src/sit.c index 5857dec28..fa88f35ec 100644 --- a/src/sit.c +++ b/src/sit.c @@ -214,7 +214,7 @@ throne_sit_effect(void) You_feel("somehow out of place..."); } - /* 3.7: when the random chance for removal is hit, ask for confirmation + /* 5.0: when the random chance for removal is hit, ask for confirmation if in wizard mode, and remove the throne even if hero was teleported away from it. [This used to remove a throne at hero's current location if there happened to be one, so for the teleport case that diff --git a/src/sounds.c b/src/sounds.c index d7652d62a..7089610d0 100644 --- a/src/sounds.c +++ b/src/sounds.c @@ -1080,7 +1080,7 @@ domonnoise(struct monst *mtmp) } else switch (monsndx(ptr)) { case PM_HOBBIT: - /* 3.7: the 'complains' message used to be given if the + /* 5.0: the 'complains' message used to be given if the hobbit's current hit points were at 10 below max or less, but their max is normally less than 10 so it would almost never occur */ diff --git a/src/timeout.c b/src/timeout.c index 83d1aaf9a..75064b5d1 100644 --- a/src/timeout.c +++ b/src/timeout.c @@ -961,7 +961,7 @@ fall_asleep(int how_long, boolean wakeup_msg) if (wakeup_msg && gm.multi == how_long) { /* caller can follow with a direct call to Hear_again() if there's a need to override this when wakeup_msg is true */ - /* 3.7: how_long is negative so wasn't actually incrementing the + /* 5.0: how_long is negative so wasn't actually incrementing the deafness timeout when it used to be passed as-is */ incr_itimeout(&HDeaf, abs(how_long)); disp.botl = TRUE; diff --git a/src/trap.c b/src/trap.c index 7915cee7c..8b40d3faf 100644 --- a/src/trap.c +++ b/src/trap.c @@ -5311,7 +5311,7 @@ untrap_prob( chance = 1; /* else chance stays 3 */ } else if (!webmaker(u.umonst->data)) { - chance = 7; /* 3.7: used to be 30 */ + chance = 7; /* 5.0: used to be 30 */ } } if (Confusion || Hallucination) @@ -5996,7 +5996,7 @@ untrap( } /* end if */ if (boxcnt) { - /* 3.7: this used to allow searching for traps on multiple + /* 5.0: this used to allow searching for traps on multiple containers on the same move and needed to keep track of whether any had been found but not attempted to untrap; now at most one per move may be checked and we only @@ -6855,7 +6855,7 @@ lava_effects(void) /* Check whether we should burn away boots *first* so we know whether to * make the player sink into the lava. Assumption: water walking only * comes from boots. - * (3.7: that assumption is no longer true, but having boots be the first + * (5.0: that assumption is no longer true, but having boots be the first * thing to come into contact with lava makes sense.) */ if (uarmf && (uarmf->in_use diff --git a/src/uhitm.c b/src/uhitm.c index c5a18a000..8affa9699 100644 --- a/src/uhitm.c +++ b/src/uhitm.c @@ -2202,7 +2202,7 @@ steal_it(struct monst *mdef, struct attack *mattk) if (ustealo) { /* we will be taking everything */ char heshe[20]; - /* 3.7: this uses hero's base gender rather than nymph femininity + /* 5.0: this uses hero's base gender rather than nymph femininity but was using hardcoded pronouns She/her for target monster; switch to dynamic pronoun */ if (gender(mdef) == (int) u.mfemale @@ -4228,7 +4228,7 @@ mhitm_ad_ston( pline("%s seems to grimace.", Monnam(magr)); } /* - * 3.7: New moon is no longer overridden by carrying a + * 5.0: New moon is no longer overridden by carrying a * lizard corpse. Having the moon's impact on terrestrial * activity be affected by carrying a dead critter felt * silly. diff --git a/src/windows.c b/src/windows.c index b6c61f2c9..d196ecd50 100644 --- a/src/windows.c +++ b/src/windows.c @@ -1186,7 +1186,7 @@ dump_fmtstr( else Strcpy(tmpbuf, "{current date+time}"); break; - case 'v': /* version, eg. "3.7.0-0" */ + case 'v': /* version, eg. "5.0.0,-0" */ Sprintf(tmpbuf, "%s", version_string(verbuf, sizeof verbuf)); break; case 'u': /* UID */ diff --git a/src/wizard.c b/src/wizard.c index 16dc405c9..b09e3a150 100644 --- a/src/wizard.c +++ b/src/wizard.c @@ -620,7 +620,7 @@ nasty(struct monst *summoner) for (i = rnd(tmp); i > 0 && count < MAXNASTIES; --i) { /* Of the 44 nasties[], 10 are lawful, 14 are chaotic, * and 20 are neutral. [These numbers are up date for - * 3.7.0; the ones in the next paragraph are not....] + * 5.0.0; the ones in the next paragraph are not....] * * Neutral caster, used for late-game harassment, * has 18/42 chance to stop the inner loop on each diff --git a/src/worm.c b/src/worm.c index 23e908942..c5a12fd12 100644 --- a/src/worm.c +++ b/src/worm.c @@ -224,7 +224,7 @@ worm_move(struct monst *worm) wgrowtime[wnum] = svm.moves + rnd(5); } else { int mmove = mcalcmove(worm, FALSE), - /* prior to 3.7.0, next-grow increment was 3..17 but since + /* prior to 5.0.0,, next-grow increment was 3..17 but since it got checked every 4th turn when the speed 3 worm got to move, it was effectively 0..5; also, its usage was 'wgrowtime += incr', so often 'wgrowtime' would be diff --git a/src/zap.c b/src/zap.c index e26c22fcf..c3d53a4fe 100644 --- a/src/zap.c +++ b/src/zap.c @@ -198,7 +198,7 @@ bhitm(struct monst *mtmp, struct obj *otmp) seemimic(mtmp); shieldeff(mtmp->mx, mtmp->my); pline("Boing!"); - /* 3.7: used to 'break' to avoid setting learn_it here */ + /* 5.0: used to 'break' to avoid setting learn_it here */ } else if (u.uswallow || rnd(20) < 10 + find_mac(mtmp)) { if (disguised_mimic) seemimic(mtmp); @@ -1865,7 +1865,7 @@ poly_obj(struct obj *obj, int id) while (otmp->otyp == SPE_POLYMORPH) otmp->otyp = rnd_class(svb.bases[SPBOOK_CLASS], SPE_BLANK_PAPER); /* reduce spellbook abuse; non-blank books degrade; - 3.7: novels don't use spestudied so shouldn't degrade to blank + 5.0: novels don't use spestudied so shouldn't degrade to blank (but don't force spestudied to zero for them since a non-zero value could get passed along to a future polymorph) */ if (otmp->otyp != SPE_BLANK_PAPER && otmp->otyp != SPE_NOVEL) { @@ -4547,7 +4547,7 @@ zhitu( } /* - * 3.7: when fatal, this used to yield "Killed by ." without any + * 5.0: when fatal, this used to yield "Killed by ." without any * information about who was responsible. Now 'buzzer' is used to try * to supply "zapped/cast/breathed by [imitating ]." * diff --git a/util/makedefs.c b/util/makedefs.c index a19a5ae5e..796bd9788 100644 --- a/util/makedefs.c +++ b/util/makedefs.c @@ -1590,7 +1590,7 @@ do_oracles(void) /* Read one line from input, up to and including the next newline * character. Returns a pointer to the heap-allocated string, or a * null pointer if no characters were read. - * 3.7: redone to use nethack's alloc() rather than libc's malloc() + * 5.0: redone to use nethack's alloc() rather than libc's malloc() * and realloc(). */ static char * diff --git a/util/sfctool.c b/util/sfctool.c index 8d395cbbe..2c7dc63ef 100644 --- a/util/sfctool.c +++ b/util/sfctool.c @@ -195,7 +195,7 @@ main(int argc, char *argv[]) exit(EXIT_FAILURE); sz = strlen(folderbuf); (void) snprintf(eos(folderbuf), sizeof folderbuf - sz, - "\\AppData\\Local\\NetHack\\3.7\\"); + "\\AppData\\Local\\NetHack\\5.0\\"); // initoptions_init(); // This allows OPTIONS in syscf on Windows. set_default_prefix_locations(argv[0]); #endif