-/* NetHack 3.6 cmd.c $NHDT-Date: 1457207033 2016/03/05 19:43:53 $ $NHDT-Branch: chasonr $:$NHDT-Revision: 1.220 $ */
+/* NetHack 3.6 cmd.c $NHDT-Date: 1493946186 2017/05/05 01:03:06 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.255 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
}
}
-/* characteristics: expanded version of bottom line strength, dexterity, &c */
+/* characteristics: expanded version of bottom line strength, dexterity, &c;
+ [3.6.1: now includes all status info (except things already shown in the
+ 'background' section), primarily so that blind players can suppress the
+ status line(s) altogether and use ^X feedback on demand to view HP, &c] */
STATIC_OVL void
characteristics_enlightenment(mode, final)
int mode;
enl_msg("Your armor class ", "is ", "was ", buf, "");
if (Upolyd) {
- Sprintf(buf, "%d hit dice", mons[u.umonnum].mlevel);
+ switch (mons[u.umonnum].mlevel) {
+ case 0:
+ /* status line currently being explained shows "HD:0" */
+ Strcpy(buf, "0 hit dice (actually 1/2)");
+ break;
+ case 1:
+ Strcpy(buf, "1 hit die");
+ break;
+ default:
+ Sprintf(buf, "%d hit dice", mons[u.umonnum].mlevel);
+ break;
+ }
} else {
/* flags.showexp does not matter */
/* experience level is already shown in the Background section */
Sprintf(buf, "%-1ld experience point%s",
- u.uexp, u.uexp == 1 ? "" : "s");
+ u.uexp, plur(u.uexp));
}
you_have(buf, "");
- Sprintf(buf, " You entered the dungeon %ld turn%s ago",
- moves, moves == 1 ? "" : "s");
- putstr(en_win, 0, buf);
+ /* this is shown even if the 'time' option is off */
+ Sprintf(buf, "the dungeon %ld turn%s ago", moves, plur(moves));
+ /* same phrasing at end of game: "entered" is unconditional */
+ enlght_line(You_, "entered ", buf, "");
#ifdef SCORE_ON_BOTL
- Sprintf(buf, "%ld", botl_score());
- enl_msg("Your score ", "is ", "was ", buf, "");
+ if (flags.showscore) {
+ /* describes what's shown on status line, which is an approximation;
+ only show it here if player has the 'showscore' option enabled */
+ Sprintf(buf, "%ld%s", botl_score(),
+ !final ? "" : " before end-of-game adjustments");
+ enl_msg("Your score ", "is ", "was ", buf, "");
+ }
#endif
/* bottom line order */