OSDN Git Service

[Fix] 見えていないモンスターのダメージメッセージが不自然に流れる。 / Unnatural message by damage of unseen monsters.
authorDeskull <61610939+sikabane-works@users.noreply.github.com>
Mon, 12 Apr 2021 11:45:01 +0000 (20:45 +0900)
committerDeskull <61610939+sikabane-works@users.noreply.github.com>
Tue, 13 Apr 2021 10:26:25 +0000 (19:26 +0900)
src/effect/effect-monster.cpp
src/monster/monster-describer.cpp

index 508d9c5..4a80268 100644 (file)
@@ -492,7 +492,7 @@ static void effect_damage_gives_bad_status(player_type *caster_ptr, effect_monst
 {
     int tmp_damage = em_ptr->dam;
     em_ptr->dam = mon_damage_mod(caster_ptr, em_ptr->m_ptr, em_ptr->dam, (bool)(em_ptr->effect_type == GF_PSY_SPEAR));
-    if ((tmp_damage > 0) && (em_ptr->dam == 0))
+    if ((tmp_damage > 0) && (em_ptr->dam == 0) && em_ptr->seen)
         em_ptr->note = _("はダメージを受けていない。", " is unharmed.");
 
     if (em_ptr->dam > em_ptr->m_ptr->hp)
index 7df730c..fffcdc9 100644 (file)
@@ -256,10 +256,13 @@ void message_pain(player_type *player_ptr, MONSTER_IDX m_idx, HIT_POINT dam)
 
     GAME_TEXT m_name[MAX_NLEN];
 
+
     monster_desc(player_ptr, m_name, m_ptr, 0);
 
     if (dam == 0) {
-        msg_format(_("%^sはダメージを受けていない。", "%^s is unharmed."), m_name);
+        if (m_ptr->ml) {
+            msg_format(_("%^sはダメージを受けていない。", "%^s is unharmed."), m_name);
+        }
         return;
     }