fix github issue #1257 - nymph theft while blind
Issue reported by Meklon2007: some theft feedback during nymph attacks refers to the attacker as "she" and others as "it" if hero is blind. The "she" references are intentional. However, mixing them with "it" references when a series of messages occurs is jarring. This changes "it" to "someone", which is still different from "she" but hopefully enough less so to be tolerable. That resulted in monkeys also being referred to as "someone" because they're classified as humanoid. Change x_monnam()'s AUGMENT_IT handling, which chooses between "someone" and "something" when the monster is not seen, to override humanoid for animals (affects 'Y' class) and for mindless (affects zombies, mummies, and golems). So an unseen monkey will be "it" again. The final message for current item was relying on a cached monster name value. If an unseen nymph or monkey stole a worn blindfold so that hero's vision was restored: "It <stole> item" before the changes and "Someone|Something <stole> item" after. So update the cached name if sight gets regained, to give "<Mon> stole <item>." (If the item is worn armor and the thief is a nymph, it was and still is "She stole <item>".) The message for having any worn item be stolen, which got split into two parts within the past year, was giving "<Mon> takes off <alt weapon>". When not dual-wielded, the alternate weapon isn't really worn. Rather than suppress it outright, change the message for uwep/uswapwep/uquiver to say "disarms" instead of "takes off". For accessories, change "takes off" to "removes". Those are more or less interchangeable these days but "removes" matches R instead of T. While testing, my pet evidently killed a nymph (I was blinded and couldn't see it happen) while she stole my gloves and the next message I got was "You finish taking off your suit." The gloves weren't worn anymore so equipname() defaulted to suit. Get rid of equipname() altogether and switch to armor_simple_name() which doesn't rely on the worn-armor pointers. Fixes #1257
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1450 $ $NHDT-Date: 1720074479 2024/07/04 06:27:59 $
|
||||
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1455 $ $NHDT-Date: 1720895738 2024/07/13 18:35:38 $
|
||||
|
||||
General Fixes and Modified Features
|
||||
-----------------------------------
|
||||
@@ -1439,6 +1439,12 @@ using #loot -> 'i'n to put multiple items into a shop-owned container would
|
||||
don't-sell state was being reset for each item so 'a' and 'q' didn't
|
||||
stick beyond the current one
|
||||
join wall "spines" with walls of water and lava
|
||||
some theft messages by nymphs force "she", others use default monster naming
|
||||
which yields "it" when unseen; change the latter to "someone" which
|
||||
still differs from "she" in a series of messages but isn't as jarring
|
||||
if a nymph stole worn armor and got killed (perhaps by pet) before hero's next
|
||||
turn, feedback would be "You finish taking off your suit." regardless
|
||||
of the type of armor being taken off
|
||||
|
||||
|
||||
Fixes to 3.7.0-x General Problems Exposed Via git Repository
|
||||
|
||||
Reference in New Issue
Block a user