3 #include "system/angband.h"
6 * 箱のトラップ定義 Chest trap flags
8 #define CHEST_LOSE_STR 0x0001 /*!< 箱のトラップ: STR減少の毒針 */
9 #define CHEST_LOSE_CON 0x0002 /*!< 箱のトラップ: CON減少の毒針 */
10 #define CHEST_POISON 0x0004 /*!< 箱のトラップ: 毒針 */
11 #define CHEST_PARALYZE 0x0008 /*!< 箱のトラップ: 麻痺ガス */
12 #define CHEST_EXPLODE 0x0010 /*!< 箱のトラップ: 爆発 */
13 #define CHEST_SUMMON 0x0020 /*!< 箱のトラップ: 召喚のルーン(モンスター) */
14 #define CHEST_SCATTER 0x0040 /*!< 箱のトラップ: アイテム散乱 */
15 #define CHEST_E_SUMMON 0x0080 /*!< 箱のトラップ: 召喚のルーン(エレメンタル) */
16 #define CHEST_BIRD_STORM 0x0100 /*!< 箱のトラップ: 召喚のルーン(鳥) */
17 #define CHEST_H_SUMMON 0x0200 /*!< 箱のトラップ: 召喚のルーン(強敵) */
18 #define CHEST_RUNES_OF_EVIL 0x0400 /*!< 箱のトラップ: 邪悪なルーン */
19 #define CHEST_ALARM 0x0800 /*!< 箱のトラップ: 警報装置 */
21 /* Types of normal traps */
23 #define TRAP_TRAPDOOR 0
25 #define TRAP_SPIKED_PIT 2
26 #define TRAP_POISON_PIT 3
27 #define TRAP_TY_CURSE 4
28 #define TRAP_TELEPORT 5
33 #define TRAP_LOSE_STR 9
34 #define TRAP_LOSE_DEX 10
35 #define TRAP_LOSE_CON 11
37 #define TRAP_CONFUSE 13
38 #define TRAP_POISON 14
43 #define MAX_NORMAL_TRAPS 18
45 /* Types of special traps */
47 #define TRAP_ARMAGEDDON 19
48 #define TRAP_PIRANHA 20
50 extern const int chest_traps[64];
52 typedef struct player_type player_type;
53 void init_normal_traps(void);
54 FEAT_IDX choose_random_trap(player_type *trapped_ptr);
55 void disclose_grid(player_type *trapped_ptr, POSITION y, POSITION x);
56 void place_trap(player_type *trapped_ptr, POSITION y, POSITION x);
57 void hit_trap(player_type *trapped_ptr, bool break_trap);