Glory of Arioch vs spellbook

From the newsgroup (reported for slash'em but applies to nethack too):
a chaotic monk was crowned and told he or she had been "chosen to
steal souls for My Glory!" while being given a spellbook of restore
ability which has nothing whatever to do with soul stealing.  There's
alternate wording for when Stormbringer can't be given because it
already exists; also use that for when it's not going to be given
because the character is discouraged against wielding weapons.
This commit is contained in:
PatR
2019-07-30 17:24:33 -07:00
parent c4a2f20af0
commit 6dffe52a27
2 changed files with 23 additions and 17 deletions

View File

@@ -1,4 +1,4 @@
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.95 $ $NHDT-Date: 1564269131 2019/07/27 23:12:11 $
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.96 $ $NHDT-Date: 1564532667 2019/07/31 00:24:27 $
This fixes36.3 file is here to capture information about updates in the 3.6.x
lineage following the release of 3.6.2 in May 2019. Please note, however,
@@ -107,6 +107,9 @@ hero poly'd into nymph would steal gold along with other items
change wizard mode #panic to require "yes" if 'paranoid_confirm:quit' is set
add some additional validation checks when setting up a new timer (triggered
by an ancient source comment rather than by any observed problems)
if a chaotic monk or wizard gets crowned and is given a spellbook rather than
Stormbringer as the crowning gift, don't describe the hero as having
been "chosen to steal souls for [Arioch's] glory"
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 pray.c $NHDT-Date: 1562462064 2019/07/07 01:14:24 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.116 $ */
/* NetHack 3.6 pray.c $NHDT-Date: 1564532667 2019/07/31 00:24:27 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.117 $ */
/* Copyright (c) Benson I. Margulies, Mike Stephenson, Steve Linhart, 1989. */
/* NetHack may be freely redistributed. See license for details. */
@@ -771,6 +771,20 @@ gcrownu()
HPoison_resistance |= FROMOUTSIDE;
godvoice(u.ualign.type, (char *) 0);
class_gift = STRANGE_OBJECT;
/* 3.3.[01] had this in the A_NEUTRAL case,
preventing chaotic wizards from receiving a spellbook */
if (Role_if(PM_WIZARD)
&& (!uwep || (uwep->oartifact != ART_VORPAL_BLADE
&& uwep->oartifact != ART_STORMBRINGER))
&& !carrying(SPE_FINGER_OF_DEATH)) {
class_gift = SPE_FINGER_OF_DEATH;
} else if (Role_if(PM_MONK) && (!uwep || !uwep->oartifact)
&& !carrying(SPE_RESTORE_ABILITY)) {
/* monks rarely wield a weapon */
class_gift = SPE_RESTORE_ABILITY;
}
obj = ok_wep(uwep) ? uwep : 0;
already_exists = in_hand = FALSE; /* lint suppression */
switch (u.ualign.type) {
@@ -791,19 +805,13 @@ gcrownu()
already_exists =
exist_artifact(RUNESWORD, artiname(ART_STORMBRINGER));
verbalize("Thou art chosen to %s for My Glory!",
already_exists && !in_hand ? "take lives" : "steal souls");
((already_exists && !in_hand)
|| class_gift != STRANGE_OBJECT) ? "take lives"
: "steal souls");
break;
}
class_gift = STRANGE_OBJECT;
/* 3.3.[01] had this in the A_NEUTRAL case below,
preventing chaotic wizards from receiving a spellbook */
if (Role_if(PM_WIZARD)
&& (!uwep || (uwep->oartifact != ART_VORPAL_BLADE
&& uwep->oartifact != ART_STORMBRINGER))
&& !carrying(SPE_FINGER_OF_DEATH)) {
class_gift = SPE_FINGER_OF_DEATH;
make_splbk:
if (objects[class_gift].oc_class == SPBOOK_CLASS) {
obj = mksobj(class_gift, TRUE, FALSE);
bless(obj);
obj->bknown = 1; /* ok to skip set_bknown() */
@@ -818,11 +826,6 @@ gcrownu()
obj = uwep; /* to be blessed,&c */
break;
}
} else if (Role_if(PM_MONK) && (!uwep || !uwep->oartifact)
&& !carrying(SPE_RESTORE_ABILITY)) {
/* monks rarely wield a weapon */
class_gift = SPE_RESTORE_ABILITY;
goto make_splbk;
}
switch (u.ualign.type) {