From: PatR Date: Sat, 24 Oct 2020 10:17:19 +0000 (-0700) Subject: disclosure prompt phrasing X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1b37ac6280216d059781511a8e2d3c7c949cb85f;p=nethack disclosure prompt phrasing With to-be-3.7, if game ends without any achievements, the conduct disclosure prompt is the same as it has always been Do you want to see your conduct? If it ends after attaining one achievement (probably entering the mines or acquiring the second rank title when gaining Xp level 3) you're asked Do you want to see your conduct and achievement? which looks awkward after the fact if 'y' reveals multiple conducts. Instead of deciding whether to pluralize "conduct(s)", simplify the prompt when one or more achievements have been attained to be Do you want to see your conduct and achievements? That works even when there is only one achievement. --- diff --git a/src/end.c b/src/end.c index d8187a9e8..bdce05a88 100644 --- a/src/end.c +++ b/src/end.c @@ -1,4 +1,4 @@ -/* NetHack 3.7 end.c $NHDT-Date: 1597182933 2020/08/11 21:55:33 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.212 $ */ +/* NetHack 3.7 end.c $NHDT-Date: 1603534633 2020/10/24 10:17:13 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.214 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /*-Copyright (c) Robert Patrick Rankin, 2012. */ /* NetHack may be freely redistributed. See license for details. */ @@ -820,9 +820,14 @@ boolean taken; if (should_query_disclose_option('c', &defquery)) { int acnt = count_achievements(); - Sprintf(qbuf, "Do you want to see your conduct%s%s?", - (acnt > 0) ? " and achievement" : "", - (acnt > 1) ? "s" : ""); + Sprintf(qbuf, "Do you want to see your conduct%s?", + /* this was distinguishing between one achievement and + multiple achievements, but "conduct and achievement" + looked strange if multiple conducts got shown (which + is usual for an early game death); we could switch + to plural vs singular for conducts but the less + specific "conduct and achievements" is sufficient */ + (acnt > 0) ? " and achievements" : ""); c = yn_function(qbuf, ynqchars, defquery); } else { c = defquery;