3 * vaultに配置可能なモンスターの条件を指定するマクロ / Monster validation macro
\r
5 * Line 1 -- forbid town monsters
\r
6 * Line 2 -- forbid uniques
\r
7 * Line 3 -- forbid aquatic monsters
\r
9 #define vault_monster_okay(I) \
\r
10 (mon_hook_dungeon(I) && \
\r
11 !(r_info[I].flags1 & RF1_UNIQUE) && \
\r
12 !(r_info[I].flags7 & RF7_UNIQUE2) && \
\r
13 !(r_info[I].flagsr & RFR_RES_ALL) && \
\r
14 !(r_info[I].flags7 & RF7_AQUATIC))
\r
16 extern int vault_aux_race;
\r
17 extern char vault_aux_char;
\r
18 extern BIT_FLAGS vault_aux_dragon_mask4;
\r
20 extern bool mon_hook_quest(MONRACE_IDX r_idx);
\r
21 extern bool mon_hook_dungeon(MONRACE_IDX r_idx);
\r
22 extern bool mon_hook_ocean(MONRACE_IDX r_idx);
\r
23 extern bool mon_hook_shore(MONRACE_IDX r_idx);
\r
24 extern bool mon_hook_waste(MONRACE_IDX r_idx);
\r
25 extern bool mon_hook_town(MONRACE_IDX r_idx);
\r
26 extern bool mon_hook_wood(MONRACE_IDX r_idx);
\r
27 extern bool mon_hook_volcano(MONRACE_IDX r_idx);
\r
28 extern bool mon_hook_wood(MONRACE_IDX r_idx);
\r
29 extern bool mon_hook_volcano(MONRACE_IDX r_idx);
\r
30 extern bool mon_hook_mountain(MONRACE_IDX r_idx);
\r
31 extern bool mon_hook_grass(MONRACE_IDX r_idx);
\r
32 extern bool mon_hook_deep_water(MONRACE_IDX r_idx);
\r
33 extern bool mon_hook_shallow_water(MONRACE_IDX r_idx);
\r
34 extern bool mon_hook_lava(MONRACE_IDX r_idx);
\r
35 extern bool mon_hook_floor(MONRACE_IDX r_idx);
\r
37 extern void vault_prep_clone(void);
\r
38 extern void vault_prep_dragon(void);
\r
39 extern void vault_prep_symbol(void);
\r
41 extern bool vault_aux_lite(MONRACE_IDX r_idx);
\r
42 extern bool vault_aux_shards(MONRACE_IDX r_idx);
\r
43 extern bool vault_aux_simple(MONRACE_IDX r_idx);
\r
44 extern bool vault_aux_jelly(MONRACE_IDX r_idx);
\r
45 extern bool vault_aux_animal(MONRACE_IDX r_idx);
\r
46 extern bool vault_aux_undead(MONRACE_IDX r_idx);
\r
47 extern bool vault_aux_chapel_g(MONRACE_IDX r_idx);
\r
48 extern bool vault_aux_kennel(MONRACE_IDX r_idx);
\r
49 extern bool vault_aux_mimic(MONRACE_IDX r_idx);
\r
50 extern bool vault_aux_clone(MONRACE_IDX r_idx);
\r
51 extern bool vault_aux_symbol_e(MONRACE_IDX r_idx);
\r
52 extern bool vault_aux_symbol_g(MONRACE_IDX r_idx);
\r
53 extern bool vault_aux_orc(MONRACE_IDX r_idx);
\r
54 extern bool vault_aux_troll(MONRACE_IDX r_idx);
\r
55 extern bool vault_aux_giant(MONRACE_IDX r_idx);
\r
56 extern bool vault_aux_dragon(MONRACE_IDX r_idx);
\r
57 extern bool vault_aux_demon(MONRACE_IDX r_idx);
\r
58 extern bool vault_aux_cthulhu(MONRACE_IDX r_idx);
\r
59 extern bool vault_aux_dark_elf(MONRACE_IDX r_idx);
\r
61 extern bool monster_living(MONRACE_IDX r_idx);
\r
62 extern bool no_questor_or_bounty_uniques(MONRACE_IDX r_idx);
\r
63 extern bool monster_hook_human(MONRACE_IDX r_idx);
\r