#include "core/player-redraw-types.h"
#include "mind/drs-types.h"
#include "monster-race/monster-race.h"
+#include "monster-race/race-indice-types.h"
#include "monster-race/race-flags1.h"
#include "monster-race/race-flags3.h"
#include "monster/monster-describer.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-util.h"
#include "player/player-personalities-types.h"
+#include "player/player-status-flags.h"
#include "spell/spell-types.h"
#include "status/bad-status-setter.h"
#include "status/base-status.h"
bool resist, saving_throw;
if (TARGET_TYPE == MONSTER_TO_PLAYER) {
- resist = target_ptr->resist_fear;
+ resist = (has_resist_fear(target_ptr) != 0);
saving_throw = (randint0(100 + rlev / 2) < target_ptr->skill_sav);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやくと、恐ろしげな音が聞こえた。", "%^s mumbles, and you hear scary noises."),
_("%^sが恐ろしげな幻覚を作り出した。", "%^s casts a fearful illusion."), _("しかし恐怖に侵されなかった。", "You refuse to be frightened."),
if (TARGET_TYPE != MONSTER_TO_MONSTER)
return;
- resist = tr_ptr->flags3 & RF3_NO_FEAR;
+ resist = ((tr_ptr->flags3 & RF3_NO_FEAR) != 0);
saving_throw = (tr_ptr->level > randint1((rlev - 10) < 1 ? 1 : (rlev - 10)) + 10);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sが恐ろしげな幻覚を作り出した。", "%^s casts a fearful illusion in front of %s."),
bool resist, saving_throw;
if (TARGET_TYPE == MONSTER_TO_PLAYER) {
- resist = target_ptr->resist_blind;
+ resist = (has_resist_blind(target_ptr) != 0);
saving_throw = (randint0(100 + rlev / 2) < target_ptr->skill_sav);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやいた。", "%^s mumbles."),
_("%^sが呪文を唱えてあなたの目をくらました!", "%^s casts a spell, burning your eyes!"), _("しかし効果がなかった!", "You are unaffected!"),
msg1 = _("%sは呪文を唱えて%sの目を焼き付かせた。", "%^s casts a spell, burning %s's eyes.");
}
- resist = tr_ptr->flags3 & RF3_NO_CONF;
+ resist = ((tr_ptr->flags3 & RF3_NO_CONF) != 0);
saving_throw = (tr_ptr->level > randint1((rlev - 10) < 1 ? 1 : (rlev - 10)) + 10);
spell_badstatus_message(target_ptr, m_idx, t_idx, msg1, _("%^sには効果がなかった。", "%^s is unaffected."),
bool resist, saving_throw;
if (TARGET_TYPE == MONSTER_TO_PLAYER) {
- resist = target_ptr->resist_conf;
+ resist = (has_resist_conf(target_ptr) != 0);
saving_throw = (randint0(100 + rlev / 2) < target_ptr->skill_sav);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやくと、頭を悩ます音がした。", "%^s mumbles, and you hear puzzling noises."),
_("%^sが誘惑的な幻覚を作り出した。", "%^s creates a mesmerising illusion."),
if (TARGET_TYPE != MONSTER_TO_MONSTER)
return;
- resist = tr_ptr->flags3 & RF3_NO_CONF;
+ resist = ((tr_ptr->flags3 & RF3_NO_CONF) != 0);
saving_throw = (tr_ptr->level > randint1((rlev - 10) < 1 ? 1 : (rlev - 10)) + 10);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sが%sの前に幻惑的な幻をつくり出した。", "%^s casts a mesmerizing illusion in front of %s."),
bool resist, saving_throw;
if (TARGET_TYPE == MONSTER_TO_PLAYER) {
- resist = target_ptr->free_act;
+ resist = (target_ptr->free_act != 0);
saving_throw = (randint0(100 + rlev / 2) < target_ptr->skill_sav);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやいた。", "%^s mumbles."),
_("%^sがあなたの目をじっと見つめた!", "%^s stares deep into your eyes!"), _("しかし効果がなかった!", "You are unaffected!"),
- _("しかし効力を跳ね返した!", "You resist the effects!"), resist, saving_throw, TARGET_TYPE);
+ _("しかし効力を跳ね返した!", "You resist the effects!"), (bool)resist, saving_throw, TARGET_TYPE);
if (!resist && !saving_throw) {
(void)set_paralyzed(target_ptr, target_ptr->paralyzed + randint0(4) + 4);
if (TARGET_TYPE != MONSTER_TO_MONSTER)
return;
- resist = (tr_ptr->flags1 & RF1_UNIQUE) || (tr_ptr->flags3 & RF3_NO_STUN);
+ resist = ((tr_ptr->flags1 & RF1_UNIQUE) != 0 || (tr_ptr->flags3 & RF3_NO_STUN) != 0);
saving_throw = (tr_ptr->level > randint1((rlev - 10) < 1 ? 1 : (rlev - 10)) + 10);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sは%sをじっと見つめた。", "%^s stares intently at %s."),
_("%^sには効果がなかった。", "%^s is unaffected."), _("%^sには効果がなかった。", "%^s is unaffected."), _("%^sは麻痺した!", "%^s is paralyzed!"),
- resist, saving_throw, TARGET_TYPE);
+ (bool)resist, saving_throw, TARGET_TYPE);
if (!resist && !saving_throw) {
(void)set_monster_stunned(target_ptr, t_idx, monster_stunned_remaining(t_ptr) + randint1(4) + 4);
bool resist, saving_throw;
if (TARGET_TYPE == MONSTER_TO_PLAYER) {
- resist = target_ptr->resist_conf;
+ resist = (has_resist_conf(target_ptr) != 0);
saving_throw = (randint0(100 + rlev / 2) < target_ptr->skill_sav);
spell_badstatus_message(target_ptr, m_idx, t_idx, _("%^sがあなたの筋力を吸い取ろうとした!", "%^s drains power from your muscles!"),
_("%^sがあなたの筋力を吸い取ろうとした!", "%^s drains power from your muscles!"), _("しかし効果がなかった!", "You are unaffected!"),
msg1 = _("%sが%sの筋肉から力を吸いとった。", "%^s drains power from %s's muscles.");
}
- resist = tr_ptr->flags1 & RF1_UNIQUE;
+ resist = ((tr_ptr->flags1 & RF1_UNIQUE) != 0);
saving_throw = (tr_ptr->level > randint1((rlev - 10) < 1 ? 1 : (rlev - 10)) + 10);
spell_badstatus_message(target_ptr, m_idx, t_idx, msg1, _("%^sには効果がなかった。", "%^s is unaffected."),
_("%^sが何かを力強くつぶやいた。", "%^s mumbles powerfully."), _("%sは無傷の球の呪文を唱えた。", "%^s casts a Globe of Invulnerability."),
_("%sは無傷の球の呪文を唱えた。", "%^s casts a Globe of Invulnerability."), !seen, TARGET_TYPE);
+ MONRACE_IDX r_idx = m_ptr->r_idx;
+ if ((r_idx == MON_MARIO) || r_idx == MON_LUIGI) {
+ GAME_TEXT m_name[MAX_NLEN];
+ monster_desc(target_ptr, m_name, m_ptr, MD_NONE);
+ msg_format(_("%sはスターを取った!", "%^s got a star!"), m_name);
+ }
+
if (!monster_invulner_remaining(m_ptr))
(void)set_monster_invulner(target_ptr, m_idx, randint1(4) + 4, FALSE);
}