fix #S14678 - livelog of bribery when hallucinat

If hallucinating hero bribes a demon lord, report its true identity for
livelog/#chronicle.  Unlike with the similar change for genocide, this
does give away information if the player checks #chronicle.

Again, the report via the web contact form was misclassified as spam.
This commit is contained in:
PatR
2025-11-09 06:33:19 -08:00
parent f7e12d2801
commit 0524ff482b
2 changed files with 9 additions and 3 deletions

View File

@@ -1,4 +1,4 @@
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1573 $ $NHDT-Date: 1762680996 2025/11/09 01:36:36 $
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1574 $ $NHDT-Date: 1762727599 2025/11/09 14:33:19 $
General Fixes and Modified Features
-----------------------------------
@@ -2830,6 +2830,8 @@ add "make fetch-docs" to download pre-formatted documentation
monsters will use throw-and-return weapons such as an aklys
uncursed genocide while hallucinating deliberately mis-reports hero's role as
target but was also inappropriately showing it to livelog/#chronicle
livelog/#chronicle for bribing a demon lord reported random monster and
currency if hero was hallucinating
Platform- and/or Interface-Specific New Features

View File

@@ -1,4 +1,4 @@
/* NetHack 3.7 minion.c $NHDT-Date: 1624322864 2021/06/22 00:47:44 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.60 $ */
/* NetHack 3.7 minion.c $NHDT-Date: 1762727599 2025/11/09 14:33:19 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.81 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2008. */
/* NetHack may be freely redistributed. See license for details. */
@@ -346,8 +346,12 @@ demon_talk(struct monst *mtmp)
return 0;
}
}
/* if 'mtmp' is unrecognizable due to hero's hallucination,
#chronicle will reveal its true identity -- just live with that;
also, avoid random hallucinatory currency() units */
livelog_printf(LL_UMONST, "bribed %s with %ld %s for safe passage",
Amonnam(mtmp), offer, currency(offer));
x_monnam(mtmp, ARTICLE_A, (char *) 0, EXACT_NAME, FALSE),
offer, (offer == 1L) ? "zorkmid" : "zorkmids");
mongone(mtmp);
return 1;
}