#include "monster/monster-describer.h"
#include "monster/monster-description-types.h"
#include "player/special-defense-types.h"
+#include "player/player-status-flags.h"
#include "realm/realm-hex-numbers.h"
#include "spell-realm/spells-crusade.h"
#include "spell-realm/spells-hex.h"
*/
static bool process_bolt_reflection(player_type *target_ptr, effect_player_type *ep_ptr, project_func project)
{
- bool can_bolt_hit = target_ptr->reflect || (((target_ptr->special_defense & KATA_FUUJIN) != 0) && !target_ptr->blind);
+ bool can_bolt_hit = has_reflect(target_ptr) || (((target_ptr->special_defense & KATA_FUUJIN) != 0) && !target_ptr->blind);
can_bolt_hit &= (ep_ptr->flag & PROJECT_REFLECTABLE) != 0;
can_bolt_hit &= !one_in_(10);
if (!can_bolt_hit)
break;
case DRS_REFLECT:
- if (player_ptr->reflect)
+ if (has_reflect(player_ptr))
m_ptr->smart |= SM_IMM_REFLECT;
break;
if (has_resist_shard(target_ptr))
msr_ptr->smart |= SM_RES_SHARD;
- if (target_ptr->reflect)
+ if (has_reflect(target_ptr))
msr_ptr->smart |= SM_IMM_REFLECT;
if (target_ptr->free_act)
if (creature_ptr->hold_exp)
self_ptr->info[self_ptr->line++] = _("あなたは自己の経験値をしっかりと維持する。", "You have a firm hold on your experience.");
- if (creature_ptr->reflect)
+ if (has_reflect(creature_ptr))
self_ptr->info[self_ptr->line++] = _("あなたは矢の呪文を反射する。", "You reflect bolt spells.");
if (creature_ptr->sh_fire)
creature_ptr->yoiyami = has_no_ac(creature_ptr);
creature_ptr->mighty_throw = has_mighty_throw(creature_ptr);
creature_ptr->dec_mana = has_dec_mana(creature_ptr);
- creature_ptr->reflect = has_reflect(creature_ptr);
creature_ptr->see_nocto = has_see_nocto(creature_ptr);
creature_ptr->warning = has_warning(creature_ptr);
creature_ptr->anti_magic = has_anti_magic(creature_ptr);
bool is_fired;
bool level_up_message;
- BIT_FLAGS reflect; /* Reflect 'bolt' attacks */
BIT_FLAGS sh_fire; /* Fiery 'immolation' effect */
BIT_FLAGS sh_elec; /* Electric 'immolation' effect */
BIT_FLAGS sh_cold; /* Cold 'immolation' effect */