#define MAGIC_GAIN_EXP 0x0004
/*
+ * todo ここからp_ptrを消すと、object-hookにある大量の関数ポインタを全部修正する必要がある
+ * 影響範囲が広すぎるので保留
* Magic-books for the realms
*/
#define REALM1_BOOK (p_ptr->realm1 + TV_LIFE_BOOK - 1)
#define MUT1_EAT_MAGIC 0x00400000L /*!< 突然変異: 魔力喰い */
#define MUT1_WEIGH_MAG 0x00800000L /*!< 突然変異: 魔力感知 */
#define MUT1_STERILITY 0x01000000L /*!< 突然変異: 増殖阻止 */
-#define MUT1_PANIC_HIT 0x02000000L /*!< 突然変異: ヒットアンドアウェイ */
+#define MUT1_HIT_AND_AWAY 0x02000000L /*!< 突然変異: ヒットアンドアウェイ */
#define MUT1_DAZZLE 0x04000000L /*!< 突然変異: 眩惑 */
#define MUT1_LASER_EYE 0x08000000L /*!< 突然変異: レーザー・アイ */
#define MUT1_RECALL 0x10000000L /*!< 突然変異: 帰還 */
concptr last_message; /* Last message on death or retirement */
char history[4][60]; /* Textual "history" for the Player */
- u16b total_winner; /* Total winner */
u16b panic_save; /* Panic save */
- u16b noscore; /* Cheating flags */
-
bool wait_report_score; /* Waiting to report score */
bool is_dead; /* Player is dead */
bool now_damaged;
/* Temporary flags macro */
#define IS_FAST(C) (C->fast || music_singing(C, MUSIC_SPEED) || music_singing(C, MUSIC_SHERO))
-#define IS_INVULN() (p_ptr->invuln || music_singing(p_ptr, MUSIC_INVULN))
-#define IS_HERO() (p_ptr->hero || music_singing(p_ptr, MUSIC_HERO) || music_singing(p_ptr, MUSIC_SHERO))
-#define IS_BLESSED() (p_ptr->blessed || music_singing(p_ptr, MUSIC_BLESS) || hex_spelling(HEX_BLESS))
-#define IS_OPPOSE_ACID() (p_ptr->oppose_acid || music_singing(p_ptr, MUSIC_RESIST) || (p_ptr->special_defense & KATA_MUSOU))
-#define IS_OPPOSE_ELEC() (p_ptr->oppose_elec || music_singing(p_ptr, MUSIC_RESIST) || (p_ptr->special_defense & KATA_MUSOU))
-#define IS_OPPOSE_FIRE() (p_ptr->oppose_fire || music_singing(p_ptr, MUSIC_RESIST) || (p_ptr->special_defense & KATA_MUSOU))
-#define IS_OPPOSE_COLD() (p_ptr->oppose_cold || music_singing(p_ptr, MUSIC_RESIST) || (p_ptr->special_defense & KATA_MUSOU))
-#define IS_OPPOSE_POIS() (p_ptr->oppose_pois || music_singing(p_ptr, MUSIC_RESIST) || (p_ptr->special_defense & KATA_MUSOU))
+#define IS_INVULN(C) (C->invuln || music_singing(C, MUSIC_INVULN))
+#define IS_HERO(C) (C->hero || music_singing(C, MUSIC_HERO) || music_singing(C, MUSIC_SHERO))
#define IS_TIM_ESP() (p_ptr->tim_esp || music_singing(p_ptr, MUSIC_MIND) || (p_ptr->concent >= CONCENT_TELE_THRESHOLD))
#define IS_TIM_STEALTH() (p_ptr->tim_stealth || music_singing(p_ptr, MUSIC_STEALTH))
#define P_PTR_KI (p_ptr->magic_num1[0])
+extern bool is_blessed(player_type *player_ptr);
+extern bool is_oppose_acid(player_type *player_ptr);
+extern bool is_oppose_elec(player_type *player_ptr);
+extern bool is_oppose_fire(player_type *player_ptr);
+extern bool is_oppose_cold(player_type *player_ptr);
+extern bool is_oppose_pois(player_type *player_ptr);
+
/*
* Player "food" crucial values
*/