Hengband  2.2.1
realm-hex.h
[詳解]
1 /*!
2  * @file realm-hex.h
3  */
4 
5 #define hex_spelling_any(CREATURE_PTR) \
6  (((CREATURE_PTR)->realm1 == REALM_HEX) && ((CREATURE_PTR)->magic_num1[0]))
7 #define hex_spelling(X) \
8  ((p_ptr->realm1 == REALM_HEX) && (p_ptr->magic_num1[0] & (1L << (X))))
9 #define CASTING_HEX_FLAGS(P_PTR) ((P_PTR)->magic_num1[0])
10 #define CASTING_HEX_NUM(P_PTR) ((P_PTR)->magic_num2[0])
11 #define HEX_REVENGE_POWER(P_PTR) ((P_PTR)->magic_num1[2])
12 #define HEX_REVENGE_TURN(P_PTR) ((P_PTR)->magic_num2[2])
13 #define HEX_REVENGE_TYPE(P_PTR) ((P_PTR)->magic_num2[1])
14 
15 /* 1st book */
16 #define HEX_BLESS 0
17 #define HEX_CURE_LIGHT 1
18 #define HEX_DEMON_AURA 2
19 #define HEX_STINKING_MIST 3
20 #define HEX_XTRA_MIGHT 4
21 #define HEX_CURSE_WEAPON 5
22 #define HEX_DETECT_EVIL 6
23 #define HEX_PATIENCE 7
24 /* 2nd book */
25 #define HEX_ICE_ARMOR 8
26 #define HEX_CURE_SERIOUS 9
27 #define HEX_INHAIL 10
28 #define HEX_VAMP_MIST 11
29 #define HEX_RUNESWORD 12
30 #define HEX_CONFUSION 13
31 #define HEX_BUILDING 14
32 #define HEX_ANTI_TELE 15
33 /* 3rd book */
34 #define HEX_SHOCK_CLOAK 16
35 #define HEX_CURE_CRITICAL 17
36 #define HEX_RECHARGE 18
37 #define HEX_RAISE_DEAD 19
38 #define HEX_CURSE_ARMOUR 20
39 #define HEX_SHADOW_CLOAK 21
40 #define HEX_PAIN_TO_MANA 22
41 #define HEX_EYE_FOR_EYE 23
42 /* 4th book */
43 #define HEX_ANTI_MULTI 24
44 #define HEX_RESTORE 25
45 #define HEX_DRAIN_CURSE 26
46 #define HEX_VAMP_BLADE 27
47 #define HEX_STUN_MONSTERS 28
48 #define HEX_SHADOW_MOVE 29
49 #define HEX_ANTI_MAGIC 30
50 #define HEX_REVENGE 31
51 
52 extern bool stop_hex_spell_all(void);
53 extern bool stop_hex_spell(void);
54 extern void check_hex(void);
55 extern bool hex_spell_fully(void);
56 extern void revenge_spell(void);
57 extern void revenge_store(HIT_POINT dam);
58 extern bool teleport_barrier(MONSTER_IDX m_idx);
59 extern bool magic_barrier(MONSTER_IDX m_idx);
60 extern bool multiply_barrier(MONSTER_IDX m_idx);
61 extern concptr do_hex_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode);
62 
bool stop_hex_spell_all(void)
プレイヤーが詠唱中の全呪術を停止する
Definition: realm-hex.c:47
const char * concptr
文字列定数用ポインタ定義 / A simple pointer (to unmodifiable strings)
Definition: h-type.h:47
bool hex_spell_fully(void)
プレイヤーの呪術詠唱枠がすでに最大かどうかを返す
Definition: realm-hex.c:250
s32b SPELL_IDX
各魔法領域/職業能力ごとの呪文ID型定義
Definition: h-type.h:243
void revenge_store(HIT_POINT dam)
復讐ダメージの追加を行う
Definition: realm-hex.c:280
void revenge_spell(void)
一定ゲームターン毎に復讐処理の残り期間の判定を行う
Definition: realm-hex.c:263
s32b HIT_POINT
HPとその増減量の型定義
Definition: h-type.h:161
u32b BIT_FLAGS
32ビットのフラグ配列の型定義
Definition: h-type.h:225
bool magic_barrier(MONSTER_IDX m_idx)
反魔法結界の判定
Definition: realm-hex.c:309
void check_hex(void)
一定時間毎に呪術で消費するMPを処理する / Upkeeping hex spells Called from dungeon.c
Definition: realm-hex.c:150
bool teleport_barrier(MONSTER_IDX m_idx)
反テレポート結界の判定
Definition: realm-hex.c:293
s16b MONSTER_IDX
ゲーム中のモンスター個体ID型を定義
Definition: h-type.h:129
bool stop_hex_spell(void)
プレイヤーが詠唱中の呪術から一つを選んで停止する
Definition: realm-hex.c:71
Definition: player-status.h:86
concptr do_hex_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
呪術領域魔法の各処理を行う
Definition: realm-hex.c:342
bool multiply_barrier(MONSTER_IDX m_idx)
反増殖結界の判定
Definition: realm-hex.c:325