From 42a0285fa0696f3d9324aac2808302a7f1146207 Mon Sep 17 00:00:00 2001 From: "nethack.rankin" Date: Sat, 23 Mar 2002 12:08:19 +0000 Subject: [PATCH] conduct bit Document the way to decline a wish or genocide, and allow both actions to accept both "none" and "nothing" so that players don't have to remember which response goes with which prompt. --- doc/Guidebook.mn | 20 +++++++++++++------- doc/Guidebook.tex | 20 +++++++++++++------- doc/fixes34.1 | 4 ++++ src/objnam.c | 5 +++-- src/read.c | 7 ++++--- 5 files changed, 37 insertions(+), 19 deletions(-) diff --git a/doc/Guidebook.mn b/doc/Guidebook.mn index cdf633630..5d4b5fd6f 100644 --- a/doc/Guidebook.mn +++ b/doc/Guidebook.mn @@ -1474,7 +1474,7 @@ found in the dungeon. Swallowing and digesting a monster while polymorphed is treated as if you ate the creature's corpse. Eating leather, dragon hide, or bone items while polymorphed into a creature that can digest it, or eating monster brains -while polymorphed into a (master) mind flayer, is considered eating +while polymorphed into a mind flayer, is considered eating an animal, although wax is only an animal byproduct. .pg Regardless of conduct, there will be some items which are indigestible, @@ -1520,15 +1520,21 @@ knowledge of spells) in your starting inventory is assumed to be learned from your teachers prior to the start of the game and isn't counted. .pg -There are several other minor challenges. It is possible to eliminate -a species of monsters by genocide; playing without this feature is -considered a challenge. You can change the form of any object into -another object of the same type (``polypiling'') or the form of your own +There are several other challenges tracked by the game. It is possible +to eliminate one or more species of monsters by genocide; playing without +this feature is considered a challenge. When you game offers you an +opportunity to genocide monsters, you may respond with the monster type +``none'' if you want to decline. You can change the form of an item into +another item of the same type (``polypiling'') or the form of your own body into another creature (``polyself'') by wand, spell, or potion of polymorph; avoiding these effects are each considered challenges. +Polymorphing monsters, including pets, does not break either of these +challenges. Finally, you may sometimes receive wishes; a game without an attempt to -wish for an object is a challenge, as is a game without wishing for -an artifact (even if the artifact immediately disappears). +wish for any items is a challenge, as is a game without wishing for +an artifact (even if the artifact immediately disappears). When the +game offers you an opportunity to make a wish for an item, you may +choose ``nothing'' if you want to decline. .hn 1 Options diff --git a/doc/Guidebook.tex b/doc/Guidebook.tex index 0729c623d..a4ecc8a99 100644 --- a/doc/Guidebook.tex +++ b/doc/Guidebook.tex @@ -1861,7 +1861,7 @@ found in the dungeon. Swallowing and digesting a monster while polymorphed is treated as if you ate the creature's corpse. Eating leather, dragon hide, or bone items while polymorphed into a creature that can digest it, or eating monster brains -while polymorphed into a (master) mind flayer, is considered eating +while polymorphed into a mind flayer, is considered eating an animal, although wax is only an animal byproduct. %.pg @@ -1914,15 +1914,21 @@ learned from your teachers prior to the start of the game and isn't counted. %.pg -There are several other minor challenges. It is possible to eliminate -a species of monsters by genocide; playing without this feature is -considered a challenge. You can change the form of any object into -another object of the same type (``polypiling'') or the form of your own +There are several other challenges tracked by the game. It is possible +to eliminate one or more species of monsters by genocide; playing without +this feature is considered a challenge. When you game offers you an +opportunity to genocide monsters, you may respond with the monster type +``none'' if you want to decline. You can change the form of an item into +another item of the same type (``polypiling'') or the form of your own body into another creature (``polyself'') by wand, spell, or potion of polymorph; avoiding these effects are each considered challenges. +Polymorphing monsters, including pets, does not break either of these +challenges. Finally, you may sometimes receive wishes; a game without an attempt to -wish for an object is a challenge, as is a game without wishing for -an artifact (even if the artifact immediately disappears). +wish for any items is a challenge, as is a game without wishing for +an artifact (even if the artifact immediately disappears). When the +game offers you an opportunity to make a wish for an item, you may +choose ``nothing'' if you want to decline. %.hn 1 \section{Options} diff --git a/doc/fixes34.1 b/doc/fixes34.1 index 1c2df9b89..cab66f961 100644 --- a/doc/fixes34.1 +++ b/doc/fixes34.1 @@ -6,6 +6,10 @@ prevent panic() obj_not_free when pushing a boulder over a landmine there was no feedback when successfully hitting shock resistant monsters with Mjollnir via hand-to-hand attack unbought single-bite food eaten in shops was not billed properly +add wishing for "nothing" and genociding "none" to the conduct section + of the Guidebook +allow both wishing and genocide to accept either "none" or "nothing" when + the player wants to decline Platform- and/or Interface-Specific Fixes diff --git a/src/objnam.c b/src/objnam.c index 20506124a..03dc8cc9a 100644 --- a/src/objnam.c +++ b/src/objnam.c @@ -1,4 +1,4 @@ -/* SCCS Id: @(#)objnam.c 3.4 2002/02/22 */ +/* SCCS Id: @(#)objnam.c 3.4 2002/03/22 */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -1659,7 +1659,8 @@ boolean from_user; (void)mungspaces(bp); /* allow wishing for "nothing" to preserve wishless conduct... [now requires "wand of nothing" if that's what was really wanted] */ - if (!strcmpi(bp, "nothing") || !strcmpi(bp, "nil")) return no_wish; + if (!strcmpi(bp, "nothing") || !strcmpi(bp, "nil") || + !strcmpi(bp, "none")) return no_wish; /* save the [nearly] unmodified choice string */ Strcpy(fruitbuf, bp); diff --git a/src/read.c b/src/read.c index 32516e25e..b26625647 100644 --- a/src/read.c +++ b/src/read.c @@ -1,4 +1,4 @@ -/* SCCS Id: @(#)read.c 3.4 2001/12/03 */ +/* SCCS Id: @(#)read.c 3.4 2002/03/22 */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -1424,7 +1424,8 @@ do_class_genocide() (void)mungspaces(buf); } while (buf[0]=='\033' || !buf[0]); /* choosing "none" preserves genocideless conduct */ - if (!strcmpi(buf, "none")) return; + if (!strcmpi(buf, "none") || + !strcmpi(buf, "nothing")) return; if (strlen(buf) == 1) { if (buf[0] == ILLOBJ_SYM) @@ -1579,7 +1580,7 @@ int how; buf); (void)mungspaces(buf); /* choosing "none" preserves genocideless conduct */ - if (!strcmpi(buf, "none")) { + if (!strcmpi(buf, "none") || !strcmpi(buf, "nothing")) { /* ... but no free pass if cursed */ if (!(how & REALLY)) { ptr = rndmonst();