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

@@ -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);