fix B20003 - hallucination and warning

> Why does warning work normally while hallucinating?  I'd like to see
> random numbers.

     It's just a one-liner, although it has pointed out problems in the
symbol lookup code.  "0" won't work at present, so this doesn't use it,
but warning symbols "1" through "5" also have trouble--regardless of
hallucination--if someone overloads them to represent any feature aside
from warning.
This commit is contained in:
nethack.rankin
2003-02-20 00:19:49 +00:00
parent d90083bba3
commit 7aeaeac8e3
2 changed files with 5 additions and 1 deletions

View File

@@ -395,6 +395,7 @@ any object held by ghost during recorporealization would cease to exist
including the Amulet of Yendor
harassing monsters will be less likely to teleport to your location while
they're running away from you
randomize warning symbols during hallucination
Platform- and/or Interface-Specific Fixes

View File

@@ -1,4 +1,4 @@
/* SCCS Id: @(#)display.c 3.4 2002/10/03 */
/* SCCS Id: @(#)display.c 3.4 2003/02/19 */
/* Copyright (c) Dean Luick, with acknowledgements to Kevin Darcy */
/* and Dave Cohrs, 1990. */
/* NetHack may be freely redistributed. See license for details. */
@@ -460,6 +460,9 @@ display_warning(mon)
if (mon_warning(mon)) {
if (wl > WARNCOUNT - 1) wl = WARNCOUNT - 1;
/* 3.4.1: this really ought to be rn2(WARNCOUNT), but value "0"
isn't handled correctly by the what_is routine so avoid it */
if (Hallucination) wl = rn1(WARNCOUNT-1,1);
glyph = warning_to_glyph(wl);
} else if (MATCH_WARN_OF_MON(mon)) {
glyph = mon_to_glyph(mon);