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.
This commit is contained in:
PatR
2020-10-24 03:17:19 -07:00
parent 8cc75bf583
commit 1b37ac6280

View File

@@ -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;