1 /**
2  * @file enums.h
3  *
4  * Various global enumerators.
5  */
6 
7 DEVILUTION_BEGIN_NAMESPACE
8 
9 typedef enum _sfx_id {
10 	PS_WALK1,
11 	PS_WALK2,
12 	PS_WALK3,
13 	PS_WALK4,
14 	PS_BFIRE,
15 	PS_FMAG,
16 	PS_TMAG,
17 	PS_LGHIT,
18 	PS_LGHIT1,
19 	PS_SWING,
20 	PS_SWING2,
21 	PS_DEAD,
22 	IS_STING1,
23 	IS_FBALLBOW,
24 	IS_QUESTDN,
25 	IS_ARMRFKD,
26 	IS_BARLFIRE,
27 	IS_BARREL,
28 	IS_POPPOP8,
29 	IS_POPPOP5,
30 	IS_POPPOP3,
31 	IS_POPPOP2,
32 	IS_BHIT,
33 	IS_BHIT1,
34 	IS_CHEST,
35 	IS_DOORCLOS,
36 	IS_DOOROPEN,
37 	IS_FANVL,
38 	IS_FAXE,
39 	IS_FBLST,
40 	IS_FBODY,
41 	IS_FBOOK,
42 	IS_FBOW,
43 	IS_FCAP,
44 	IS_FHARM,
45 	IS_FLARM,
46 	IS_FMAG,
47 	IS_FMAG1,
48 	IS_FMUSH,
49 	IS_FPOT,
50 	IS_FRING,
51 	IS_FROCK,
52 	IS_FSCRL,
53 	IS_FSHLD,
54 	IS_FSIGN,
55 	IS_FSTAF,
56 	IS_FSWOR,
57 	IS_GOLD,
58 	IS_HLMTFKD,
59 	IS_IANVL,
60 	IS_IAXE,
61 	IS_IBLST,
62 	IS_IBODY,
63 	IS_IBOOK,
64 	IS_IBOW,
65 	IS_ICAP,
66 	IS_IGRAB,
67 	IS_IHARM,
68 	IS_ILARM,
69 	IS_IMUSH,
70 	IS_IPOT,
71 	IS_IRING,
72 	IS_IROCK,
73 	IS_ISCROL,
74 	IS_ISHIEL,
75 	IS_ISIGN,
76 	IS_ISTAF,
77 	IS_ISWORD,
78 	IS_LEVER,
79 	IS_MAGIC,
80 	IS_MAGIC1,
81 	IS_RBOOK,
82 	IS_SARC,
83 	IS_SHLDFKD,
84 	IS_SWRDFKD,
85 	IS_TITLEMOV,
86 	IS_TITLSLCT,
87 	SFX_SILENCE,
88 	IS_TRAP,
89 	IS_CAST1,
90 	IS_CAST10,
91 	IS_CAST12,
92 	IS_CAST2,
93 	IS_CAST3,
94 	IS_CAST4,
95 	IS_CAST5,
96 	IS_CAST6,
97 	IS_CAST7,
98 	IS_CAST8,
99 	IS_CAST9,
100 	LS_HEALING,
101 	IS_REPAIR,
102 	LS_ACID,
103 	LS_ACIDS,
104 	LS_APOC,
105 	LS_ARROWALL,
106 	LS_BLODBOIL,
107 	LS_BLODSTAR,
108 	LS_BLSIMPT,
109 	LS_BONESP,
110 	LS_BSIMPCT,
111 	LS_CALDRON,
112 	LS_CBOLT,
113 	LS_CHLTNING,
114 	LS_DSERP,
115 	LS_ELECIMP1,
116 	LS_ELEMENTL,
117 	LS_ETHEREAL,
118 	LS_FBALL,
119 	LS_FBOLT1,
120 	LS_FBOLT2,
121 	LS_FIRIMP1,
122 	LS_FIRIMP2,
123 	LS_FLAMWAVE,
124 	LS_FLASH,
125 	LS_FOUNTAIN,
126 	LS_GOLUM,
127 	LS_GOLUMDED,
128 	LS_GSHRINE,
129 	LS_GUARD,
130 	LS_GUARDLAN,
131 	LS_HOLYBOLT,
132 	LS_HYPER,
133 	LS_INFRAVIS,
134 	LS_INVISIBL,
135 	LS_INVPOT,
136 	LS_LNING1,
137 	LS_LTNING,
138 	LS_MSHIELD,
139 	LS_NESTXPLD,
140 	LS_NOVA,
141 	LS_PORTAL,
142 	LS_PUDDLE,
143 	LS_RESUR,
144 	LS_SCURSE,
145 	LS_SCURIMP,
146 	LS_SENTINEL,
147 	LS_SHATTER,
148 	LS_SOULFIRE,
149 	LS_SPOUTLOP,
150 	LS_SPOUTSTR,
151 	LS_STORM,
152 	LS_TRAPDIS,
153 	LS_TELEPORT,
154 	LS_VTHEFT,
155 	LS_WALLLOOP,
156 	LS_WALLSTRT,
157 	LS_LMAG,
158 	TSFX_BMAID1,
159 	TSFX_BMAID2,
160 	TSFX_BMAID3,
161 	TSFX_BMAID4,
162 	TSFX_BMAID5,
163 	TSFX_BMAID6,
164 	TSFX_BMAID7,
165 	TSFX_BMAID8,
166 	TSFX_BMAID9,
167 	TSFX_BMAID10,
168 	TSFX_BMAID11,
169 	TSFX_BMAID12,
170 	TSFX_BMAID13,
171 	TSFX_BMAID14,
172 	TSFX_BMAID15,
173 	TSFX_BMAID16,
174 	TSFX_BMAID17,
175 	TSFX_BMAID18,
176 	TSFX_BMAID19,
177 	TSFX_BMAID20,
178 	TSFX_BMAID21,
179 	TSFX_BMAID22,
180 	TSFX_BMAID23,
181 	TSFX_BMAID24,
182 	TSFX_BMAID25,
183 	TSFX_BMAID26,
184 	TSFX_BMAID27,
185 	TSFX_BMAID28,
186 	TSFX_BMAID29,
187 	TSFX_BMAID30,
188 	TSFX_BMAID31,
189 	TSFX_BMAID32,
190 	TSFX_BMAID33,
191 	TSFX_BMAID34,
192 	TSFX_BMAID35,
193 	TSFX_BMAID36,
194 	TSFX_BMAID37,
195 	TSFX_BMAID38,
196 	TSFX_BMAID39,
197 	TSFX_BMAID40,
198 	TSFX_SMITH1,
199 	TSFX_SMITH2,
200 	TSFX_SMITH3,
201 	TSFX_SMITH4,
202 	TSFX_SMITH5,
203 	TSFX_SMITH6,
204 	TSFX_SMITH7,
205 	TSFX_SMITH8,
206 	TSFX_SMITH9,
207 	TSFX_SMITH10,
208 	TSFX_SMITH11,
209 	TSFX_SMITH12,
210 	TSFX_SMITH13,
211 	TSFX_SMITH14,
212 	TSFX_SMITH15,
213 	TSFX_SMITH16,
214 	TSFX_SMITH17,
215 	TSFX_SMITH18,
216 	TSFX_SMITH19,
217 	TSFX_SMITH20,
218 	TSFX_SMITH21,
219 	TSFX_SMITH22,
220 	TSFX_SMITH23,
221 	TSFX_SMITH24,
222 	TSFX_SMITH25,
223 	TSFX_SMITH26,
224 	TSFX_SMITH27,
225 	TSFX_SMITH28,
226 	TSFX_SMITH29,
227 	TSFX_SMITH30,
228 	TSFX_SMITH31,
229 	TSFX_SMITH32,
230 	TSFX_SMITH33,
231 	TSFX_SMITH34,
232 	TSFX_SMITH35,
233 	TSFX_SMITH36,
234 	TSFX_SMITH37,
235 	TSFX_SMITH38,
236 	TSFX_SMITH39,
237 	TSFX_SMITH40,
238 	TSFX_SMITH41,
239 	TSFX_SMITH42,
240 	TSFX_SMITH43,
241 	TSFX_SMITH44,
242 	TSFX_SMITH45,
243 	TSFX_SMITH46,
244 	TSFX_SMITH47,
245 	TSFX_SMITH48,
246 	TSFX_SMITH49,
247 	TSFX_SMITH50,
248 	TSFX_SMITH51,
249 	TSFX_SMITH52,
250 	TSFX_SMITH53,
251 	TSFX_SMITH54,
252 	TSFX_SMITH55,
253 	TSFX_SMITH56,
254 	TSFX_COW1,
255 	TSFX_COW2,
256 /*
257 	TSFX_COW3,
258 	TSFX_COW4,
259 	TSFX_COW5,
260 	TSFX_COW6,
261 */
262 	TSFX_COW7,
263 	TSFX_COW8,
264 	TSFX_DEADGUY,
265 	TSFX_DRUNK1,
266 	TSFX_DRUNK2,
267 	TSFX_DRUNK3,
268 	TSFX_DRUNK4,
269 	TSFX_DRUNK5,
270 	TSFX_DRUNK6,
271 	TSFX_DRUNK7,
272 	TSFX_DRUNK8,
273 	TSFX_DRUNK9,
274 	TSFX_DRUNK10,
275 	TSFX_DRUNK11,
276 	TSFX_DRUNK12,
277 	TSFX_DRUNK13,
278 	TSFX_DRUNK14,
279 	TSFX_DRUNK15,
280 	TSFX_DRUNK16,
281 	TSFX_DRUNK17,
282 	TSFX_DRUNK18,
283 	TSFX_DRUNK19,
284 	TSFX_DRUNK20,
285 	TSFX_DRUNK21,
286 	TSFX_DRUNK22,
287 	TSFX_DRUNK23,
288 	TSFX_DRUNK24,
289 	TSFX_DRUNK25,
290 	TSFX_DRUNK26,
291 	TSFX_DRUNK27,
292 	TSFX_DRUNK28,
293 	TSFX_DRUNK29,
294 	TSFX_DRUNK30,
295 	TSFX_DRUNK31,
296 	TSFX_DRUNK32,
297 	TSFX_DRUNK33,
298 	TSFX_DRUNK34,
299 	TSFX_DRUNK35,
300 	TSFX_HEALER1,
301 	TSFX_HEALER2,
302 	TSFX_HEALER3,
303 	TSFX_HEALER4,
304 	TSFX_HEALER5,
305 	TSFX_HEALER6,
306 	TSFX_HEALER7,
307 	TSFX_HEALER8,
308 	TSFX_HEALER9,
309 	TSFX_HEALER10,
310 	TSFX_HEALER11,
311 	TSFX_HEALER12,
312 	TSFX_HEALER13,
313 	TSFX_HEALER14,
314 	TSFX_HEALER15,
315 	TSFX_HEALER16,
316 	TSFX_HEALER17,
317 	TSFX_HEALER18,
318 	TSFX_HEALER19,
319 	TSFX_HEALER20,
320 	TSFX_HEALER21,
321 	TSFX_HEALER22,
322 	TSFX_HEALER23,
323 	TSFX_HEALER24,
324 	TSFX_HEALER25,
325 	TSFX_HEALER26,
326 	TSFX_HEALER27,
327 	TSFX_HEALER28,
328 	TSFX_HEALER29,
329 	TSFX_HEALER30,
330 	TSFX_HEALER31,
331 	TSFX_HEALER32,
332 	TSFX_HEALER33,
333 	TSFX_HEALER34,
334 	TSFX_HEALER35,
335 	TSFX_HEALER36,
336 	TSFX_HEALER37,
337 	TSFX_HEALER38,
338 	TSFX_HEALER39,
339 	TSFX_HEALER40,
340 	TSFX_HEALER41,
341 	TSFX_HEALER42,
342 	TSFX_HEALER43,
343 	TSFX_HEALER44,
344 	TSFX_HEALER45,
345 	TSFX_HEALER46,
346 	TSFX_HEALER47,
347 	TSFX_PEGBOY1,
348 	TSFX_PEGBOY2,
349 	TSFX_PEGBOY3,
350 	TSFX_PEGBOY4,
351 	TSFX_PEGBOY5,
352 	TSFX_PEGBOY6,
353 	TSFX_PEGBOY7,
354 	TSFX_PEGBOY8,
355 	TSFX_PEGBOY9,
356 	TSFX_PEGBOY10,
357 	TSFX_PEGBOY11,
358 	TSFX_PEGBOY12,
359 	TSFX_PEGBOY13,
360 	TSFX_PEGBOY14,
361 	TSFX_PEGBOY15,
362 	TSFX_PEGBOY16,
363 	TSFX_PEGBOY17,
364 	TSFX_PEGBOY18,
365 	TSFX_PEGBOY19,
366 	TSFX_PEGBOY20,
367 	TSFX_PEGBOY21,
368 	TSFX_PEGBOY22,
369 	TSFX_PEGBOY23,
370 	TSFX_PEGBOY24,
371 	TSFX_PEGBOY25,
372 	TSFX_PEGBOY26,
373 	TSFX_PEGBOY27,
374 	TSFX_PEGBOY28,
375 	TSFX_PEGBOY29,
376 	TSFX_PEGBOY30,
377 	TSFX_PEGBOY31,
378 	TSFX_PEGBOY32,
379 	TSFX_PEGBOY33,
380 	TSFX_PEGBOY34,
381 	TSFX_PEGBOY35,
382 	TSFX_PEGBOY36,
383 	TSFX_PEGBOY37,
384 	TSFX_PEGBOY38,
385 	TSFX_PEGBOY39,
386 	TSFX_PEGBOY40,
387 	TSFX_PEGBOY41,
388 	TSFX_PEGBOY42,
389 	TSFX_PEGBOY43,
390 	TSFX_PRIEST0,
391 	TSFX_PRIEST1,
392 	TSFX_PRIEST2,
393 	TSFX_PRIEST3,
394 	TSFX_PRIEST4,
395 	TSFX_PRIEST5,
396 	TSFX_PRIEST6,
397 	TSFX_PRIEST7,
398 	TSFX_STORY0,
399 	TSFX_STORY1,
400 	TSFX_STORY2,
401 	TSFX_STORY3,
402 	TSFX_STORY4,
403 	TSFX_STORY5,
404 	TSFX_STORY6,
405 	TSFX_STORY7,
406 	TSFX_STORY8,
407 	TSFX_STORY9,
408 	TSFX_STORY10,
409 	TSFX_STORY11,
410 	TSFX_STORY12,
411 	TSFX_STORY13,
412 	TSFX_STORY14,
413 	TSFX_STORY15,
414 	TSFX_STORY16,
415 	TSFX_STORY17,
416 	TSFX_STORY18,
417 	TSFX_STORY19,
418 	TSFX_STORY20,
419 	TSFX_STORY21,
420 	TSFX_STORY22,
421 	TSFX_STORY23,
422 	TSFX_STORY24,
423 	TSFX_STORY25,
424 	TSFX_STORY26,
425 	TSFX_STORY27,
426 	TSFX_STORY28,
427 	TSFX_STORY29,
428 	TSFX_STORY30,
429 	TSFX_STORY31,
430 	TSFX_STORY32,
431 	TSFX_STORY33,
432 	TSFX_STORY34,
433 	TSFX_STORY35,
434 	TSFX_STORY36,
435 	TSFX_STORY37,
436 	TSFX_STORY38,
437 	TSFX_TAVERN0,
438 	TSFX_TAVERN1,
439 	TSFX_TAVERN2,
440 	TSFX_TAVERN3,
441 	TSFX_TAVERN4,
442 	TSFX_TAVERN5,
443 	TSFX_TAVERN6,
444 	TSFX_TAVERN7,
445 	TSFX_TAVERN8,
446 	TSFX_TAVERN9,
447 	TSFX_TAVERN10,
448 	TSFX_TAVERN11,
449 	TSFX_TAVERN12,
450 	TSFX_TAVERN13,
451 	TSFX_TAVERN14,
452 	TSFX_TAVERN15,
453 	TSFX_TAVERN16,
454 	TSFX_TAVERN17,
455 	TSFX_TAVERN18,
456 	TSFX_TAVERN19,
457 	TSFX_TAVERN20,
458 	TSFX_TAVERN21,
459 	TSFX_TAVERN22,
460 	TSFX_TAVERN23,
461 	TSFX_TAVERN24,
462 	TSFX_TAVERN25,
463 	TSFX_TAVERN26,
464 	TSFX_TAVERN27,
465 	TSFX_TAVERN28,
466 	TSFX_TAVERN29,
467 	TSFX_TAVERN30,
468 	TSFX_TAVERN31,
469 	TSFX_TAVERN32,
470 	TSFX_TAVERN33,
471 	TSFX_TAVERN34,
472 	TSFX_TAVERN35,
473 	TSFX_TAVERN36,
474 	TSFX_TAVERN37,
475 	TSFX_TAVERN38,
476 	TSFX_TAVERN39,
477 	TSFX_TAVERN40,
478 	TSFX_TAVERN41,
479 	TSFX_TAVERN42,
480 	TSFX_TAVERN43,
481 	TSFX_TAVERN44,
482 	TSFX_TAVERN45,
483 	TSFX_WITCH1,
484 	TSFX_WITCH2,
485 	TSFX_WITCH3,
486 	TSFX_WITCH4,
487 	TSFX_WITCH5,
488 	TSFX_WITCH6,
489 	TSFX_WITCH7,
490 	TSFX_WITCH8,
491 	TSFX_WITCH9,
492 	TSFX_WITCH10,
493 	TSFX_WITCH11,
494 	TSFX_WITCH12,
495 	TSFX_WITCH13,
496 	TSFX_WITCH14,
497 	TSFX_WITCH15,
498 	TSFX_WITCH16,
499 	TSFX_WITCH17,
500 	TSFX_WITCH18,
501 	TSFX_WITCH19,
502 	TSFX_WITCH20,
503 	TSFX_WITCH21,
504 	TSFX_WITCH22,
505 	TSFX_WITCH23,
506 	TSFX_WITCH24,
507 	TSFX_WITCH25,
508 	TSFX_WITCH26,
509 	TSFX_WITCH27,
510 	TSFX_WITCH28,
511 	TSFX_WITCH29,
512 	TSFX_WITCH30,
513 	TSFX_WITCH31,
514 	TSFX_WITCH32,
515 	TSFX_WITCH33,
516 	TSFX_WITCH34,
517 	TSFX_WITCH35,
518 	TSFX_WITCH36,
519 	TSFX_WITCH37,
520 	TSFX_WITCH38,
521 	TSFX_WITCH39,
522 	TSFX_WITCH40,
523 	TSFX_WITCH41,
524 	TSFX_WITCH42,
525 	TSFX_WITCH43,
526 	TSFX_WITCH44,
527 	TSFX_WITCH45,
528 	TSFX_WITCH46,
529 	TSFX_WITCH47,
530 	TSFX_WITCH48,
531 	TSFX_WITCH49,
532 	TSFX_WITCH50,
533 	TSFX_WOUND,
534 	PS_MAGE1,
535 	PS_MAGE2,
536 	PS_MAGE3,
537 	PS_MAGE4,
538 	PS_MAGE5,
539 	PS_MAGE6,
540 	PS_MAGE7,
541 	PS_MAGE8,
542 	PS_MAGE9,
543 	PS_MAGE10,
544 	PS_MAGE11,
545 	PS_MAGE12,
546 	PS_MAGE13,
547 	PS_MAGE14,
548 	PS_MAGE15,
549 	PS_MAGE16,
550 	PS_MAGE17,
551 	PS_MAGE18,
552 	PS_MAGE19,
553 	PS_MAGE20,
554 	PS_MAGE21,
555 	PS_MAGE22,
556 	PS_MAGE23,
557 	PS_MAGE24,
558 	PS_MAGE25,
559 	PS_MAGE26,
560 	PS_MAGE27,
561 	PS_MAGE28,
562 	PS_MAGE29,
563 	PS_MAGE30,
564 	PS_MAGE31,
565 	PS_MAGE32,
566 	PS_MAGE33,
567 	PS_MAGE34,
568 	PS_MAGE35,
569 	PS_MAGE36,
570 	PS_MAGE37,
571 	PS_MAGE38,
572 	PS_MAGE39,
573 	PS_MAGE40,
574 	PS_MAGE41,
575 	PS_MAGE42,
576 	PS_MAGE43,
577 	PS_MAGE44,
578 	PS_MAGE45,
579 	PS_MAGE46,
580 	PS_MAGE47,
581 	PS_MAGE48,
582 	PS_MAGE49,
583 	PS_MAGE50,
584 	PS_MAGE51,
585 	PS_MAGE52,
586 	PS_MAGE53,
587 	PS_MAGE54,
588 	PS_MAGE55,
589 	PS_MAGE56,
590 	PS_MAGE57,
591 	PS_MAGE58,
592 	PS_MAGE59,
593 	PS_MAGE60,
594 	PS_MAGE61,
595 	PS_MAGE62,
596 	PS_MAGE63,
597 	PS_MAGE64,
598 	PS_MAGE65,
599 	PS_MAGE66,
600 	PS_MAGE67,
601 	PS_MAGE68,
602 	PS_MAGE69,
603 	PS_MAGE69B,
604 	PS_MAGE70,
605 	PS_MAGE71,
606 	PS_MAGE72,
607 	PS_MAGE73,
608 	PS_MAGE74,
609 	PS_MAGE75,
610 	PS_MAGE76,
611 	PS_MAGE77,
612 	PS_MAGE78,
613 	PS_MAGE79,
614 	PS_MAGE80,
615 	PS_MAGE81,
616 	PS_MAGE82,
617 	PS_MAGE83,
618 	PS_MAGE84,
619 	PS_MAGE85,
620 	PS_MAGE86,
621 	PS_MAGE87,
622 	PS_MAGE88,
623 	PS_MAGE89,
624 	PS_MAGE90,
625 	PS_MAGE91,
626 	PS_MAGE92,
627 	PS_MAGE93,
628 	PS_MAGE94,
629 	PS_MAGE95,
630 	PS_MAGE96,
631 	PS_MAGE97,
632 	PS_MAGE98,
633 	PS_MAGE99,
634 	PS_MAGE100,
635 	PS_MAGE101,
636 	PS_MAGE102,
637 	PS_ROGUE1,
638 	PS_ROGUE2,
639 	PS_ROGUE3,
640 	PS_ROGUE4,
641 	PS_ROGUE5,
642 	PS_ROGUE6,
643 	PS_ROGUE7,
644 	PS_ROGUE8,
645 	PS_ROGUE9,
646 	PS_ROGUE10,
647 	PS_ROGUE11,
648 	PS_ROGUE12,
649 	PS_ROGUE13,
650 	PS_ROGUE14,
651 	PS_ROGUE15,
652 	PS_ROGUE16,
653 	PS_ROGUE17,
654 	PS_ROGUE18,
655 	PS_ROGUE19,
656 	PS_ROGUE20,
657 	PS_ROGUE21,
658 	PS_ROGUE22,
659 	PS_ROGUE23,
660 	PS_ROGUE24,
661 	PS_ROGUE25,
662 	PS_ROGUE26,
663 	PS_ROGUE27,
664 	PS_ROGUE28,
665 	PS_ROGUE29,
666 	PS_ROGUE30,
667 	PS_ROGUE31,
668 	PS_ROGUE32,
669 	PS_ROGUE33,
670 	PS_ROGUE34,
671 	PS_ROGUE35,
672 	PS_ROGUE36,
673 	PS_ROGUE37,
674 	PS_ROGUE38,
675 	PS_ROGUE39,
676 	PS_ROGUE40,
677 	PS_ROGUE41,
678 	PS_ROGUE42,
679 	PS_ROGUE43,
680 	PS_ROGUE44,
681 	PS_ROGUE45,
682 	PS_ROGUE46,
683 	PS_ROGUE47,
684 	PS_ROGUE48,
685 	PS_ROGUE49,
686 	PS_ROGUE50,
687 	PS_ROGUE51,
688 	PS_ROGUE52,
689 	PS_ROGUE53,
690 	PS_ROGUE54,
691 	PS_ROGUE55,
692 	PS_ROGUE56,
693 	PS_ROGUE57,
694 	PS_ROGUE58,
695 	PS_ROGUE59,
696 	PS_ROGUE60,
697 	PS_ROGUE61,
698 	PS_ROGUE62,
699 	PS_ROGUE63,
700 	PS_ROGUE64,
701 	PS_ROGUE65,
702 	PS_ROGUE66,
703 	PS_ROGUE67,
704 	PS_ROGUE68,
705 	PS_ROGUE69,
706 	PS_ROGUE69B,
707 	PS_ROGUE70,
708 	PS_ROGUE71,
709 	PS_ROGUE72,
710 	PS_ROGUE73,
711 	PS_ROGUE74,
712 	PS_ROGUE75,
713 	PS_ROGUE76,
714 	PS_ROGUE77,
715 	PS_ROGUE78,
716 	PS_ROGUE79,
717 	PS_ROGUE80,
718 	PS_ROGUE81,
719 	PS_ROGUE82,
720 	PS_ROGUE83,
721 	PS_ROGUE84,
722 	PS_ROGUE85,
723 	PS_ROGUE86,
724 	PS_ROGUE87,
725 	PS_ROGUE88,
726 	PS_ROGUE89,
727 	PS_ROGUE90,
728 	PS_ROGUE91,
729 	PS_ROGUE92,
730 	PS_ROGUE93,
731 	PS_ROGUE94,
732 	PS_ROGUE95,
733 	PS_ROGUE96,
734 	PS_ROGUE97,
735 	PS_ROGUE98,
736 	PS_ROGUE99,
737 	PS_ROGUE100,
738 	PS_ROGUE101,
739 	PS_ROGUE102,
740 	PS_WARR1,
741 	PS_WARR2,
742 	PS_WARR3,
743 	PS_WARR4,
744 	PS_WARR5,
745 	PS_WARR6,
746 	PS_WARR7,
747 	PS_WARR8,
748 	PS_WARR9,
749 	PS_WARR10,
750 	PS_WARR11,
751 	PS_WARR12,
752 	PS_WARR13,
753 	PS_WARR14,
754 	PS_WARR14B,
755 	PS_WARR14C,
756 	PS_WARR15,
757 	PS_WARR15B,
758 	PS_WARR15C,
759 	PS_WARR16,
760 	PS_WARR16B,
761 	PS_WARR16C,
762 	PS_WARR17,
763 	PS_WARR18,
764 	PS_WARR19,
765 	PS_WARR20,
766 	PS_WARR21,
767 	PS_WARR22,
768 	PS_WARR23,
769 	PS_WARR24,
770 	PS_WARR25,
771 	PS_WARR26,
772 	PS_WARR27,
773 	PS_WARR28,
774 	PS_WARR29,
775 	PS_WARR30,
776 	PS_WARR31,
777 	PS_WARR32,
778 	PS_WARR33,
779 	PS_WARR34,
780 	PS_WARR35,
781 	PS_WARR36,
782 	PS_WARR37,
783 	PS_WARR38,
784 	PS_WARR39,
785 	PS_WARR40,
786 	PS_WARR41,
787 	PS_WARR42,
788 	PS_WARR43,
789 	PS_WARR44,
790 	PS_WARR45,
791 	PS_WARR46,
792 	PS_WARR47,
793 	PS_WARR48,
794 	PS_WARR49,
795 	PS_WARR50,
796 	PS_WARR51,
797 	PS_WARR52,
798 	PS_WARR53,
799 	PS_WARR54,
800 	PS_WARR55,
801 	PS_WARR56,
802 	PS_WARR57,
803 	PS_WARR58,
804 	PS_WARR59,
805 	PS_WARR60,
806 	PS_WARR61,
807 	PS_WARR62,
808 	PS_WARR63,
809 	PS_WARR64,
810 	PS_WARR65,
811 	PS_WARR66,
812 	PS_WARR67,
813 	PS_WARR68,
814 	PS_WARR69,
815 	PS_WARR69B,
816 	PS_WARR70,
817 	PS_WARR71,
818 	PS_WARR72,
819 	PS_WARR73,
820 	PS_WARR74,
821 	PS_WARR75,
822 	PS_WARR76,
823 	PS_WARR77,
824 	PS_WARR78,
825 	PS_WARR79,
826 	PS_WARR80,
827 	PS_WARR81,
828 	PS_WARR82,
829 	PS_WARR83,
830 	PS_WARR84,
831 	PS_WARR85,
832 	PS_WARR86,
833 	PS_WARR87,
834 	PS_WARR88,
835 	PS_WARR89,
836 	PS_WARR90,
837 	PS_WARR91,
838 	PS_WARR92,
839 	PS_WARR93,
840 	PS_WARR94,
841 	PS_WARR95,
842 	PS_WARR95B,
843 	PS_WARR95C,
844 	PS_WARR95D,
845 	PS_WARR95E,
846 	PS_WARR95F,
847 	PS_WARR96B,
848 	PS_WARR97,
849 	PS_WARR98,
850 	PS_WARR99,
851 	PS_WARR100,
852 	PS_WARR101,
853 	PS_WARR102,
854 	PS_MONK1,
855 	PS_MONK2,
856 	PS_MONK3,
857 	PS_MONK4,
858 	PS_MONK5,
859 	PS_MONK6,
860 	PS_MONK7,
861 	PS_MONK8,
862 	PS_MONK9,
863 	PS_MONK10,
864 	PS_MONK11,
865 	PS_MONK12,
866 	PS_MONK13,
867 	PS_MONK14,
868 	PS_MONK15,
869 	PS_MONK16,
870 	PS_MONK17,
871 	PS_MONK18,
872 	PS_MONK19,
873 	PS_MONK20,
874 	PS_MONK21,
875 	PS_MONK22,
876 	PS_MONK23,
877 	PS_MONK24,
878 	PS_MONK25,
879 	PS_MONK26,
880 	PS_MONK27,
881 	PS_MONK28,
882 	PS_MONK29,
883 	PS_MONK30,
884 	PS_MONK31,
885 	PS_MONK32,
886 	PS_MONK33,
887 	PS_MONK34,
888 	PS_MONK35,
889 	PS_MONK36,
890 	PS_MONK37,
891 	PS_MONK38,
892 	PS_MONK39,
893 	PS_MONK40,
894 	PS_MONK41,
895 	PS_MONK42,
896 	PS_MONK43,
897 	PS_MONK44,
898 	PS_MONK45,
899 	PS_MONK46,
900 	PS_MONK47,
901 	PS_MONK48,
902 	PS_MONK49,
903 	PS_MONK50,
904 	PS_MONK51,
905 	PS_MONK52,
906 	PS_MONK53,
907 	PS_MONK54,
908 	PS_MONK55,
909 	PS_MONK56,
910 	PS_MONK57,
911 	PS_MONK58,
912 	PS_MONK59,
913 	PS_MONK60,
914 	PS_MONK61,
915 	PS_MONK62,
916 	PS_MONK63,
917 	PS_MONK64,
918 	PS_MONK65,
919 	PS_MONK66,
920 	PS_MONK67,
921 	PS_MONK68,
922 	PS_MONK69,
923 	PS_MONK69B,
924 	PS_MONK70,
925 	PS_MONK71,
926 	PS_MONK72,
927 	PS_MONK73,
928 	PS_MONK74,
929 	PS_MONK75,
930 	PS_MONK76,
931 	PS_MONK77,
932 	PS_MONK78,
933 	PS_MONK79,
934 	PS_MONK80,
935 	PS_MONK81,
936 	PS_MONK82,
937 	PS_MONK83,
938 	PS_MONK84,
939 	PS_MONK85,
940 	PS_MONK86,
941 	PS_MONK87,
942 	PS_MONK88,
943 	PS_MONK89,
944 	PS_MONK90,
945 	PS_MONK91,
946 	PS_MONK92,
947 	PS_MONK93,
948 	PS_MONK94,
949 	PS_MONK95,
950 	PS_MONK96,
951 	PS_MONK97,
952 	PS_MONK98,
953 	PS_MONK99,
954 	PS_MONK100,
955 	PS_MONK101,
956 	PS_MONK102,
957 	PS_NAR1,
958 	PS_NAR2,
959 	PS_NAR3,
960 	PS_NAR4,
961 	PS_NAR5,
962 	PS_NAR6,
963 	PS_NAR7,
964 	PS_NAR8,
965 	PS_NAR9,
966 	PS_DIABLVLINT,
967 	USFX_CLEAVER,
968 	USFX_GARBUD1,
969 	USFX_GARBUD2,
970 	USFX_GARBUD3,
971 	USFX_GARBUD4,
972 	USFX_IZUAL1,
973 	USFX_LACH1,
974 	USFX_LACH2,
975 	USFX_LACH3,
976 	USFX_LAZ1,
977 	USFX_LAZ2,
978 	USFX_SKING1,
979 	USFX_SNOT1,
980 	USFX_SNOT2,
981 	USFX_SNOT3,
982 	USFX_WARLRD1,
983 	USFX_WLOCK1,
984 	USFX_ZHAR1,
985 	USFX_ZHAR2,
986 	USFX_DIABLOD,
987 	TSFX_FARMER1,
988 	TSFX_FARMER2,
989 	TSFX_FARMER2A,
990 	TSFX_FARMER3,
991 	TSFX_FARMER4,
992 	TSFX_FARMER5,
993 	TSFX_FARMER6,
994 	TSFX_FARMER7,
995 	TSFX_FARMER8,
996 	TSFX_FARMER9,
997 	TSFX_TEDDYBR1,
998 	TSFX_TEDDYBR2,
999 	TSFX_TEDDYBR3,
1000 	TSFX_TEDDYBR4,
1001 	USFX_DEFILER1,
1002 	USFX_DEFILER2,
1003 	USFX_DEFILER3,
1004 	USFX_DEFILER4,
1005 	USFX_DEFILER8,
1006 	USFX_DEFILER6,
1007 	USFX_DEFILER7,
1008 	USFX_NAKRUL1,
1009 	USFX_NAKRUL2,
1010 	USFX_NAKRUL3,
1011 	USFX_NAKRUL4,
1012 	USFX_NAKRUL5,
1013 	USFX_NAKRUL6,
1014 	PS_NARATR3,
1015 	TSFX_COWSUT1,
1016 	TSFX_COWSUT2,
1017 	TSFX_COWSUT3,
1018 	TSFX_COWSUT4,
1019 	TSFX_COWSUT4A,
1020 	TSFX_COWSUT5,
1021 	TSFX_COWSUT6,
1022 	TSFX_COWSUT7,
1023 	TSFX_COWSUT8,
1024 	TSFX_COWSUT9,
1025 	TSFX_COWSUT10,
1026 	TSFX_COWSUT11,
1027 	TSFX_COWSUT12,
1028 	USFX_SKLJRN1,
1029 	PS_NARATR6,
1030 	PS_NARATR7,
1031 	PS_NARATR8,
1032 	PS_NARATR5,
1033 	PS_NARATR9,
1034 	PS_NARATR4,
1035 	TSFX_TRADER1,
1036 	IS_CROPEN,
1037 	IS_CRCLOS,
1038 } _sfx_id;
1039 
1040 typedef enum sfx_flag {
1041 	sfx_STREAM   = 0x01,
1042 	sfx_MISC     = 0x02,
1043 	sfx_UI       = 0x04,
1044 	sfx_MONK     = 0x08,
1045 	sfx_ROGUE    = 0x10,
1046 	sfx_WARRIOR  = 0x20,
1047 	sfx_SORCERER = 0x40,
1048 	sfx_HELLFIRE = 0x80,
1049 } sfx_flag;
1050 
1051 typedef enum missile_id {
1052 	MIS_ARROW         = 0x0,
1053 	MIS_FIREBOLT      = 0x1,
1054 	MIS_GUARDIAN      = 0x2,
1055 	MIS_RNDTELEPORT   = 0x3,
1056 	MIS_LIGHTBALL     = 0x4,
1057 	MIS_FIREWALL      = 0x5,
1058 	MIS_FIREBALL      = 0x6,
1059 	MIS_LIGHTCTRL     = 0x7,
1060 	MIS_LIGHTNING     = 0x8,
1061 	MIS_MISEXP        = 0x9,
1062 	MIS_TOWN          = 0xA,
1063 	MIS_FLASH         = 0xB,
1064 	MIS_FLASH2        = 0xC,
1065 	MIS_MANASHIELD    = 0xD,
1066 	MIS_FIREMOVE      = 0xE,
1067 	MIS_CHAIN         = 0xF,
1068 	MIS_SENTINAL      = 0x10, // TODO: Check beta
1069 	MIS_BLODSTAR      = 0x11, // TODO: Check beta
1070 	MIS_BONE          = 0x12, // TODO: Check beta
1071 	MIS_METLHIT       = 0x13, // TODO: Check beta
1072 	MIS_RHINO         = 0x14,
1073 	MIS_MAGMABALL     = 0x15,
1074 	MIS_LIGHTCTRL2    = 0x16,
1075 	MIS_LIGHTNING2    = 0x17,
1076 	MIS_FLARE         = 0x18,
1077 	MIS_MISEXP2       = 0x19,
1078 	MIS_TELEPORT      = 0x1A,
1079 	MIS_FARROW        = 0x1B,
1080 	MIS_DOOMSERP      = 0x1C,
1081 	MIS_FIREWALLA     = 0x1D, // TODO: Check beta
1082 	MIS_STONE         = 0x1E,
1083 	MIS_NULL_1F       = 0x1F,
1084 	MIS_INVISIBL      = 0x20,
1085 	MIS_GOLEM         = 0x21,
1086 	MIS_ETHEREALIZE   = 0x22,
1087 	MIS_BLODBUR       = 0x23, // TODO: Check beta
1088 	MIS_BOOM          = 0x24,
1089 	MIS_HEAL          = 0x25,
1090 	MIS_FIREWALLC     = 0x26,
1091 	MIS_INFRA         = 0x27,
1092 	MIS_IDENTIFY      = 0x28,
1093 	MIS_WAVE          = 0x29,
1094 	MIS_NOVA          = 0x2A,
1095 	MIS_BLODBOIL      = 0x2B,
1096 	MIS_APOCA         = 0x2C,
1097 	MIS_REPAIR        = 0x2D,
1098 	MIS_RECHARGE      = 0x2E,
1099 	MIS_DISARM        = 0x2F,
1100 	MIS_FLAME         = 0x30,
1101 	MIS_FLAMEC        = 0x31,
1102 	MIS_FIREMAN       = 0x32, // TODO: Check beta
1103 	MIS_KRULL         = 0x33, // TODO: Check beta
1104 	MIS_CBOLT         = 0x34,
1105 	MIS_HBOLT         = 0x35,
1106 	MIS_RESURRECT     = 0x36,
1107 	MIS_TELEKINESIS   = 0x37,
1108 	MIS_LARROW        = 0x38,
1109 	MIS_ACID          = 0x39,
1110 	MIS_MISEXP3       = 0x3A,
1111 	MIS_ACIDPUD       = 0x3B,
1112 	MIS_HEALOTHER     = 0x3C,
1113 	MIS_ELEMENT       = 0x3D,
1114 	MIS_RESURRECTBEAM = 0x3E,
1115 	MIS_BONESPIRIT    = 0x3F,
1116 	MIS_WEAPEXP       = 0x40,
1117 	MIS_RPORTAL       = 0x41,
1118 	MIS_BOOM2         = 0x42,
1119 	MIS_DIABAPOCA     = 0x43,
1120 	MIS_MANA          = 0x44,
1121 	MIS_MAGI          = 0x45,
1122 	MIS_LIGHTWALL     = 0x46,
1123 	MIS_LIGHTNINGWALL = 0x47,
1124 	MIS_IMMOLATION    = 0x48,
1125 	MIS_SPECARROW     = 0x49,
1126 	MIS_FIRENOVA      = 0x4A,
1127 	MIS_LIGHTARROW    = 0x4B,
1128 	MIS_CBOLTARROW    = 0x4C,
1129 	MIS_HBOLTARROW    = 0x4D,
1130 	MIS_WARP          = 0x4E,
1131 	MIS_REFLECT       = 0x4F,
1132 	MIS_BERSERK       = 0x50,
1133 	MIS_FIRERING      = 0x51,
1134 	MIS_STEALPOTS     = 0x52,
1135 	MIS_MANATRAP      = 0x53,
1136 	MIS_LIGHTRING     = 0x54,
1137 	MIS_SEARCH        = 0x55,
1138 	MIS_FLASHFR       = 0x56,
1139 	MIS_FLASHBK       = 0x57,
1140 	MIS_IMMOLATION2   = 0x58,
1141 	MIS_RUNEFIRE      = 0x59,
1142 	MIS_RUNELIGHT     = 0x5A,
1143 	MIS_RUNENOVA      = 0x5B,
1144 	MIS_RUNEIMMOLAT   = 0x5C,
1145 	MIS_RUNESTONE     = 0x5D,
1146 	MIS_HIVEEXP       = 0x5E,
1147 	MIS_HORKDMN       = 0x5F,
1148 	MIS_JESTER        = 0x60,
1149 	MIS_HIVEEXP2      = 0x61,
1150 	MIS_LICH          = 0x62,
1151 	MIS_PSYCHORB      = 0x63,
1152 	MIS_NECROMORB     = 0x64,
1153 	MIS_ARCHLICH      = 0x65,
1154 	MIS_BONEDEMON     = 0x66,
1155 	MIS_EXYEL2        = 0x67,
1156 	MIS_EXRED3        = 0x68,
1157 	MIS_EXBL2         = 0x69,
1158 	MIS_EXBL3         = 0x6A,
1159 	MIS_EXORA1        = 0x6B,
1160 } missile_id;
1161 
1162 typedef enum missile_graphic_id {
1163 	MFILE_ARROWS,
1164 	MFILE_FIREBA,
1165 	MFILE_GUARD,
1166 	MFILE_LGHNING,
1167 	MFILE_FIREWAL,
1168 	MFILE_MAGBLOS,
1169 	MFILE_PORTAL,
1170 	MFILE_BLUEXFR,
1171 	MFILE_BLUEXBK,
1172 	MFILE_MANASHLD,
1173 	MFILE_BLOOD,
1174 	MFILE_BONE,
1175 	MFILE_METLHIT,
1176 	MFILE_FARROW,
1177 	MFILE_DOOM,
1178 	MFILE_0F,
1179 	MFILE_BLODBUR,
1180 	MFILE_NEWEXP,
1181 	MFILE_SHATTER1,
1182 	MFILE_BIGEXP,
1183 	MFILE_INFERNO,
1184 	MFILE_THINLGHT,
1185 	MFILE_FLARE,
1186 	MFILE_FLAREEXP,
1187 	MFILE_MAGBALL,
1188 	MFILE_KRULL,
1189 	MFILE_MINILTNG,
1190 	MFILE_HOLY,
1191 	MFILE_HOLYEXPL,
1192 	MFILE_LARROW,
1193 	MFILE_FIRARWEX,
1194 	MFILE_ACIDBF,
1195 	MFILE_ACIDSPLA,
1196 	MFILE_ACIDPUD,
1197 	MFILE_ETHRSHLD,
1198 	MFILE_FIRERUN,
1199 	MFILE_RESSUR1,
1200 	MFILE_SKLBALL,
1201 	MFILE_RPORTAL,
1202 	MFILE_FIREPLAR,
1203 	MFILE_SCUBMISB,
1204 	MFILE_SCBSEXPB,
1205 	MFILE_SCUBMISC,
1206 	MFILE_SCBSEXPC,
1207 	MFILE_SCUBMISD,
1208 	MFILE_SCBSEXPD,
1209 	MFILE_SPAWNS,
1210 	MFILE_REFLECT,
1211 	MFILE_LICH,
1212 	MFILE_MSBLA,
1213 	MFILE_NECROMORB,
1214 	MFILE_ARCHLICH,
1215 	MFILE_RUNE,
1216 	MFILE_EXYEL2,
1217 	MFILE_EXBL2,
1218 	MFILE_EXRED3,
1219 	MFILE_BONEDEMON,
1220 	MFILE_EXORA1,
1221 	MFILE_EXBL3,
1222 	MFILE_NONE, // BUGFIX: should be `MFILE_NONE = MFILE_SCBSEXPD+1`, i.e. MFILE_NULL, since there would otherwise be an out-of-bounds in SetMissAnim when accessing misfiledata for any of the missiles that have MFILE_NONE as mFileNum in missiledata. (fixed)
1223 } missile_graphic_id;
1224 
1225 typedef enum FILE_SYSTEM {
1226 	FS_PC = 0,
1227 	FS_CD = 1,
1228 } FILE_SYSTEM;
1229 
1230 typedef enum _artfonts {
1231 	AF_SMALL     = 0,
1232 	AF_SMALLGRAY = 1,
1233 	AF_MED       = 2,
1234 	AF_MEDGRAY   = 3,
1235 	AF_BIG       = 4,
1236 	AF_BIGGRAY   = 5,
1237 	AF_HUGE      = 6,
1238 	AF_HUGEGRAY  = 7,
1239 } _artfonts;
1240 
1241 // this enum contains indexes from UniqMonst array for special unique monsters (usually quest related)
1242 typedef enum {
1243 	UMT_GARBUD    = 0,
1244 	UMT_SKELKING  = 1,
1245 	UMT_ZHAR      = 2,
1246 	UMT_SNOTSPIL  = 3,
1247 	UMT_LAZURUS   = 4,
1248 	UMT_RED_VEX   = 5,
1249 	UMT_BLACKJADE = 6,
1250 	UMT_LACHDAN   = 7,
1251 	UMT_WARLORD   = 8,
1252 	UMT_BUTCHER   = 9,
1253 	UMT_HORKDMN   = 10,
1254 	UMT_DEFILER   = 11,
1255 	UMT_NAKRUL    = 12,
1256 } _uniq_monsterid;
1257 
1258 typedef enum monster_flag {
1259 	MFLAG_HIDDEN          = 0x01,
1260 	MFLAG_LOCK_ANIMATION  = 0x02,
1261 	MFLAG_ALLOW_SPECIAL   = 0x04,
1262 	MFLAG_NOHEAL          = 0x08,
1263 	MFLAG_TARGETS_MONSTER = 0x10,
1264 	MFLAG_GOLEM           = 0x20,
1265 	MFLAG_QUEST_COMPLETE  = 0x40,
1266 	MFLAG_KNOCKBACK       = 0x80,
1267 	MFLAG_SEARCH          = 0x100,
1268 	MFLAG_CAN_OPEN_DOOR   = 0x200,
1269 	MFLAG_NO_ENEMY        = 0x400,
1270 	MFLAG_BERSERK         = 0x800,
1271 	MFLAG_NOLIFESTEAL     = 0x1000
1272 } monster_flag;
1273 
1274 typedef enum monster_goal {
1275 	MGOAL_NORMAL    = 1,
1276 	MGOAL_RETREAT   = 2,
1277 	MGOAL_HEALING   = 3,
1278 	MGOAL_MOVE      = 4,
1279 	MGOAL_ATTACK2   = 5,
1280 	MGOAL_INQUIRING = 6,
1281 	MGOAL_TALKING   = 7,
1282 } monster_goal;
1283 
1284 typedef enum missile_resistance {
1285 	MISR_NONE      = 0,
1286 	MISR_FIRE      = 1,
1287 	MISR_LIGHTNING = 2,
1288 	MISR_MAGIC     = 3,
1289 	MISR_ACID      = 4,
1290 } missile_resistance;
1291 
1292 typedef enum _speech_id {
1293 	TEXT_KING1,
1294 	TEXT_KING2,
1295 	TEXT_KING3,
1296 	TEXT_KING4,
1297 	TEXT_KING5,
1298 	TEXT_KING6,
1299 	TEXT_KING7,
1300 	TEXT_KING8,
1301 	TEXT_KING9,
1302 	TEXT_KING10,
1303 	TEXT_KING11,
1304 	TEXT_BANNER1,
1305 	TEXT_BANNER2,
1306 	TEXT_BANNER3,
1307 	TEXT_BANNER4,
1308 	TEXT_BANNER5,
1309 	TEXT_BANNER6,
1310 	TEXT_BANNER7,
1311 	TEXT_BANNER8,
1312 	TEXT_BANNER9,
1313 	TEXT_BANNER10,
1314 	TEXT_BANNER11,
1315 	TEXT_BANNER12,
1316 	TEXT_VILE1,
1317 	TEXT_VILE2,
1318 	TEXT_VILE3,
1319 	TEXT_VILE4,
1320 	TEXT_VILE5,
1321 	TEXT_VILE6,
1322 	TEXT_VILE7,
1323 	TEXT_VILE8,
1324 	TEXT_VILE9,
1325 	TEXT_VILE10,
1326 	TEXT_VILE11,
1327 	TEXT_VILE12,
1328 	TEXT_VILE13,
1329 	TEXT_VILE14,
1330 	TEXT_POISON1,
1331 	TEXT_POISON2,
1332 	TEXT_POISON3,
1333 	TEXT_POISON4,
1334 	TEXT_POISON5,
1335 	TEXT_POISON6,
1336 	TEXT_POISON7,
1337 	TEXT_POISON8,
1338 	TEXT_POISON9,
1339 	TEXT_POISON10,
1340 	TEXT_BONE1,
1341 	TEXT_BONE2,
1342 	TEXT_BONE3,
1343 	TEXT_BONE4,
1344 	TEXT_BONE5,
1345 	TEXT_BONE6,
1346 	TEXT_BONE7,
1347 	TEXT_BONE8,
1348 	TEXT_BUTCH1,
1349 	TEXT_BUTCH2,
1350 	TEXT_BUTCH3,
1351 	TEXT_BUTCH4,
1352 	TEXT_BUTCH5,
1353 	TEXT_BUTCH6,
1354 	TEXT_BUTCH7,
1355 	TEXT_BUTCH8,
1356 	TEXT_BUTCH9,
1357 	TEXT_BUTCH10,
1358 	TEXT_BLIND1,
1359 	TEXT_BLIND2,
1360 	TEXT_BLIND3,
1361 	TEXT_BLIND4,
1362 	TEXT_BLIND5,
1363 	TEXT_BLIND6,
1364 	TEXT_BLIND7,
1365 	TEXT_BLIND8,
1366 	TEXT_VEIL1,
1367 	TEXT_VEIL2,
1368 	TEXT_VEIL3,
1369 	TEXT_VEIL4,
1370 	TEXT_VEIL5,
1371 	TEXT_VEIL6,
1372 	TEXT_VEIL7,
1373 	TEXT_VEIL8,
1374 	TEXT_VEIL9,
1375 	TEXT_VEIL10,
1376 	TEXT_VEIL11,
1377 	TEXT_ANVIL1,
1378 	TEXT_ANVIL2,
1379 	TEXT_ANVIL3,
1380 	TEXT_ANVIL4,
1381 	TEXT_ANVIL5,
1382 	TEXT_ANVIL6,
1383 	TEXT_ANVIL7,
1384 	TEXT_ANVIL8,
1385 	TEXT_ANVIL9,
1386 	TEXT_ANVIL10,
1387 	TEXT_BLOOD1,
1388 	TEXT_BLOOD2,
1389 	TEXT_BLOOD3,
1390 	TEXT_BLOOD4,
1391 	TEXT_BLOOD5,
1392 	TEXT_BLOOD6,
1393 	TEXT_BLOOD7,
1394 	TEXT_BLOOD8,
1395 	TEXT_WARLRD1,
1396 	TEXT_WARLRD2,
1397 	TEXT_WARLRD3,
1398 	TEXT_WARLRD4,
1399 	TEXT_WARLRD5,
1400 	TEXT_WARLRD6,
1401 	TEXT_WARLRD7,
1402 	TEXT_WARLRD8,
1403 	TEXT_WARLRD9,
1404 	TEXT_INFRA1,
1405 	TEXT_INFRA2,
1406 	TEXT_INFRA3,
1407 	TEXT_INFRA4,
1408 	TEXT_INFRA5,
1409 	TEXT_INFRA6,
1410 	TEXT_INFRA7,
1411 	TEXT_INFRA8,
1412 	TEXT_INFRA9,
1413 	TEXT_INFRA10,
1414 	TEXT_MUSH1,
1415 	TEXT_MUSH2,
1416 	TEXT_MUSH3,
1417 	TEXT_MUSH4,
1418 	TEXT_MUSH5,
1419 	TEXT_MUSH6,
1420 	TEXT_MUSH7,
1421 	TEXT_MUSH8,
1422 	TEXT_MUSH9,
1423 	TEXT_MUSH10,
1424 	TEXT_MUSH11,
1425 	TEXT_MUSH12,
1426 	TEXT_MUSH13,
1427 	TEXT_DOOM1,
1428 	TEXT_DOOM2,
1429 	TEXT_DOOM3,
1430 	TEXT_DOOM4,
1431 	TEXT_DOOM5,
1432 	TEXT_DOOM6,
1433 	TEXT_DOOM7,
1434 	TEXT_DOOM8,
1435 	TEXT_DOOM9,
1436 	TEXT_DOOM10,
1437 	TEXT_GARBUD1,
1438 	TEXT_GARBUD2,
1439 	TEXT_GARBUD3,
1440 	TEXT_GARBUD4,
1441 	TEXT_ZHAR1,
1442 	TEXT_ZHAR2,
1443 	TEXT_STORY1,
1444 	TEXT_STORY2,
1445 	TEXT_STORY3,
1446 	TEXT_STORY4,
1447 	TEXT_STORY5,
1448 	TEXT_STORY6,
1449 	TEXT_STORY7,
1450 	TEXT_STORY9,
1451 	TEXT_STORY10,
1452 	TEXT_STORY11,
1453 	TEXT_OGDEN1,
1454 	TEXT_OGDEN2,
1455 	TEXT_OGDEN3,
1456 	TEXT_OGDEN4,
1457 	TEXT_OGDEN5,
1458 	TEXT_OGDEN6,
1459 	TEXT_OGDEN8,
1460 	TEXT_OGDEN9,
1461 	TEXT_OGDEN10,
1462 	TEXT_PEPIN1,
1463 	TEXT_PEPIN2,
1464 	TEXT_PEPIN3,
1465 	TEXT_PEPIN4,
1466 	TEXT_PEPIN5,
1467 	TEXT_PEPIN6,
1468 	TEXT_PEPIN7,
1469 	TEXT_PEPIN9,
1470 	TEXT_PEPIN10,
1471 	TEXT_PEPIN11,
1472 	TEXT_GILLIAN1,
1473 	TEXT_GILLIAN2,
1474 	TEXT_GILLIAN3,
1475 	TEXT_GILLIAN4,
1476 	TEXT_GILLIAN5,
1477 	TEXT_GILLIAN6,
1478 	TEXT_GILLIAN7,
1479 	TEXT_GILLIAN9,
1480 	TEXT_GILLIAN10,
1481 	TEXT_GRISWOLD1,
1482 	TEXT_GRISWOLD2,
1483 	TEXT_GRISWOLD3,
1484 	TEXT_GRISWOLD4,
1485 	TEXT_GRISWOLD5,
1486 	TEXT_GRISWOLD6,
1487 	TEXT_GRISWOLD7,
1488 	TEXT_GRISWOLD8,
1489 	TEXT_GRISWOLD9,
1490 	TEXT_GRISWOLD10,
1491 	TEXT_GRISWOLD12,
1492 	TEXT_GRISWOLD13,
1493 	TEXT_FARNHAM1,
1494 	TEXT_FARNHAM2,
1495 	TEXT_FARNHAM3,
1496 	TEXT_FARNHAM4,
1497 	TEXT_FARNHAM5,
1498 	TEXT_FARNHAM6,
1499 	TEXT_FARNHAM8,
1500 	TEXT_FARNHAM9,
1501 	TEXT_FARNHAM10,
1502 	TEXT_FARNHAM11,
1503 	TEXT_FARNHAM12,
1504 	TEXT_FARNHAM13,
1505 	TEXT_ADRIA1,
1506 	TEXT_ADRIA2,
1507 	TEXT_ADRIA3,
1508 	TEXT_ADRIA4,
1509 	TEXT_ADRIA5,
1510 	TEXT_ADRIA6,
1511 	TEXT_ADRIA7,
1512 	TEXT_ADRIA8,
1513 	TEXT_ADRIA9,
1514 	TEXT_ADRIA10,
1515 	TEXT_ADRIA12,
1516 	TEXT_ADRIA13,
1517 	TEXT_WIRT1,
1518 	TEXT_WIRT2,
1519 	TEXT_WIRT3,
1520 	TEXT_WIRT4,
1521 	TEXT_WIRT5,
1522 	TEXT_WIRT6,
1523 	TEXT_WIRT7,
1524 	TEXT_WIRT8,
1525 	TEXT_WIRT9,
1526 	TEXT_WIRT11,
1527 	TEXT_WIRT12,
1528 	TEXT_BONER,
1529 	TEXT_BLOODY,
1530 	TEXT_BLINDING,
1531 	TEXT_BLOODWAR,
1532 	TEXT_MBONER,
1533 	TEXT_MBLOODY,
1534 	TEXT_MBLINDING,
1535 	TEXT_MBLOODWAR,
1536 	TEXT_RBONER,
1537 	TEXT_RBLOODY,
1538 	TEXT_RBLINDING,
1539 	TEXT_RBLOODWAR,
1540 	TEXT_COW1,
1541 	TEXT_COW2,
1542 	TEXT_BOOK11,
1543 	TEXT_BOOK12,
1544 	TEXT_BOOK13,
1545 	TEXT_BOOK21,
1546 	TEXT_BOOK22,
1547 	TEXT_BOOK23,
1548 	TEXT_BOOK31,
1549 	TEXT_BOOK32,
1550 	TEXT_BOOK33,
1551 	TEXT_INTRO,
1552 	TEXT_HBONER,
1553 	TEXT_HBLOODY,
1554 	TEXT_HBLINDING,
1555 	TEXT_HBLOODWAR,
1556 	TEXT_BBONER,
1557 	TEXT_BBLOODY,
1558 	TEXT_BBLINDING,
1559 	TEXT_BBLOODWAR,
1560 	TEXT_GRAVE1,
1561 	TEXT_GRAVE2,
1562 	TEXT_GRAVE3,
1563 	TEXT_GRAVE4,
1564 	TEXT_GRAVE5,
1565 	TEXT_GRAVE6,
1566 	TEXT_GRAVE7,
1567 	TEXT_GRAVE8,
1568 	TEXT_GRAVE9,
1569 	TEXT_GRAVE10,
1570 	TEXT_FARMER1,
1571 	TEXT_FARMER2,
1572 	TEXT_FARMER3,
1573 	TEXT_FARMER4,
1574 	TEXT_FARMER5,
1575 	TEXT_GIRL1,
1576 	TEXT_GIRL2,
1577 	TEXT_GIRL3,
1578 	TEXT_GIRL4,
1579 	TEXT_DEFILER1,
1580 	TEXT_DEFILER2,
1581 	TEXT_DEFILER3,
1582 	TEXT_DEFILER4,
1583 	TEXT_DEFILER5,
1584 	TEXT_NAKRUL1,
1585 	TEXT_NAKRUL2,
1586 	TEXT_NAKRUL3,
1587 	TEXT_NAKRUL4,
1588 	TEXT_NAKRUL5,
1589 	TEXT_CORNSTN,
1590 	TEXT_JERSEY1,
1591 	TEXT_JERSEY2,
1592 	TEXT_JERSEY3,
1593 	TEXT_JERSEY4,
1594 	TEXT_JERSEY5,
1595 	TEXT_JERSEY6,
1596 	TEXT_JERSEY7,
1597 	TEXT_JERSEY8,
1598 	TEXT_JERSEY9,
1599 	TEXT_TRADER,
1600 	TEXT_FARMER6,
1601 	TEXT_FARMER7,
1602 	TEXT_FARMER8,
1603 	TEXT_FARMER9,
1604 	TEXT_FARMER10,
1605 	TEXT_JERSEY10,
1606 	TEXT_JERSEY11,
1607 	TEXT_JERSEY12,
1608 	TEXT_JERSEY13,
1609 	TEXT_SKLJRN,
1610 	TEXT_BOOK4,
1611 	TEXT_BOOK5,
1612 	TEXT_BOOK6,
1613 	TEXT_BOOK7,
1614 	TEXT_BOOK8,
1615 	TEXT_BOOK9,
1616 	TEXT_BOOKA,
1617 	TEXT_BOOKB,
1618 	TEXT_BOOKC,
1619 	TEXT_OBOOKA,
1620 	TEXT_OBOOKB,
1621 	TEXT_OBOOKC,
1622 	TEXT_MBOOKA,
1623 	TEXT_MBOOKB,
1624 	TEXT_MBOOKC,
1625 	TEXT_RBOOKA,
1626 	TEXT_RBOOKB,
1627 	TEXT_RBOOKC,
1628 	TEXT_BBOOKA,
1629 	TEXT_BBOOKB,
1630 	TEXT_BBOOKC,
1631 /*
1632 	TEXT_DEADGUY,
1633 	TEXT_FARNHAM14,
1634 	TEXT_FARNHAM15,
1635 	TEXT_FARNHAM16,
1636 	TEXT_FARNHAM17,
1637 	TEXT_FARNHAM18,
1638 	TEXT_FARNHAM19,
1639 	TEXT_FARNHAM20,
1640 	TEXT_FARNHAM21,
1641 	TEXT_FARNHAM22,
1642 	TEXT_GILLIAN11,
1643 	TEXT_GILLIAN12,
1644 	TEXT_GILLIAN13,
1645 	TEXT_GILLIAN14,
1646 	TEXT_GILLIAN15,
1647 	TEXT_GILLIAN16,
1648 	TEXT_GILLIAN17,
1649     TEXT_GILLIAN18,
1650     TEXT_GILLIAN19,
1651     TEXT_GILLIAN20,
1652     TEXT_GILLIAN21,
1653     TEXT_GILLIAN22,
1654     TEXT_GILLIAN23,
1655     TEXT_GILLIAN24,
1656     TEXT_GILLIAN25,
1657 	TEXT_GILLIAN26,
1658 */
1659 	TEXT_NONE = -1,
1660 } _speech_id;
1661 
1662 typedef enum object_graphic_id {
1663 	OFILE_L1BRAZ   = 0x0,
1664 	OFILE_L1DOORS  = 0x1,
1665 	OFILE_LEVER    = 0x2,
1666 	OFILE_CHEST1   = 0x3,
1667 	OFILE_CHEST2   = 0x4,
1668 	OFILE_BANNER   = 0x5,
1669 	OFILE_SKULPILE = 0x6,
1670 	OFILE_SKULFIRE = 0x7,
1671 	OFILE_SKULSTIK = 0x8,
1672 	OFILE_CRUXSK1  = 0x9,
1673 	OFILE_CRUXSK2  = 0xA,
1674 	OFILE_CRUXSK3  = 0xB,
1675 	OFILE_BOOK1    = 0xC,
1676 	OFILE_BOOK2    = 0xD,
1677 	OFILE_ROCKSTAN = 0xE,
1678 	OFILE_ANGEL    = 0xF,
1679 	OFILE_CHEST3   = 0x10,
1680 	OFILE_BURNCROS = 0x11,
1681 	OFILE_CANDLE2  = 0x12,
1682 	OFILE_NUDE2    = 0x13,
1683 	OFILE_SWITCH4  = 0x14,
1684 	OFILE_TNUDEM   = 0x15,
1685 	OFILE_TNUDEW   = 0x16,
1686 	OFILE_TSOUL    = 0x17,
1687 	OFILE_L2DOORS  = 0x18,
1688 	OFILE_WTORCH4  = 0x19,
1689 	OFILE_WTORCH3  = 0x1A,
1690 	OFILE_SARC     = 0x1B,
1691 	OFILE_FLAME1   = 0x1C,
1692 	OFILE_PRSRPLT1 = 0x1D,
1693 	OFILE_TRAPHOLE = 0x1E,
1694 	OFILE_MINIWATR = 0x1F,
1695 	OFILE_WTORCH2  = 0x20,
1696 	OFILE_WTORCH1  = 0x21,
1697 	OFILE_BCASE    = 0x22,
1698 	OFILE_BSHELF   = 0x23,
1699 	OFILE_WEAPSTND = 0x24,
1700 	OFILE_BARREL   = 0x25,
1701 	OFILE_BARRELEX = 0x26,
1702 	OFILE_LSHRINEG = 0x27,
1703 	OFILE_RSHRINEG = 0x28,
1704 	OFILE_BLOODFNT = 0x29,
1705 	OFILE_DECAP    = 0x2A,
1706 	OFILE_PEDISTL  = 0x2B,
1707 	OFILE_L3DOORS  = 0x2C,
1708 	OFILE_PFOUNTN  = 0x2D,
1709 	OFILE_ARMSTAND = 0x2E,
1710 	OFILE_GOATSHRN = 0x2F,
1711 	OFILE_CAULDREN = 0x30,
1712 	OFILE_MFOUNTN  = 0x31,
1713 	OFILE_TFOUNTN  = 0x32,
1714 	OFILE_ALTBOY   = 0x33,
1715 	OFILE_MCIRL    = 0x34,
1716 	OFILE_BKSLBRNT = 0x35,
1717 	OFILE_MUSHPTCH = 0x36,
1718 	OFILE_LZSTAND  = 0x37,
1719 } object_graphic_id;
1720 
1721 typedef enum dungeon_type {
1722 	DTYPE_TOWN      = 0x0,
1723 	DTYPE_CATHEDRAL = 0x1,
1724 	DTYPE_CATACOMBS = 0x2,
1725 	DTYPE_CAVES     = 0x3,
1726 	DTYPE_HELL      = 0x4,
1727 	DTYPE_NEST      = 0x5,
1728 	DTYPE_CRYPT     = 0x6,
1729 	DTYPE_NONE      = 0xFF,
1730 } dungeon_type;
1731 
1732 typedef enum dflag {
1733 	BFLAG_MISSILE     = 0x01,
1734 	BFLAG_VISIBLE     = 0x02,
1735 	BFLAG_DEAD_PLAYER = 0x04,
1736 	BFLAG_POPULATED   = 0x08,
1737 	BFLAG_MONSTLR     = 0x10,
1738 	BFLAG_PLAYERLR    = 0x20,
1739 	BFLAG_LIT         = 0x40,
1740 	BFLAG_EXPLORED    = 0x80,
1741 } dflag;
1742 
1743 typedef enum clicktype {
1744 	CLICK_NONE  = 0,
1745 	CLICK_LEFT  = 1,
1746 	CLICK_RIGHT = 2,
1747 } clicktype;
1748 
1749 typedef enum placeflag {
1750 	PLACE_SCATTER = 1,
1751 	PLACE_SPECIAL = 2,
1752 	PLACE_UNIQUE  = 4,
1753 } placeflag;
1754 
1755 typedef enum mienemy_type {
1756 	TARGET_MONSTERS = 0,
1757 	TARGET_PLAYERS  = 1,
1758 	TARGET_BOTH     = 2,
1759 } mienemy_type;
1760 
1761 typedef enum dungeon_message {
1762 	DMSG_CATHEDRAL = 1 << 0,
1763 	DMSG_CATACOMBS = 1 << 1,
1764 	DMSG_CAVES     = 1 << 2,
1765 	DMSG_HELL      = 1 << 3,
1766 	DMSG_DIABLO    = 1 << 4,
1767 } dungeon_message;
1768 
1769 typedef enum diablo_message {
1770 	EMSG_NONE                   = 0,
1771 	EMSG_NO_AUTOMAP_IN_TOWN     = 1,
1772 	EMSG_NO_MULTIPLAYER_IN_DEMO = 2,
1773 	EMSG_DIRECT_SOUND_FAILED    = 3,
1774 	EMSG_NOT_IN_SHAREWARE       = 4,
1775 	EMSG_NO_SPACE_TO_SAVE       = 5,
1776 	EMSG_NO_PAUSE_IN_TOWN       = 6,
1777 	EMSG_COPY_TO_HDD            = 7,
1778 	EMSG_DESYNC                 = 8,
1779 	EMSG_NO_PAUSE_IN_MP         = 9,
1780 	EMSG_LOADING                = 10,
1781 	EMSG_SAVING                 = 11,
1782 	EMSG_SHRINE_MYSTERIOUS      = 12,
1783 	EMSG_SHRINE_HIDDEN          = 13,
1784 	EMSG_SHRINE_GLOOMY          = 14,
1785 	EMSG_SHRINE_WEIRD           = 15,
1786 	EMSG_SHRINE_MAGICAL         = 16,
1787 	EMSG_SHRINE_STONE           = 17,
1788 	EMSG_SHRINE_RELIGIOUS       = 18,
1789 	EMSG_SHRINE_ENCHANTED       = 19,
1790 	EMSG_SHRINE_THAUMATURGIC    = 20,
1791 	EMSG_SHRINE_FASCINATING     = 21,
1792 	EMSG_SHRINE_CRYPTIC         = 22,
1793 	EMSG_SHRINE_UNUSED          = 23,
1794 	EMSG_SHRINE_ELDRITCH        = 24,
1795 	EMSG_SHRINE_EERIE           = 25,
1796 	EMSG_SHRINE_DIVINE          = 26,
1797 	EMSG_SHRINE_HOLY            = 27,
1798 	EMSG_SHRINE_SACRED          = 28,
1799 	EMSG_SHRINE_SPIRITUAL       = 29,
1800 	EMSG_SHRINE_SPOOKY1         = 30,
1801 	EMSG_SHRINE_SPOOKY2         = 31,
1802 	EMSG_SHRINE_ABANDONED       = 32,
1803 	EMSG_SHRINE_CREEPY          = 33,
1804 	EMSG_SHRINE_QUIET           = 34,
1805 	EMSG_SHRINE_SECLUDED        = 35,
1806 	EMSG_SHRINE_ORNATE          = 36,
1807 	EMSG_SHRINE_GLIMMERING      = 37,
1808 	EMSG_SHRINE_TAINTED1        = 38,
1809 	EMSG_SHRINE_TAINTED2        = 39,
1810 	EMSG_REQUIRES_LVL_8         = 40,
1811 	EMSG_REQUIRES_LVL_13        = 41,
1812 	EMSG_REQUIRES_LVL_17        = 42,
1813 	EMSG_BONECHAMB              = 43,
1814 	EMSG_SHRINE_OILY            = 44,
1815 	EMSG_SHRINE_GLOWING         = 45,
1816 	EMSG_SHRINE_MENDICANT       = 46,
1817 	EMSG_SHRINE_SPARKLING       = 47,
1818 	EMSG_SHRINE_TOWN            = 48,
1819 	EMSG_SHRINE_SHIMMERING      = 49,
1820 	EMSG_SHRINE_SOLAR1          = 50,
1821 	EMSG_SHRINE_SOLAR2          = 51,
1822 	EMSG_SHRINE_SOLAR3          = 52,
1823 	EMSG_SHRINE_SOLAR4          = 53,
1824 	EMSG_SHRINE_MURPHYS         = 54,
1825 } diablo_message;
1826 
1827 typedef enum magic_type {
1828 	STYPE_FIRE      = 0x0,
1829 	STYPE_LIGHTNING = 0x1,
1830 	STYPE_MAGIC     = 0x2,
1831 } magic_type;
1832 
1833 typedef enum theme_id {
1834 	THEME_BARREL            = 0x0,
1835 	THEME_SHRINE            = 0x1,
1836 	THEME_MONSTPIT          = 0x2,
1837 	THEME_SKELROOM          = 0x3,
1838 	THEME_TREASURE          = 0x4,
1839 	THEME_LIBRARY           = 0x5,
1840 	THEME_TORTURE           = 0x6,
1841 	THEME_BLOODFOUNTAIN     = 0x7,
1842 	THEME_DECAPITATED       = 0x8,
1843 	THEME_PURIFYINGFOUNTAIN = 0x9,
1844 	THEME_ARMORSTAND        = 0xA,
1845 	THEME_GOATSHRINE        = 0xB,
1846 	THEME_CAULDRON          = 0xC,
1847 	THEME_MURKYFOUNTAIN     = 0xD,
1848 	THEME_TEARFOUNTAIN      = 0xE,
1849 	THEME_BRNCROSS          = 0xF,
1850 	THEME_WEAPONRACK        = 0x10,
1851 	THEME_NONE              = -1,
1852 } theme_id;
1853 
1854 typedef enum event_type {
1855 	EVENT_TYPE_PLAYER_CREATE_GAME = 1,
1856 	EVENT_TYPE_2                  = 2,
1857 	EVENT_TYPE_PLAYER_LEAVE_GAME  = 3,
1858 	EVENT_TYPE_PLAYER_MESSAGE     = 4,
1859 	EVENT_TYPE_5                  = 5,
1860 	EVENT_TYPE_6                  = 6,
1861 	EVENT_TYPE_7                  = 7,
1862 	EVENT_TYPE_8                  = 8,
1863 	EVENT_TYPE_9                  = 9,
1864 	EVENT_TYPE_10                 = 10,
1865 	EVENT_TYPE_11                 = 11,
1866 	EVENT_TYPE_12                 = 12,
1867 	EVENT_TYPE_13                 = 13,
1868 	EVENT_TYPE_14                 = 14,
1869 	EVENT_TYPE_15                 = 15,
1870 } event_type;
1871 
1872 typedef enum _difficulty {
1873 	DIFF_NORMAL      = 0x0,
1874 	DIFF_NIGHTMARE   = 0x1,
1875 	DIFF_HELL        = 0x2,
1876 	NUM_DIFFICULTIES = 0x3,
1877 } _difficulty;
1878 
1879 typedef enum MON_ANIM {
1880 	MA_STAND   = 0,
1881 	MA_WALK    = 1,
1882 	MA_ATTACK  = 2,
1883 	MA_GOTHIT  = 3,
1884 	MA_DEATH   = 4,
1885 	MA_SPECIAL = 5,
1886 } MON_ANIM;
1887 
1888 typedef enum spell_type {
1889 	RSPLTYPE_SKILL   = 0x0,
1890 	RSPLTYPE_SPELL   = 0x1,
1891 	RSPLTYPE_SCROLL  = 0x2,
1892 	RSPLTYPE_CHARGES = 0x3,
1893 	RSPLTYPE_INVALID = 0x4,
1894 } spell_type;
1895 
1896 typedef enum cursor_id {
1897 	CURSOR_NONE        = 0x0,
1898 	CURSOR_HAND        = 0x1,
1899 	CURSOR_IDENTIFY    = 0x2,
1900 	CURSOR_REPAIR      = 0x3,
1901 	CURSOR_RECHARGE    = 0x4,
1902 	CURSOR_DISARM      = 0x5,
1903 	CURSOR_OIL         = 0x6,
1904 	CURSOR_TELEKINESIS = 0x7,
1905 	CURSOR_RESURRECT   = 0x8,
1906 	CURSOR_TELEPORT    = 0x9,
1907 	CURSOR_HEALOTHER   = 0xA,
1908 	CURSOR_HOURGLASS   = 0xB,
1909 	CURSOR_FIRSTITEM   = 0xC,
1910 } cursor_id;
1911 
1912 typedef enum direction {
1913 	DIR_S    = 0x0,
1914 	DIR_SW   = 0x1,
1915 	DIR_W    = 0x2,
1916 	DIR_NW   = 0x3,
1917 	DIR_N    = 0x4,
1918 	DIR_NE   = 0x5,
1919 	DIR_E    = 0x6,
1920 	DIR_SE   = 0x7,
1921 	DIR_OMNI = 0x8,
1922 } direction;
1923 
1924 typedef enum _scroll_direction {
1925 	SDIR_NONE = 0x0,
1926 	SDIR_N    = 0x1,
1927 	SDIR_NE   = 0x2,
1928 	SDIR_E    = 0x3,
1929 	SDIR_SE   = 0x4,
1930 	SDIR_S    = 0x5,
1931 	SDIR_SW   = 0x6,
1932 	SDIR_W    = 0x7,
1933 	SDIR_NW   = 0x8,
1934 } _scroll_direction;
1935 
1936 typedef enum interface_mode {
1937 	WM_DIABNEXTLVL  = 0x402, // WM_USER+2
1938 	WM_DIABPREVLVL  = 0x403,
1939 	WM_DIABRTNLVL   = 0x404,
1940 	WM_DIABSETLVL   = 0x405,
1941 	WM_DIABWARPLVL  = 0x406,
1942 	WM_DIABTOWNWARP = 0x407,
1943 	WM_DIABTWARPUP  = 0x408,
1944 	WM_DIABRETOWN   = 0x409,
1945 	WM_DIABNEWGAME  = 0x40A,
1946 	WM_DIABLOADGAME = 0x40B
1947 	// WM_LEIGHSKIP = 0x40C, // psx only
1948 	// WM_DIAVNEWLVL = 0x40D, // psx only
1949 } interface_mode;
1950 
1951 typedef enum lvl_entry {
1952 	ENTRY_MAIN    = 0,
1953 	ENTRY_PREV    = 1,
1954 	ENTRY_SETLVL  = 2,
1955 	ENTRY_RTNLVL  = 3,
1956 	ENTRY_LOAD    = 4,
1957 	ENTRY_WARPLVL = 5,
1958 	ENTRY_TWARPDN = 6,
1959 	ENTRY_TWARPUP = 7,
1960 } lvl_entry;
1961 
1962 typedef enum game_info {
1963 	GAMEINFO_NAME         = 1,
1964 	GAMEINFO_PASSWORD     = 2,
1965 	GAMEINFO_STATS        = 3,
1966 	GAMEINFO_MODEFLAG     = 4,
1967 	GAMEINFO_GAMETEMPLATE = 5,
1968 	GAMEINFO_PLAYERS      = 6,
1969 } game_info;
1970 
1971 typedef enum spell_id {
1972 	SPL_NULL        = 0x0,
1973 	SPL_FIREBOLT    = 0x1,
1974 	SPL_HEAL        = 0x2,
1975 	SPL_LIGHTNING   = 0x3,
1976 	SPL_FLASH       = 0x4,
1977 	SPL_IDENTIFY    = 0x5,
1978 	SPL_FIREWALL    = 0x6,
1979 	SPL_TOWN        = 0x7,
1980 	SPL_STONE       = 0x8,
1981 	SPL_INFRA       = 0x9,
1982 	SPL_RNDTELEPORT = 0xA,
1983 	SPL_MANASHIELD  = 0xB,
1984 	SPL_FIREBALL    = 0xC,
1985 	SPL_GUARDIAN    = 0xD,
1986 	SPL_CHAIN       = 0xE,
1987 	SPL_WAVE        = 0xF,
1988 	SPL_DOOMSERP    = 0x10,
1989 	SPL_BLODRIT     = 0x11,
1990 	SPL_NOVA        = 0x12,
1991 	SPL_INVISIBIL   = 0x13,
1992 	SPL_FLAME       = 0x14,
1993 	SPL_GOLEM       = 0x15,
1994 	SPL_BLODBOIL    = 0x16,
1995 	SPL_TELEPORT    = 0x17,
1996 	SPL_APOCA       = 0x18,
1997 	SPL_ETHEREALIZE = 0x19,
1998 	SPL_REPAIR      = 0x1A,
1999 	SPL_RECHARGE    = 0x1B,
2000 	SPL_DISARM      = 0x1C,
2001 	SPL_ELEMENT     = 0x1D,
2002 	SPL_CBOLT       = 0x1E,
2003 	SPL_HBOLT       = 0x1F,
2004 	SPL_RESURRECT   = 0x20,
2005 	SPL_TELEKINESIS = 0x21,
2006 	SPL_HEALOTHER   = 0x22,
2007 	SPL_FLARE       = 0x23,
2008 	SPL_BONESPIRIT  = 0x24,
2009 	SPL_LASTDIABLO  = SPL_BONESPIRIT,
2010 	SPL_MANA        = 0x25,
2011 	SPL_MAGI        = 0x26,
2012 	SPL_JESTER      = 0x27,
2013 	SPL_LIGHTWALL   = 0x28,
2014 	SPL_IMMOLAT     = 0x29,
2015 	SPL_WARP        = 0x2A,
2016 	SPL_REFLECT     = 0x2B,
2017 	SPL_BERSERK     = 0x2C,
2018 	SPL_FIRERING    = 0x2D,
2019 	SPL_SEARCH      = 0x2E,
2020 	SPL_RUNEFIRE    = 0x2F,
2021 	SPL_RUNELIGHT   = 0x30,
2022 	SPL_RUNENOVA    = 0x31,
2023 	SPL_RUNEIMMOLAT = 0x32,
2024 	SPL_RUNESTONE   = 0x33,
2025 	SPL_INVALID     = -1,
2026 } spell_id;
2027 
2028 typedef enum _cmd_id {
2029 	CMD_STAND,
2030 	CMD_WALKXY,
2031 	CMD_ACK_PLRINFO,
2032 	CMD_ADDSTR,
2033 	CMD_ADDMAG,
2034 	CMD_ADDDEX,
2035 	CMD_ADDVIT,
2036 	CMD_SBSPELL,
2037 	CMD_GETITEM,
2038 	CMD_AGETITEM,
2039 	CMD_PUTITEM,
2040 	CMD_RESPAWNITEM,
2041 	CMD_ATTACKXY,
2042 	CMD_RATTACKXY,
2043 	CMD_SPELLXY,
2044 	CMD_TSPELLXY,
2045 	CMD_OPOBJXY,
2046 	CMD_DISARMXY,
2047 	CMD_ATTACKID,
2048 	CMD_ATTACKPID,
2049 	CMD_RATTACKID,
2050 	CMD_RATTACKPID,
2051 	CMD_SPELLID,
2052 	CMD_SPELLPID,
2053 	CMD_TSPELLID,
2054 	CMD_TSPELLPID,
2055 	CMD_RESURRECT,
2056 	CMD_OPOBJT,
2057 	CMD_KNOCKBACK,
2058 	CMD_TALKXY,
2059 	CMD_NEWLVL,
2060 	CMD_WARP,
2061 	CMD_CHEAT_EXPERIENCE,
2062 	CMD_CHEAT_SPELL_LEVEL,
2063 	CMD_DEBUG,
2064 	CMD_SYNCDATA,
2065 	CMD_MONSTDEATH,
2066 	CMD_MONSTDAMAGE,
2067 	CMD_PLRDEAD,
2068 	CMD_REQUESTGITEM,
2069 	CMD_REQUESTAGITEM,
2070 	CMD_GOTOGETITEM,
2071 	CMD_GOTOAGETITEM,
2072 	CMD_OPENDOOR,
2073 	CMD_CLOSEDOOR,
2074 	CMD_OPERATEOBJ,
2075 	CMD_PLROPOBJ,
2076 	CMD_BREAKOBJ,
2077 	CMD_CHANGEPLRITEMS,
2078 	CMD_DELPLRITEMS,
2079 	CMD_PLRDAMAGE,
2080 	CMD_PLRLEVEL,
2081 	CMD_DROPITEM,
2082 	CMD_PLAYER_JOINLEVEL,
2083 	CMD_SEND_PLRINFO,
2084 	CMD_SATTACKXY,
2085 	CMD_ACTIVATEPORTAL,
2086 	CMD_DEACTIVATEPORTAL,
2087 	CMD_DLEVEL_0,
2088 	CMD_DLEVEL_1,
2089 	CMD_DLEVEL_2,
2090 	CMD_DLEVEL_3,
2091 	CMD_DLEVEL_4,
2092 	CMD_DLEVEL_5,
2093 	CMD_DLEVEL_6,
2094 	CMD_DLEVEL_7,
2095 	CMD_DLEVEL_8,
2096 	CMD_DLEVEL_9,
2097 	CMD_DLEVEL_10,
2098 	CMD_DLEVEL_11,
2099 	CMD_DLEVEL_12,
2100 	CMD_DLEVEL_13,
2101 	CMD_DLEVEL_14,
2102 	CMD_DLEVEL_15,
2103 	CMD_DLEVEL_16,
2104 	CMD_DLEVEL_17,
2105 	CMD_DLEVEL_18,
2106 	CMD_DLEVEL_19,
2107 	CMD_DLEVEL_20,
2108 	CMD_DLEVEL_21,
2109 	CMD_DLEVEL_22,
2110 	CMD_DLEVEL_23,
2111 	CMD_DLEVEL_24,
2112 	CMD_DLEVEL_JUNK,
2113 	CMD_DLEVEL_END,
2114 	CMD_HEALOTHER,
2115 	CMD_STRING,
2116 	CMD_SETSTR,
2117 	CMD_SETMAG,
2118 	CMD_SETDEX,
2119 	CMD_SETVIT,
2120 	CMD_RETOWN,
2121 	CMD_SPELLXYD,
2122 	CMD_ITEMEXTRA,
2123 	CMD_SYNCPUTITEM,
2124 	CMD_KILLGOLEM,
2125 	CMD_SYNCQUEST,
2126 	CMD_ENDSHIELD,
2127 	CMD_AWAKEGOLEM,
2128 	CMD_NOVA,
2129 	CMD_SETSHIELD,
2130 	CMD_REMSHIELD,
2131 	CMD_REFLECT,
2132 	CMD_NAKRUL,
2133 	CMD_OPENHIVE,
2134 	CMD_OPENCRYPT,
2135 	FAKE_CMD_SETID,
2136 	FAKE_CMD_DROPID,
2137 	NUM_CMDS,
2138 } _cmd_id;
2139 
2140 typedef enum _music_id {
2141 	TMUSIC_TOWN,
2142 	TMUSIC_L1,
2143 	TMUSIC_L2,
2144 	TMUSIC_L3,
2145 	TMUSIC_L4,
2146 	TMUSIC_L5,
2147 	TMUSIC_L6,
2148 	TMUSIC_INTRO,
2149 	NUM_MUSIC,
2150 } _music_id;
2151 
2152 typedef enum _mainmenu_selections {
2153 	MAINMENU_SINGLE_PLAYER = 1,
2154 	MAINMENU_MULTIPLAYER,
2155 	MAINMENU_REPLAY_INTRO,
2156 	MAINMENU_SHOW_SUPPORT,
2157 	MAINMENU_SHOW_CREDITS,
2158 	MAINMENU_EXIT_DIABLO,
2159 	MAINMENU_ATTRACT_MODE,
2160 } _mainmenu_selections;
2161 
2162 typedef enum _selhero_selections {
2163 	SELHERO_NEW_DUNGEON = 1,
2164 	SELHERO_CONTINUE    = 2,
2165 	SELHERO_CONNECT     = 3,
2166 	SELHERO_PREVIOUS    = 4
2167 } _selhero_selections;
2168 
2169 typedef enum panel_button_id {
2170 	PANBTN_CHARINFO  = 0,
2171 	PANBTN_QLOG      = 1,
2172 	PANBTN_AUTOMAP   = 2,
2173 	PANBTN_MAINMENU  = 3,
2174 	PANBTN_INVENTORY = 4,
2175 	PANBTN_SPELLBOOK = 5,
2176 	PANBTN_SENDMSG   = 6,
2177 	PANBTN_FRIENDLY  = 7,
2178 } panel_button_id;
2179 
2180 typedef enum attribute_id {
2181 	ATTRIB_STR = 0,
2182 	ATTRIB_MAG = 1,
2183 	ATTRIB_DEX = 2,
2184 	ATTRIB_VIT = 3,
2185 } attribute_id;
2186 
2187 typedef enum _object_id {
2188 	OBJ_L1LIGHT      = 0x0,
2189 	OBJ_L1LDOOR      = 0x1,
2190 	OBJ_L1RDOOR      = 0x2,
2191 	OBJ_SKFIRE       = 0x3,
2192 	OBJ_LEVER        = 0x4,
2193 	OBJ_CHEST1       = 0x5,
2194 	OBJ_CHEST2       = 0x6,
2195 	OBJ_CHEST3       = 0x7,
2196 	OBJ_CANDLE1      = 0x8,
2197 	OBJ_CANDLE2      = 0x9,
2198 	OBJ_CANDLEO      = 0xA,
2199 	OBJ_BANNERL      = 0xB,
2200 	OBJ_BANNERM      = 0xC,
2201 	OBJ_BANNERR      = 0xD,
2202 	OBJ_SKPILE       = 0xE,
2203 	OBJ_SKSTICK1     = 0xF,
2204 	OBJ_SKSTICK2     = 0x10,
2205 	OBJ_SKSTICK3     = 0x11,
2206 	OBJ_SKSTICK4     = 0x12,
2207 	OBJ_SKSTICK5     = 0x13,
2208 	OBJ_CRUX1        = 0x14,
2209 	OBJ_CRUX2        = 0x15,
2210 	OBJ_CRUX3        = 0x16,
2211 	OBJ_STAND        = 0x17,
2212 	OBJ_ANGEL        = 0x18,
2213 	OBJ_BOOK2L       = 0x19,
2214 	OBJ_BCROSS       = 0x1A,
2215 	OBJ_NUDEW2R      = 0x1B,
2216 	OBJ_SWITCHSKL    = 0x1C,
2217 	OBJ_TNUDEM1      = 0x1D,
2218 	OBJ_TNUDEM2      = 0x1E,
2219 	OBJ_TNUDEM3      = 0x1F,
2220 	OBJ_TNUDEM4      = 0x20,
2221 	OBJ_TNUDEW1      = 0x21,
2222 	OBJ_TNUDEW2      = 0x22,
2223 	OBJ_TNUDEW3      = 0x23,
2224 	OBJ_TORTURE1     = 0x24,
2225 	OBJ_TORTURE2     = 0x25,
2226 	OBJ_TORTURE3     = 0x26,
2227 	OBJ_TORTURE4     = 0x27,
2228 	OBJ_TORTURE5     = 0x28,
2229 	OBJ_BOOK2R       = 0x29,
2230 	OBJ_L2LDOOR      = 0x2A,
2231 	OBJ_L2RDOOR      = 0x2B,
2232 	OBJ_TORCHL       = 0x2C,
2233 	OBJ_TORCHR       = 0x2D,
2234 	OBJ_TORCHL2      = 0x2E,
2235 	OBJ_TORCHR2      = 0x2F,
2236 	OBJ_SARC         = 0x30,
2237 	OBJ_FLAMEHOLE    = 0x31,
2238 	OBJ_FLAMELVR     = 0x32,
2239 	OBJ_WATER        = 0x33,
2240 	OBJ_BOOKLVR      = 0x34,
2241 	OBJ_TRAPL        = 0x35,
2242 	OBJ_TRAPR        = 0x36,
2243 	OBJ_BOOKSHELF    = 0x37,
2244 	OBJ_WEAPRACK     = 0x38,
2245 	OBJ_BARREL       = 0x39,
2246 	OBJ_BARRELEX     = 0x3A,
2247 	OBJ_SHRINEL      = 0x3B,
2248 	OBJ_SHRINER      = 0x3C,
2249 	OBJ_SKELBOOK     = 0x3D,
2250 	OBJ_BOOKCASEL    = 0x3E,
2251 	OBJ_BOOKCASER    = 0x3F,
2252 	OBJ_BOOKSTAND    = 0x40,
2253 	OBJ_BOOKCANDLE   = 0x41,
2254 	OBJ_BLOODFTN     = 0x42,
2255 	OBJ_DECAP        = 0x43,
2256 	OBJ_TCHEST1      = 0x44,
2257 	OBJ_TCHEST2      = 0x45,
2258 	OBJ_TCHEST3      = 0x46,
2259 	OBJ_BLINDBOOK    = 0x47,
2260 	OBJ_BLOODBOOK    = 0x48,
2261 	OBJ_PEDISTAL     = 0x49,
2262 	OBJ_L3LDOOR      = 0x4A,
2263 	OBJ_L3RDOOR      = 0x4B,
2264 	OBJ_PURIFYINGFTN = 0x4C,
2265 	OBJ_ARMORSTAND   = 0x4D,
2266 	OBJ_ARMORSTANDN  = 0x4E,
2267 	OBJ_GOATSHRINE   = 0x4F,
2268 	OBJ_CAULDRON     = 0x50,
2269 	OBJ_MURKYFTN     = 0x51,
2270 	OBJ_TEARFTN      = 0x52,
2271 	OBJ_ALTBOY       = 0x53,
2272 	OBJ_MCIRCLE1     = 0x54,
2273 	OBJ_MCIRCLE2     = 0x55,
2274 	OBJ_STORYBOOK    = 0x56,
2275 	OBJ_STORYCANDLE  = 0x57,
2276 	OBJ_STEELTOME    = 0x58,
2277 	OBJ_WARARMOR     = 0x59,
2278 	OBJ_WARWEAP      = 0x5A,
2279 	OBJ_TBCROSS      = 0x5B,
2280 	OBJ_WEAPONRACK   = 0x5C,
2281 	OBJ_WEAPONRACKN  = 0x5D,
2282 	OBJ_MUSHPATCH    = 0x5E,
2283 	OBJ_LAZSTAND     = 0x5F,
2284 	OBJ_SLAINHERO    = 0x60,
2285 	OBJ_SIGNCHEST    = 0x61,
2286 	OBJ_BOOKSHELFR   = 0x62,
2287 } _object_id;
2288 
2289 typedef enum _item_indexes {
2290 	IDI_GOLD,
2291 	IDI_WARRIOR,
2292 	IDI_WARRSHLD,
2293 	IDI_WARRCLUB,
2294 	IDI_ROGUE,
2295 	IDI_SORCERER,
2296 	IDI_CLEAVER,
2297 	IDI_FIRSTQUEST = IDI_CLEAVER,
2298 	IDI_SKCROWN,
2299 	IDI_INFRARING,
2300 	IDI_ROCK,
2301 	IDI_OPTAMULET,
2302 	IDI_TRING,
2303 	IDI_BANNER,
2304 	IDI_HARCREST,
2305 	IDI_STEELVEIL,
2306 	IDI_GLDNELIX,
2307 	IDI_ANVIL,
2308 	IDI_MUSHROOM,
2309 	IDI_BRAIN,
2310 	IDI_FUNGALTM,
2311 	IDI_SPECELIX,
2312 	IDI_BLDSTONE,
2313 	IDI_MAPOFDOOM,
2314 	IDI_LASTQUEST = IDI_MAPOFDOOM,
2315 	IDI_EAR,
2316 	IDI_HEAL,
2317 	IDI_MANA,
2318 	IDI_IDENTIFY,
2319 	IDI_PORTAL,
2320 	IDI_ARMOFVAL,
2321 	IDI_FULLHEAL,
2322 	IDI_FULLMANA,
2323 	IDI_GRISWOLD,
2324 	IDI_LGTFORGE,
2325 	IDI_LAZSTAFF,
2326 	IDI_RESURRECT,
2327 	IDI_OIL,
2328 	IDI_SHORTSTAFF,
2329 	IDI_BARDSWORD,
2330 	IDI_BARDDAGGER,
2331 	IDI_RUNEBOMB,
2332 	IDI_THEODORE,
2333 	IDI_AURIC,
2334 	IDI_NOTE1,
2335 	IDI_NOTE2,
2336 	IDI_NOTE3,
2337 	IDI_FULLNOTE,
2338 	IDI_BROWNSUIT,
2339 	IDI_GREYSUIT,
2340 } _item_indexes;
2341 
2342 typedef enum _setlevels {
2343 	//SL_BUTCHCHAMB = 0x0,
2344 	SL_SKELKING     = 0x1,
2345 	SL_BONECHAMB    = 0x2,
2346 	SL_MAZE         = 0x3,
2347 	SL_POISONWATER  = 0x4,
2348 	SL_VILEBETRAYER = 0x5,
2349 } _setlevels;
2350 
2351 typedef enum quest_id {
2352 	Q_ROCK     = 0x00,
2353 	Q_MUSHROOM = 0x01,
2354 	Q_GARBUD   = 0x02,
2355 	Q_ZHAR     = 0x03,
2356 	Q_VEIL     = 0x04,
2357 	Q_DIABLO   = 0x05,
2358 	Q_BUTCHER  = 0x06,
2359 	Q_LTBANNER = 0x07,
2360 	Q_BLIND    = 0x08,
2361 	Q_BLOOD    = 0x09,
2362 	Q_ANVIL    = 0x0A,
2363 	Q_WARLORD  = 0x0B,
2364 	Q_SKELKING = 0x0C,
2365 	Q_PWATER   = 0x0D,
2366 	Q_SCHAMB   = 0x0E,
2367 	Q_BETRAYER = 0x0F,
2368 	Q_GRAVE    = 0x10,
2369 	Q_FARMER   = 0x11,
2370 	Q_GIRL     = 0x12,
2371 	Q_TRADER   = 0x13,
2372 	Q_DEFILER  = 0x14,
2373 	Q_NAKRUL   = 0x15,
2374 	Q_CORNSTN  = 0x16,
2375 	Q_JERSEY   = 0x17,
2376 	Q_INVALID  = -1,
2377 } quest_id;
2378 
2379 typedef enum quest_state {
2380 	QUEST_NOTAVAIL = 0, // quest did not spawn this game
2381 	QUEST_INIT     = 1, // quest has spawned, waiting to trigger
2382 	QUEST_ACTIVE   = 2, // quest is currently in progress
2383 	QUEST_DONE     = 3  // quest log closed and finished
2384 } quest_state;
2385 
2386 typedef enum quest_gametype {
2387 	QUEST_SINGLE = 0,
2388 	QUEST_ANY    = 1,
2389 	QUEST_MULTI  = 2,
2390 } quest_gametype;
2391 
2392 typedef enum quest_mush_state {
2393 	QS_INIT         = 0,
2394 	QS_TOMESPAWNED  = 1,
2395 	QS_TOMEGIVEN    = 2,
2396 	QS_MUSHSPAWNED  = 3,
2397 	QS_MUSHPICKED   = 4,
2398 	QS_MUSHGIVEN    = 5,
2399 	QS_BRAINSPAWNED = 6,
2400 	QS_BRAINGIVEN   = 7,
2401 } quest_mush_state;
2402 
2403 typedef enum _unique_items {
2404 	UITEM_CLEAVER      = 0x0,
2405 	UITEM_SKCROWN      = 0x1,
2406 	UITEM_INFRARING    = 0x2,
2407 	UITEM_OPTAMULET    = 0x3,
2408 	UITEM_TRING        = 0x4,
2409 	UITEM_HARCREST     = 0x5,
2410 	UITEM_STEELVEIL    = 0x6,
2411 	UITEM_ARMOFVAL     = 0x7,
2412 	UITEM_GRISWOLD     = 0x8,
2413 	UITEM_BOVINE       = 0x9,
2414 	UITEM_RIFTBOW      = 0xA,
2415 	UITEM_NEEDLER      = 0xB,
2416 	UITEM_CELESTBOW    = 0xC,
2417 	UITEM_DEADLYHUNT   = 0xD,
2418 	UITEM_BOWOFDEAD    = 0xE,
2419 	UITEM_BLKOAKBOW    = 0xF,
2420 	UITEM_FLAMEDART    = 0x10,
2421 	UITEM_FLESHSTING   = 0x11,
2422 	UITEM_WINDFORCE    = 0x12,
2423 	UITEM_EAGLEHORN    = 0x13,
2424 	UITEM_GONNAGALDIRK = 0x14,
2425 	UITEM_DEFENDER     = 0x15,
2426 	UITEM_GRYPHONCLAW  = 0x16,
2427 	UITEM_BLACKRAZOR   = 0x17,
2428 	UITEM_GIBBOUSMOON  = 0x18,
2429 	UITEM_ICESHANK     = 0x19,
2430 	UITEM_EXECUTIONER  = 0x1A,
2431 	UITEM_BONESAW      = 0x1B,
2432 	UITEM_SHADHAWK     = 0x1C,
2433 	UITEM_WIZSPIKE     = 0x1D,
2434 	UITEM_LGTSABRE     = 0x1E,
2435 	UITEM_FALCONTALON  = 0x1F,
2436 	UITEM_INFERNO      = 0x20,
2437 	UITEM_DOOMBRINGER  = 0x21,
2438 	UITEM_GRIZZLY      = 0x22,
2439 	UITEM_GRANDFATHER  = 0x23,
2440 	UITEM_MANGLER      = 0x24,
2441 	UITEM_SHARPBEAK    = 0x25,
2442 	UITEM_BLOODLSLAYER = 0x26,
2443 	UITEM_CELESTAXE    = 0x27,
2444 	UITEM_WICKEDAXE    = 0x28,
2445 	UITEM_STONECLEAV   = 0x29,
2446 	UITEM_AGUHATCHET   = 0x2A,
2447 	UITEM_HELLSLAYER   = 0x2B,
2448 	UITEM_MESSERREAVER = 0x2C,
2449 	UITEM_CRACKRUST    = 0x2D,
2450 	UITEM_JHOLMHAMM    = 0x2E,
2451 	UITEM_CIVERBS      = 0x2F,
2452 	UITEM_CELESTSTAR   = 0x30,
2453 	UITEM_BARANSTAR    = 0x31,
2454 	UITEM_GNARLROOT    = 0x32,
2455 	UITEM_CRANBASH     = 0x33,
2456 	UITEM_SCHAEFHAMM   = 0x34,
2457 	UITEM_DREAMFLANGE  = 0x35,
2458 	UITEM_STAFFOFSHAD  = 0x36,
2459 	UITEM_IMMOLATOR    = 0x37,
2460 	UITEM_STORMSPIRE   = 0x38,
2461 	UITEM_GLEAMSONG    = 0x39,
2462 	UITEM_THUNDERCALL  = 0x3A,
2463 	UITEM_PROTECTOR    = 0x3B,
2464 	UITEM_NAJPUZZLE    = 0x3C,
2465 	UITEM_MINDCRY      = 0x3D,
2466 	UITEM_RODOFONAN    = 0x3E,
2467 	UITEM_SPIRITSHELM  = 0x3F,
2468 	UITEM_THINKINGCAP  = 0x40,
2469 	UITEM_OVERLORDHELM = 0x41,
2470 	UITEM_FOOLSCREST   = 0x42,
2471 	UITEM_GOTTERDAM    = 0x43,
2472 	UITEM_ROYCIRCLET   = 0x44,
2473 	UITEM_TORNFLESH    = 0x45,
2474 	UITEM_GLADBANE     = 0x46,
2475 	UITEM_RAINCLOAK    = 0x47,
2476 	UITEM_LEATHAUT     = 0x48,
2477 	UITEM_WISDWRAP     = 0x49,
2478 	UITEM_SPARKMAIL    = 0x4A,
2479 	UITEM_SCAVCARAP    = 0x4B,
2480 	UITEM_NIGHTSCAPE   = 0x4C,
2481 	UITEM_NAJPLATE     = 0x4D,
2482 	UITEM_DEMONSPIKE   = 0x4E,
2483 	UITEM_DEFLECTOR    = 0x4F,
2484 	UITEM_SKULLSHLD    = 0x50,
2485 	UITEM_DRAGONBRCH   = 0x51,
2486 	UITEM_BLKOAKSHLD   = 0x52,
2487 	UITEM_HOLYDEF      = 0x53,
2488 	UITEM_STORMSHLD    = 0x54,
2489 	UITEM_BRAMBLE      = 0x55,
2490 	UITEM_REGHA        = 0x56,
2491 	UITEM_BLEEDER      = 0x57,
2492 	UITEM_CONSTRICT    = 0x58,
2493 	UITEM_ENGAGE       = 0x59,
2494 	UITEM_INVALID      = 0x5A,
2495 } _unique_items;
2496 
2497 typedef enum plr_class {
2498 	PC_WARRIOR,
2499 	PC_ROGUE,
2500 	PC_SORCERER,
2501 	PC_MONK,
2502 	PC_BARD,
2503 	PC_BARBARIAN,
2504 	NUM_CLASSES
2505 } plr_class;
2506 
2507 typedef enum _walk_path {
2508 	WALK_NE   = 0x1,
2509 	WALK_NW   = 0x2,
2510 	WALK_SE   = 0x3,
2511 	WALK_SW   = 0x4,
2512 	WALK_N    = 0x5,
2513 	WALK_E    = 0x6,
2514 	WALK_S    = 0x7,
2515 	WALK_W    = 0x8,
2516 	WALK_NONE = -1,
2517 } _walk_path;
2518 
2519 // Logical equipment locations
2520 typedef enum inv_body_loc {
2521 	INVLOC_HEAD       = 0,
2522 	INVLOC_RING_LEFT  = 1,
2523 	INVLOC_RING_RIGHT = 2,
2524 	INVLOC_AMULET     = 3,
2525 	INVLOC_HAND_LEFT  = 4,
2526 	INVLOC_HAND_RIGHT = 5,
2527 	INVLOC_CHEST      = 6,
2528 	NUM_INVLOC,
2529 } inv_body_loc;
2530 
2531 typedef enum inv_item {
2532 	INVITEM_HEAD       = 0,
2533 	INVITEM_RING_LEFT  = 1,
2534 	INVITEM_RING_RIGHT = 2,
2535 	INVITEM_AMULET     = 3,
2536 	INVITEM_HAND_LEFT  = 4,
2537 	INVITEM_HAND_RIGHT = 5,
2538 	INVITEM_CHEST      = 6,
2539 	INVITEM_INV_FIRST  = 7,
2540 	INVITEM_INV_LAST   = 46,
2541 	INVITEM_BELT_FIRST = 47,
2542 	INVITEM_BELT_LAST  = 54,
2543 	NUM_INVELEM
2544 } inv_item;
2545 
2546 // identifiers for each of the inventory squares
2547 // see https://github.com/sanctuary/graphics/blob/master/inventory.png
2548 typedef enum inv_xy_slot {
2549 	SLOTXY_HEAD_FIRST       = 0,
2550 	SLOTXY_HEAD_LAST        = 3,
2551 	SLOTXY_RING_LEFT        = 4,
2552 	SLOTXY_RING_RIGHT       = 5,
2553 	SLOTXY_AMULET           = 6,
2554 	SLOTXY_HAND_LEFT_FIRST  = 7,
2555 	SLOTXY_HAND_LEFT_LAST   = 12,
2556 	SLOTXY_HAND_RIGHT_FIRST = 13,
2557 	SLOTXY_HAND_RIGHT_LAST  = 18,
2558 	SLOTXY_CHEST_FIRST      = 19,
2559 	SLOTXY_CHEST_LAST       = 24,
2560 
2561 	// regular inventory
2562 	SLOTXY_INV_FIRST = 25,
2563 	SLOTXY_INV_LAST  = 64,
2564 
2565 	// belt items
2566 	SLOTXY_BELT_FIRST = 65,
2567 	SLOTXY_BELT_LAST  = 72,
2568 	NUM_XY_SLOTS      = 73
2569 } inv_xy_slot;
2570 
2571 typedef enum player_graphic {
2572 	PFILE_STAND     = 1 << 0,
2573 	PFILE_WALK      = 1 << 1,
2574 	PFILE_ATTACK    = 1 << 2,
2575 	PFILE_HIT       = 1 << 3,
2576 	PFILE_LIGHTNING = 1 << 4,
2577 	PFILE_FIRE      = 1 << 5,
2578 	PFILE_MAGIC     = 1 << 6,
2579 	PFILE_DEATH     = 1 << 7,
2580 	PFILE_BLOCK     = 1 << 8,
2581 	// everything except PFILE_DEATH
2582 	// 0b1_0111_1111
2583 	PFILE_NONDEATH = 0x17F
2584 } player_graphic;
2585 
2586 typedef enum anim_weapon_id {
2587 	ANIM_ID_UNARMED        = 0x00,
2588 	ANIM_ID_UNARMED_SHIELD = 0x01,
2589 	ANIM_ID_SWORD          = 0x02,
2590 	ANIM_ID_SWORD_SHIELD   = 0x03,
2591 	ANIM_ID_BOW            = 0x04,
2592 	ANIM_ID_AXE            = 0x05,
2593 	ANIM_ID_MACE           = 0x06,
2594 	ANIM_ID_MACE_SHIELD    = 0x07,
2595 	ANIM_ID_STAFF          = 0x08
2596 } anim_weapon_id;
2597 
2598 typedef enum anim_armor_id {
2599 	ANIM_ID_LIGHT_ARMOR  = 0x00,
2600 	ANIM_ID_MEDIUM_ARMOR = 0x10,
2601 	ANIM_ID_HEAVY_ARMOR  = 0x20
2602 } anim_armor_id;
2603 
2604 typedef enum shrine_gametype {
2605 	SHRINETYPE_ANY    = 0,
2606 	SHRINETYPE_SINGLE = 1,
2607 	SHRINETYPE_MULTI  = 2,
2608 } shrine_gametype;
2609 
2610 typedef enum shrine_type {
2611 	SHRINE_MYSTERIOUS   = 0,
2612 	SHRINE_HIDDEN       = 1,
2613 	SHRINE_GLOOMY       = 2,
2614 	SHRINE_WEIRD        = 3,
2615 	SHRINE_MAGICAL      = 4,
2616 	SHRINE_STONE        = 5,
2617 	SHRINE_RELIGIOUS    = 6,
2618 	SHRINE_ENCHANTED    = 7,
2619 	SHRINE_THAUMATURGIC = 8,
2620 	SHRINE_FASCINATING  = 9,
2621 	SHRINE_CRYPTIC      = 10,
2622 	SHRINE_MAGICAL2     = 11,
2623 	SHRINE_ELDRITCH     = 12,
2624 	SHRINE_EERIE        = 13,
2625 	SHRINE_DIVINE       = 14,
2626 	SHRINE_HOLY         = 15,
2627 	SHRINE_SACRED       = 16,
2628 	SHRINE_SPIRITUAL    = 17,
2629 	SHRINE_SPOOKY       = 18,
2630 	SHRINE_ABANDONED    = 19,
2631 	SHRINE_CREEPY       = 20,
2632 	SHRINE_QUIET        = 21,
2633 	SHRINE_SECLUDED     = 22,
2634 	SHRINE_ORNATE       = 23,
2635 	SHRINE_GLIMMERING   = 24,
2636 	SHRINE_TAINTED      = 25,
2637 	SHRINE_OILY         = 26,
2638 	SHRINE_GLOWING      = 27,
2639 	SHRINE_MENDICANT    = 28,
2640 	SHRINE_SPARKLING    = 29,
2641 	SHRINE_TOWN         = 30,
2642 	SHRINE_SHIMMERING   = 31,
2643 	SHRINE_SOLAR        = 32,
2644 	SHRINE_MURPHYS      = 33,
2645 	NUM_SHRINETYPE
2646 } shrine_type;
2647 
2648 typedef enum dlrg_flag {
2649 	DLRG_HDOOR     = 0x01,
2650 	DLRG_VDOOR     = 0x02,
2651 	DLRG_CHAMBER   = 0x40,
2652 	DLRG_PROTECTED = 0x80,
2653 } dlrg_flag;
2654 
2655 typedef enum conn_type {
2656 	SELCONN_TCP,
2657 	SELCONN_UDP,
2658 	SELCONN_LOOPBACK,
2659 } conn_type;
2660 
2661 DEVILUTION_END_NAMESPACE
2662