OSDN Git Service

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