When the hero receives the quest artifact "got it" message, set the
artifact's dknown bit in case the hero is blinded. That message describes
the object by name, effectively the same as seeing it up close. (This
would have prevented the "now wearing an Eyes of the Overworld" grammar bug
for monks but not for non-monks, so the previous fix is still necessary.)
E void NDECL(onquest);
E void NDECL(nemdead);
-E void NDECL(artitouch);
+E void FDECL(artitouch, (struct obj *));
E boolean NDECL(ok_to_quest);
E void FDECL(leader_speaks, (struct monst *));
E void NDECL(nemesis_speaks);
-/* SCCS Id: @(#)invent.c 3.5 2006/04/15 */
+/* SCCS Id: @(#)invent.c 3.5 2006/05/17 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
if (u.uhave.questart)
impossible("already have quest artifact?");
u.uhave.questart = 1;
- artitouch();
+ artitouch(obj);
}
set_artifact_intrinsic(obj, 1, W_ART);
}
-/* SCCS Id: @(#)quest.c 3.5 2000/05/05 */
+/* SCCS Id: @(#)quest.c 3.5 2006/05/17 */
/* Copyright 1991, M. Stephenson */
/* NetHack may be freely redistributed. See license for details. */
}
void
-artitouch()
+artitouch(obj)
+struct obj *obj;
{
if(!Qstat(touched_artifact)) {
+ /* in case we haven't seen the item yet (ie, currently blinded),
+ this quest message describes it by name so mark it as seen */
+ obj->dknown = 1;
+ /* only give this message once */
Qstat(touched_artifact) = TRUE;
qt_pager(QT_GOTIT);
exercise(A_WIS, TRUE);