X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fmonster-hook.h;h=bc87a6deb37b1f25d7699ac789f75611cd68f042;hb=ef5fc5bd6d0b59af4087c2b1f741e8f24860604d;hp=dc3838d595bd7ff62865415e8984d4e2a05d79ff;hpb=d844d39e90aa43a6eb6951d346d1737c75f19fe3;p=hengband%2Fhengband.git diff --git a/src/monster-hook.h b/src/monster-hook.h index dc3838d59..bc87a6deb 100644 --- a/src/monster-hook.h +++ b/src/monster-hook.h @@ -1,4 +1,22 @@  +/*! +* vaultに配置可能なモンスターの条件を指定するマクロ / Monster validation macro +* +* Line 1 -- forbid town monsters +* Line 2 -- forbid uniques +* Line 3 -- forbid aquatic monsters +*/ +#define vault_monster_okay(I) \ + (mon_hook_dungeon(I) && \ + !(r_info[I].flags1 & RF1_UNIQUE) && \ + !(r_info[I].flags7 & RF7_UNIQUE2) && \ + !(r_info[I].flagsr & RFR_RES_ALL) && \ + !(r_info[I].flags7 & RF7_AQUATIC)) + +extern int vault_aux_race; +extern char vault_aux_char; +extern BIT_FLAGS vault_aux_dragon_mask4; + extern bool mon_hook_quest(MONRACE_IDX r_idx); extern bool mon_hook_dungeon(MONRACE_IDX r_idx); extern bool mon_hook_ocean(MONRACE_IDX r_idx); @@ -16,4 +34,29 @@ extern bool mon_hook_shallow_water(MONRACE_IDX r_idx); extern bool mon_hook_lava(MONRACE_IDX r_idx); extern bool mon_hook_floor(MONRACE_IDX r_idx); +extern void vault_prep_clone(void); +extern void vault_prep_dragon(void); +extern void vault_prep_symbol(void); + +extern bool vault_aux_lite(MONRACE_IDX r_idx); +extern bool vault_aux_shards(MONRACE_IDX r_idx); +extern bool vault_aux_simple(MONRACE_IDX r_idx); +extern bool vault_aux_jelly(MONRACE_IDX r_idx); +extern bool vault_aux_animal(MONRACE_IDX r_idx); +extern bool vault_aux_undead(MONRACE_IDX r_idx); +extern bool vault_aux_chapel_g(MONRACE_IDX r_idx); +extern bool vault_aux_kennel(MONRACE_IDX r_idx); +extern bool vault_aux_mimic(MONRACE_IDX r_idx); +extern bool vault_aux_clone(MONRACE_IDX r_idx); +extern bool vault_aux_symbol_e(MONRACE_IDX r_idx); +extern bool vault_aux_symbol_g(MONRACE_IDX r_idx); +extern bool vault_aux_orc(MONRACE_IDX r_idx); +extern bool vault_aux_troll(MONRACE_IDX r_idx); +extern bool vault_aux_giant(MONRACE_IDX r_idx); +extern bool vault_aux_dragon(MONRACE_IDX r_idx); +extern bool vault_aux_demon(MONRACE_IDX r_idx); +extern bool vault_aux_cthulhu(MONRACE_IDX r_idx); +extern bool vault_aux_dark_elf(MONRACE_IDX r_idx); +extern bool monster_living(monster_race *r_ptr); +extern bool no_questor_or_bounty_uniques(MONRACE_IDX r_idx);