3 #include "system/angband.h"
5 #define NUM_NEST_MON_TYPE 64 /*!<nestの種別数 */
6 #define TRAPPED_PIT_MONSTER_PLACE_MAX 69
8 enum class MonsterRaceId : int16_t;
10 /*! nestのID定義 / Nest types code */
11 enum nest_type : int {
14 NEST_TYPE_SYMBOL_GOOD = 2,
15 NEST_TYPE_SYMBOL_EVIL = 3,
17 NEST_TYPE_LOVECRAFTIAN = 5,
24 /*! pitのID定義 / Pit types code */
29 PIT_TYPE_LOVECRAFTIAN = 3,
30 PIT_TYPE_SYMBOL_GOOD = 4,
31 PIT_TYPE_SYMBOL_EVIL = 5,
35 PIT_TYPE_DARK_ELF = 9,
38 /*! pit/nest型情報の構造体定義 */
40 struct nest_pit_type {
41 concptr name; //<! 部屋名
42 bool (*hook_func)(PlayerType *player_ptr, MonsterRaceId r_idx); //<! モンスターフィルタ関数
43 void (*prep_func)(PlayerType *player_ptr); //<! 能力フィルタ関数
48 /*! デバッグ時にnestのモンスター情報を確認するための構造体 / A struct for nest monster information with cheat_hear */
49 struct nest_mon_info_type {
50 MonsterRaceId r_idx; //!< モンスター種族ID
51 bool used; //!< 既に選んだかどうか
55 bool build_type5(PlayerType *player_ptr, dun_data_type *dd_ptr);
56 bool build_type6(PlayerType *player_ptr, dun_data_type *dd_ptr);
57 bool build_type13(PlayerType *player_ptr, dun_data_type *dd_ptr);