1 /* SCCS Id: @(#)quest.h 3.4 1992/11/15 */
2 /* Copyright (c) Mike Stephenson 1991. */
3 /* NetHack may be freely redistributed. See license for details. */
8 struct q_score { /* Quest "scorecard" */
9 Bitfield(first_start,1); /* only set the first time */
10 Bitfield(met_leader,1); /* has met the leader */
11 Bitfield(not_ready,3); /* rejected due to alignment, etc. */
12 Bitfield(pissed_off,1); /* got the leader angry */
13 Bitfield(got_quest,1); /* got the quest assignment */
15 Bitfield(first_locate,1); /* only set the first time */
16 Bitfield(met_intermed,1); /* used if the locate is a person. */
17 Bitfield(got_final,1); /* got the final quest assignment */
19 Bitfield(made_goal,3); /* # of times on goal level */
20 Bitfield(met_nemesis,1); /* has met the nemesis before */
21 Bitfield(killed_nemesis,1); /* set when the nemesis is killed */
22 Bitfield(in_battle,1); /* set when nemesis fighting you */
24 Bitfield(cheater,1); /* set if cheating detected */
25 Bitfield(touched_artifact,1); /* for a special message */
26 Bitfield(offered_artifact,1); /* offered to leader */
27 Bitfield(got_thanks,1); /* final message from leader */
29 /* keep track of leader presence/absence even if leader is
30 polymorphed, raised from dead, etc */
31 Bitfield(leader_is_dead,1);
35 #define MAX_QUEST_TRIES 7 /* exceed this and you "fail" */
36 #define MIN_QUEST_ALIGN 20 /* at least this align.record to start */
37 /* note: align 20 matches "pious" as reported by enlightenment (cmd.c) */
38 #define MIN_QUEST_LEVEL 14 /* at least this u.ulevel to start */
39 /* note: exp.lev. 14 is threshold level for 5th rank (class title, role.c) */