fix #K4142 - camera flash vs mimic
When a camera flash hit a mimic which was posing as something, the feedback mentioned the mimic but didn't bring it out of hiding. Change to make light pass over a mimic impersonating an object but unhide one impersonating furniture. Ones impersonating some other monster are woken up but wakeup doesn't force it back to mimic shape. Trying to get the messages right brought on more code changes than antipated. I changed one of the arguments to mhidden_description() so had to change its callers; fortunately there aren't very many.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.7 hack.h $NHDT-Date: 1701132211 2023/11/28 00:43:31 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.240 $ */
|
||||
/* NetHack 3.7 hack.h $NHDT-Date: 1713334806 2024/04/17 06:20:06 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.253 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Pasi Kallinen, 2017. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -1102,6 +1102,11 @@ typedef uint32_t mmflags_nht; /* makemon MM_ flags */
|
||||
#define GP_AVOID_MONPOS 0x01000000L /* don't accept existing mon location */
|
||||
/* 25 bits used */
|
||||
|
||||
/* flags for mhidden_description() (pager.c; used for mimics and hiders) */
|
||||
#define MHID_PREFIX 1 /* include ", mimicking " prefix */
|
||||
#define MHID_ARTICLE 2 /* include "a " or "an " after prefix */
|
||||
#define MHID_ALTMON 4 /* if mimicking a monster, include that */
|
||||
|
||||
/* flags for make_corpse() and mkcorpstat(); 0..7 are recorded in obj->spe */
|
||||
#define CORPSTAT_NONE 0x00
|
||||
#define CORPSTAT_GENDER 0x03 /* 0x01 | 0x02 */
|
||||
|
||||
Reference in New Issue
Block a user