1 /* $Id$ */
2 /* File: defines-player.h */
3 
4 /* Purpose: global constants and macro definitions for player.pre lua file */
5 
6 #define PW_PLAYER	8
7 
8 #define PY_FOOD_MAX	15000	/* Food value (Bloated) */
9 #define PY_FOOD_FULL	10000	/* Food value (Normal) */
10 
11 /*
12  * Maximum number of "normal" pack slots, and the index of the "overflow"
13  * slot, which can hold an item, but only temporarily, since it causes the
14  * pack to "overflow", dropping the "last" item onto the ground.  Since this
15  * value is used as an actual slot, it must be less than "INVEN_WIELD" (below).
16  * Note that "INVEN_PACK" is probably hard-coded by its use in savefiles, and
17  * by the fact that the screen can only show 23 items plus a one-line prompt.
18  */
19 #define INVEN_PACK	23
20 /*
21  * Indexes used for various "equipment" slots (hard-coded by savefiles, etc).
22  */
23 #define INVEN_WIELD	24
24 /*
25  * Total number of inventory slots (hard-coded).
26  */
27 #define INVEN_TOTAL	38	/* since they start at 0, max slot index is INVEN_TOTAL - 1 (!) */
28 
29 
30 /*
31  * Indexes of the various "stats" (hard-coded by savefiles, etc).
32  */
33 #define A_STR	0
34 #define A_INT	1
35 #define A_WIS	2
36 #define A_DEX	3
37 #define A_CON	4
38 #define A_CHR	5
39 
40 
41 /*
42  * Player race constants (hard-coded by save-files, arrays, etc)
43  */
44 #define RACE_HUMAN	0
45 #define RACE_HALF_ELF	1
46 #define RACE_ELF	2
47 #define RACE_HOBBIT	3
48 #define RACE_GNOME	4
49 #define RACE_DWARF	5
50 #define RACE_HALF_ORC	6
51 #define RACE_HALF_TROLL	7
52 #define RACE_DUNADAN	8
53 #define RACE_HIGH_ELF	9
54 #define RACE_YEEK	10
55 #define RACE_GOBLIN	11
56 #define RACE_ENT	12
57 #define RACE_DRACONIAN	13
58 #ifdef ENABLE_KOBOLD
59  #define RACE_KOBOLD	14
60  #define RACE_DARK_ELF	15
61  #define RACE_VAMPIRE	16
62  //#ifdef ENABLE_MAIA
63  #define RACE_MAIA	17
64  //#endif
65 #else
66  #define RACE_DARK_ELF	14
67  #define RACE_VAMPIRE	15
68  //#ifdef ENABLE_MAIA
69  #define RACE_MAIA	16
70  //#endif
71 #endif
72 /* (or simply replace all those defines with p_info.txt) */
73 
74 /*
75  * Player class constants (hard-coded by save-files, arrays, etc)
76  */
77 #define CLASS_WARRIOR		0
78 #define CLASS_MAGE		1
79 #define CLASS_PRIEST		2
80 #define CLASS_ROGUE		3
81 #define CLASS_MIMIC		4
82 #define CLASS_ARCHER		5
83 #define CLASS_PALADIN		6
84 #define CLASS_RANGER		7
85 #define CLASS_ADVENTURER	8
86 //#define CLASS_BARD		9
87 #define CLASS_DRUID		9
88 #define CLASS_SHAMAN		10
89 #define CLASS_RUNEMASTER	11
90 #define CLASS_MINDCRAFTER	12
91 
92 
93 /* for spell-casting */
94 #define TRAIT_ENLIGHTENED	14	/* Maiar */
95 #define TRAIT_CORRUPTED		15
96 
97 
98 /*
99  * Skills
100  */
101 #define SKILL_MAX               50000           /* Maximun skill value */
102 #define SKILL_STEP              1000            /* 1 skill point */
103 
104 #define SKILL_EXCLUSIVE         9999            /* Flag to tell exclusive skills */
105 
106 #define SKILL_COMBAT            1
107 #define SKILL_MASTERY           2
108 #define SKILL_SWORD             3
109 #define SKILL_CRITS             4
110 #define SKILL_POLEARM           5
111 #define SKILL_BLUNT		6
112 #define SKILL_ARCHERY           7
113 #define SKILL_SLING             8
114 #define SKILL_BOW               9
115 #define SKILL_XBOW              10
116 #define SKILL_BACKSTAB          11
117 #define SKILL_MAGIC             12
118 //#define SKILL_CASTSPEED         13
119 #define SKILL_SHOOT_TILL_KILL	13
120 #define SKILL_SORCERY           14
121 #define SKILL_MAGERY            15
122 #define SKILL_MIMIC             16
123 #define SKILL_DEVICE            17
124 #define SKILL_SHADOW            18
125 #define SKILL_PRAY              19
126 #define SKILL_SPELLLENGTH       20
127 #define SKILL_SNEAKINESS        21
128 #define SKILL_DISARM            22
129 #define SKILL_STEALTH           23
130 #define SKILL_STEALING          24
131 #define SKILL_NECROMANCY        25
132 #define SKILL_ANTIMAGIC         26
133 /* #define SKILL_AURA_POWER       27 */
134 #define SKILL_TRAUMATURGY       27
135 #define SKILL_AURA_FEAR         28
136 #define SKILL_AURA_SHIVER       29
137 #define SKILL_AURA_DEATH        30
138 #define SKILL_HUNTING		31
139 #define SKILL_TECHNIQUE		32
140 #define SKILL_MISC              33
141 #define SKILL_AGILITY		34
142 #define SKILL_CALMNESS		35
143 #define SKILL_SWIM		36
144 #define SKILL_MARTIAL_ARTS	37
145 #define SKILL_RICOCHET		38
146 #define SKILL_BOOMERANG		39
147 #define SKILL_TRAINING		40
148 #define SKILL_INTERCEPT		41
149 #define SKILL_DODGE		42
150 #define SKILL_HEALTH		43
151 #define SKILL_DIG		44
152 #define SKILL_SPELLRAD		45
153 #define SKILL_TRAPPING          46
154 #define SKILL_AXE		47	/* hrm, bad order */
155 
156 /* School skills */
157 #define SKILL_CONVEYANCE        48
158 #define SKILL_SPELL		49
159 #define SKILL_MANA              50
160 #define SKILL_FIRE              51
161 #define SKILL_AIR               52
162 #define SKILL_WATER             53
163 #define SKILL_NATURE            54
164 #define SKILL_EARTH             55
165 #define SKILL_DIVINATION        56
166 #define SKILL_TEMPORAL          57
167 #define SKILL_META              58
168 #define SKILL_MIND              59
169 #define SKILL_UDUN              60
170 
171 #define SKILL_HOFFENSE          70
172 #define SKILL_HDEFENSE          71
173 #define SKILL_HCURING           72
174 #define SKILL_HSUPPORT          73
175 
176 #define SKILL_DRUID_ARCANE	74
177 #define SKILL_DRUID_PHYSICAL	75
178 
179 #define SKILL_ASTRAL		77
180 
181 #define SKILL_DUAL		78 /* dual-wield for rogues */
182 #define SKILL_STANCE		79 /* combat stances for warriors */
183 
184 #define SKILL_PPOWER		80 /* the new mindcrafter skills */
185 #define SKILL_TCONTACT		81 /* the new mindcrafter skills */
186 #define SKILL_MINTRUSION	82 /* the new mindcrafter skills */
187 
188 /* Dummy skills - just to make the mass of schools appear more ordered - C. Blue */
189 #define SKILL_SCHOOL_MAGIC	83
190 #define SKILL_SCHOOL_PRAYING	84
191 #define SKILL_SCHOOL_DRUIDISM	85
192 #define SKILL_SCHOOL_MINDCRAFT	86
193 
194 /* additional ones */
195 #define SKILL_CLIMB		90
196 #define SKILL_LEVITATE		91
197 #define SKILL_FREEACT		92
198 #define SKILL_RESCONF		93
199 #if 0	/* skills to come	- Jir - */
200  #define SKILL_INNATE_POWER	/* in mimicry tree */
201  #define SKILL_EGO_POWER
202 #endif	/* 0 */
203 
204 #define SKILL_SCHOOL_RUNECRAFT	95
205 #define SKILL_R_LITE		96
206 #define SKILL_R_DARK		97
207 #define SKILL_R_NEXU		98
208 #define SKILL_R_NETH		99
209 #define SKILL_R_CHAO		100
210 #define SKILL_R_MANA		101
211 
212 /* For Draconians */
213 #define SKILL_BREATH		110
214 
215 /*#define MAX_SKILLS              70 */
216 #define MAX_SKILLS              128
217