File: quest.h

package info (click to toggle)
slashem 0.0.7E7F3-7
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 24,312 kB
  • ctags: 23,514
  • sloc: ansic: 263,201; cpp: 7,180; yacc: 2,154; sh: 739; lex: 440; awk: 97; makefile: 61; sed: 11
file content (42 lines) | stat: -rw-r--r-- 1,784 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*	SCCS Id: @(#)quest.h	3.4	1992/11/15	*/
/* Copyright (c) Mike Stephenson 1991.				  */
/* NetHack may be freely redistributed.  See license for details. */

#ifndef QUEST_H
#define QUEST_H

struct q_score {			/* Quest "scorecard" */
	Bitfield(first_start,1);	/* only set the first time */
	Bitfield(met_leader,1);		/* has met the leader */
	Bitfield(not_ready,3);		/* rejected due to alignment, etc. */
	Bitfield(pissed_off,1);		/* got the leader angry */
	Bitfield(got_quest,1);		/* got the quest assignment */

	Bitfield(first_locate,1);	/* only set the first time */
	Bitfield(met_intermed,1);	/* used if the locate is a person. */
	Bitfield(got_final,1);		/* got the final quest assignment */

	Bitfield(made_goal,3);		/* # of times on goal level */
	Bitfield(met_nemesis,1);	/* has met the nemesis before */
	Bitfield(killed_nemesis,1);	/* set when the nemesis is killed */
	Bitfield(in_battle,1);		/* set when nemesis fighting you */

	Bitfield(cheater,1);		/* set if cheating detected */
	Bitfield(touched_artifact,1);	/* for a special message */
	Bitfield(offered_artifact,1);	/* offered to leader */
	Bitfield(got_thanks,1);		/* final message from leader */

	/* keep track of leader presence/absence even if leader is
	   polymorphed, raised from dead, etc */
	Bitfield(leader_is_dead,1);
	unsigned leader_m_id;
};

/* KMH, balance patch -- These were 7, 20, 14 for NetHack and 1, 20, 6 for Slash */
#define MAX_QUEST_TRIES  7	/* exceed this and you "fail" */
#define MIN_QUEST_ALIGN 20	/* at least this align.record to start */
  /* note: align 20 matches "pious" as reported by enlightenment (cmd.c) */
#define MIN_QUEST_LEVEL	10	/* at least this u.ulevel to start */
  /* note: exp.lev. 14 is threshold level for 5th rank (class title, role.c) */

#endif /* QUEST_H */