more "disclose" handling
Even though the in game help now lists the actual disclosure values instead of "all" as the default value, implement support for "all" (also for "none") since doing so is trivial.
This commit is contained in:
+1
-1
@@ -69,7 +69,7 @@ provide feedback when going invisible after eating a stalker
|
|||||||
killer on tombstone had no prefix for starvation/exhaustion case
|
killer on tombstone had no prefix for starvation/exhaustion case
|
||||||
ensure proper message ordering for boulder trap messages
|
ensure proper message ordering for boulder trap messages
|
||||||
clean up data set by join_map that is overlaid by MAPs on special levels
|
clean up data set by join_map that is overlaid by MAPs on special levels
|
||||||
clarify disclose option default in opthelp
|
clarify disclose option default in opthelp, and support "all" as old help said
|
||||||
|
|
||||||
|
|
||||||
Platform- and/or Interface-Specific Fixes
|
Platform- and/or Interface-Specific Fixes
|
||||||
|
|||||||
+17
-18
@@ -1,4 +1,4 @@
|
|||||||
/* SCCS Id: @(#)options.c 3.4 2003/04/30 */
|
/* SCCS Id: @(#)options.c 3.4 2003/05/19 */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
|
|
||||||
@@ -1681,29 +1681,28 @@ goodfruit:
|
|||||||
* string as a prefix to get the desired behaviour.
|
* string as a prefix to get the desired behaviour.
|
||||||
*
|
*
|
||||||
* For backward compatibility, no prefix is required,
|
* For backward compatibility, no prefix is required,
|
||||||
* and the presence of a i,a,g,v, or c without a
|
* and the presence of a i,a,g,v, or c without a prefix
|
||||||
* prefix sets the corresponding value to DISCLOSE_YES_WITHOUT_PROMPT;
|
* sets the corresponding value to DISCLOSE_YES_WITHOUT_PROMPT.
|
||||||
*/
|
*/
|
||||||
boolean badopt = FALSE;
|
boolean badopt = FALSE;
|
||||||
int idx, prefix_val;
|
int idx, prefix_val;
|
||||||
if (!(op = string_for_opt(opts, TRUE))) {
|
|
||||||
/* for backwards compatibility, "disclose" without a
|
op = string_for_opt(opts, TRUE);
|
||||||
* value means all (was inventory and attributes,
|
if (op && negated) {
|
||||||
* the only things available then), but negated
|
|
||||||
* it means "none"
|
|
||||||
* (note "none" contains none of "iavkgc")
|
|
||||||
*/
|
|
||||||
for (num = 0; num < NUM_DISCLOSURE_OPTIONS; num++) {
|
|
||||||
if (negated)
|
|
||||||
flags.end_disclose[num] = DISCLOSE_NO_WITHOUT_PROMPT;
|
|
||||||
else flags.end_disclose[num] = DISCLOSE_PROMPT_DEFAULT_YES;
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (negated) {
|
|
||||||
bad_negation("disclose", TRUE);
|
bad_negation("disclose", TRUE);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
/* "disclose" without a value means "all with prompting"
|
||||||
|
and negated means "none without prompting" */
|
||||||
|
if (!op || !strcmpi(op, "all") || !strcmpi(op, "none")) {
|
||||||
|
if (op && !strcmpi(op, "none")) negated = TRUE;
|
||||||
|
for (num = 0; num < NUM_DISCLOSURE_OPTIONS; num++)
|
||||||
|
flags.end_disclose[num] = negated ?
|
||||||
|
DISCLOSE_NO_WITHOUT_PROMPT :
|
||||||
|
DISCLOSE_PROMPT_DEFAULT_YES;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
num = 0;
|
num = 0;
|
||||||
prefix_val = -1;
|
prefix_val = -1;
|
||||||
while (*op && num < sizeof flags.end_disclose - 1) {
|
while (*op && num < sizeof flags.end_disclose - 1) {
|
||||||
|
|||||||
Reference in New Issue
Block a user