>B1014 <Someone> [reported] change request - disclosure default

>
>	I'd like the default for "Would you like to see your <whatever>"
>	at the end of a game to be "y" instead of "n". I haven't asked
>	for full disclosure in order to have it skipped if I press the
>	space bar once too often by mistake.

This changes the way the flags.end_disclose array is used to
allow what this request is asking for.  It should be backward
compatible with previous "disclose" options.

The order that the end_disclore options are stored:
inventory, attribs, vanquished, genocided, conduct
There is an array in flags:
	end_disclose[NUM_DISCLOSURE_OPT];
with option settings for the each of the following:
iagvc [see disclosure_options in decl.c]:
Legal setting values in that array are:
	DISCLOSE_PROMPT_DEFAULT_YES  ask with default answer yes
	DISCLOSE_PROMPT_DEFAULT_NO   ask with default answer no
	DISCLOSE_YES_WITHOUT_PROMPT  always disclose and don't ask
	DISCLOSE_NO_WITHOUT_PROMPT   never disclose and don't ask

Those setting values can be used in the option
string as a prefix to each disclosure option
to get the desired behaviour for that option.

For backward compatibility, no prefix is actually required,
and the presence of a i,a,g,v, or c without a prefix sets
the corresponding value to DISCLOSE_YES_WITHOUT_PROMPT;

The actual prefixes used are controlled by the following in flag.h:
#define DISCLOSE_PROMPT_DEFAULT_YES	'y'
#define DISCLOSE_PROMPT_DEFAULT_NO	'n'
#define DISCLOSE_YES_WITHOUT_PROMPT	'+'
#define DISCLOSE_NO_WITHOUT_PROMPT	'-'

As far as the docs go, I don't know if I've got the *roff
stuff right.   The TeX stuff looks okay when I converted it to .pdf.

This increments EDITLEVEL.  If that is a problem, I can
add a routine to restore.c to perform a conversion of the old
values in flags. Let me know.
This commit is contained in:
nethack.allison
2002-01-27 01:26:59 +00:00
parent df9092ccb5
commit 8389fb1f29
9 changed files with 287 additions and 67 deletions

View File

@@ -39,7 +39,7 @@
%.au
\author{Eric S. Raymond\\
(Extensively edited and expanded for 3.3)}
\date{January 22, 2002}
\date{January 26, 2002}
\maketitle
@@ -2067,13 +2067,39 @@ characters for such terminals, so you should specify it when appropriate
even if you override the selections with your own graphics strings.
%.lp
\item[\ib{disclose}]
Offer to disclose various information when the game ends (default all).
The possibilities are identifying your inventory (`{\tt i}'),
disclosing your attributes (`{\tt a}'), summarizing monsters that have been
vanquished (`{\tt v}'), listing monster species that have been
genocided (`{\tt g}'), and displaying your conduct (`{\tt c}').
Controls options for disclosing various information when the game ends (defaults
to all possibilities being disclosed).
The possibilities are:
%.sd
%.si
{\tt i} --- disclose your inventory.\\
{\tt a} --- disclose your attributes.\\
{\tt v} --- summarizing monsters that have been vanquished.\\
{\tt g} --- listing monster species that have been genocided.\\
{\tt c} --- displaying your conduct.
%.ei
%.ed
Each disclosure possibility can optionally be preceded by a prefix which
let you refine how it behaves. Here are some of the prefixes:
%.sd
%.si
{\tt y} --- prompt you and default to yes on the prompt.\\
{\tt n} --- prompt you and default to no on the prompt.\\
{\tt +} --- disclose it without prompting.\\
{\tt -} --- do not disclose it and do not prompt.
%.ei
%.ed
Note that the vanquished monsters list includes all monsters killed by
traps and each other as well as by you.
traps and each other as well as by you. (ex.\ ``{\tt disclose:yina+v-g-c}'')
The example sets {\it inventory\/} to {\it prompt\/} and default to {\it yes\/},
{\it attributes\/} to {\it prompt\/} and default to {\it no\/},
{\it vanquished\/} to {\it disclose without prompting\/},
{\it genocided\/} to {\it not disclose\/} and not to {\it prompt\/}, and
{\it conduct\/} to {\it not disclose\/} and not to {\it prompt\/}.
%.lp
\item[\ib{dogname}]
Name your starting dog (ex.\ ``{\tt dogname:Fang}'').