OSDN Git Service

[Refactor] #38997 monster_*() にplayer_type * 引数追加 / Added player_type * argument...
authorHourier <hourier@users.sourceforge.jp>
Sat, 18 Jan 2020 04:29:21 +0000 (13:29 +0900)
committerHourier <hourier@users.sourceforge.jp>
Sat, 18 Jan 2020 14:01:52 +0000 (23:01 +0900)
30 files changed:
src/cmd/cmd-basic.c
src/cmd/cmd-dump.c
src/cmd/cmd-mane.c
src/cmd/cmd-pet.c
src/combat/melee1.c
src/combat/shoot.c
src/core.c
src/files.c
src/floor-save.c
src/mind.c
src/monster-process.c
src/monster-status.c
src/monster.h
src/monster1.c
src/monster2.c
src/mspells1.c
src/mspells2.c
src/mspells3.c
src/mspells4.c
src/mutation.c
src/player-move.c
src/player-status.c
src/realm-hissatsu.c
src/spells-floor.c
src/spells-status.c
src/spells1.c
src/spells2.c
src/spells3.c
src/targeting.c
src/wizard2.c

index 5ba7bd7..64480c3 100644 (file)
@@ -2561,7 +2561,7 @@ bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OBJECT_ID
                        grid_type *g_ptr = &creature_ptr->current_floor_ptr->grid_array[y][x];
                        monster_type *m_ptr = &creature_ptr->current_floor_ptr->m_list[g_ptr->m_idx];
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_name(g_ptr->m_idx, m_name);
+                       monster_name(creature_ptr, g_ptr->m_idx, m_name);
 
                        /* Check the visibility */
                        visible = m_ptr->ml;
@@ -2643,7 +2643,7 @@ bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OBJECT_ID
                                /* No death */
                                else
                                {
-                                       message_pain(g_ptr->m_idx, tdam);
+                                       message_pain(creature_ptr, g_ptr->m_idx, tdam);
 
                                        /* Anger the monster */
                                        if ((tdam > 0) && !object_is_potion(q_ptr))
@@ -2693,7 +2693,7 @@ bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OBJECT_ID
                                if (creature_ptr->current_floor_ptr->grid_array[y][x].m_idx && is_friendly(m_ptr) && !MON_INVULNER(m_ptr))
                                {
                                        GAME_TEXT m_name[MAX_NLEN];
-                                       monster_desc(m_name, m_ptr, 0);
+                                       monster_desc(creature_ptr, m_name, m_ptr, 0);
                                        msg_format(_("%sは怒った!", "%^s gets angry!"), m_name);
                                        set_hostile(&creature_ptr->current_floor_ptr->m_list[creature_ptr->current_floor_ptr->grid_array[y][x].m_idx]);
                                }
index df8289a..61a449d 100644 (file)
@@ -4563,7 +4563,7 @@ static void do_cmd_knowledge_pets(player_type *creature_ptr)
                if (!is_pet(m_ptr)) continue;
 
                t_friends++;
-               monster_desc(pet_name, m_ptr, MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE);
+               monster_desc(creature_ptr, pet_name, m_ptr, MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE);
                fprintf(fff, "%s (%s)\n", pet_name, look_mon_desc(m_ptr, 0x00));
        }
 
index 0664bb1..74e4fbd 100644 (file)
@@ -686,7 +686,7 @@ static bool use_mane(player_type *caster_ptr, int spell)
                if (!projectable(caster_ptr, caster_ptr->y, caster_ptr->x, target_row, target_col)) break;
                m_ptr = &caster_ptr->current_floor_ptr->m_list[caster_ptr->current_floor_ptr->grid_array[target_row][target_col].m_idx];
                r_ptr = &r_info[m_ptr->r_idx];
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(caster_ptr, m_name, m_ptr, 0);
                if (r_ptr->flagsr & RFR_RES_TELE)
                {
                        if ((r_ptr->flags1 & (RF1_UNIQUE)) || (r_ptr->flagsr & RFR_RES_ALL))
index 04b7b0d..e55f23f 100644 (file)
@@ -173,7 +173,7 @@ void do_cmd_pet_dismiss(player_type *creature_ptr)
 
                delete_this = FALSE;
                kakunin = ((pet_ctr == creature_ptr->riding) || (m_ptr->nickname));
-               monster_desc(friend_name, m_ptr, MD_ASSUME_VISIBLE);
+               monster_desc(creature_ptr, friend_name, m_ptr, MD_ASSUME_VISIBLE);
 
                if (!all_pets)
                {
@@ -223,7 +223,7 @@ void do_cmd_pet_dismiss(player_type *creature_ptr)
                        {
                                GAME_TEXT m_name[MAX_NLEN];
 
-                               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                               monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_DISMISS, m_name);
                        }
 
@@ -363,7 +363,7 @@ bool do_cmd_riding(player_type *creature_ptr, bool force)
                if (MON_CSLEEP(m_ptr))
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(creature_ptr, m_name, m_ptr, 0);
                        (void)set_monster_csleep(creature_ptr, g_ptr->m_idx, 0);
                        msg_format(_("%sを起こした。", "You have woken %s up."), m_name);
                }
@@ -424,7 +424,7 @@ static void do_name_pet(player_type *creature_ptr)
                        msg_print(_("そのモンスターの名前は変えられない!", "You cannot change name of this monster!"));
                        return;
                }
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(creature_ptr, m_name, m_ptr, 0);
 
                msg_format(_("%sに名前をつける。", "Name %s."), m_name);
                msg_print(NULL);
@@ -449,7 +449,7 @@ static void do_name_pet(player_type *creature_ptr)
                                m_ptr->nickname = quark_add(out_val);
                                if (record_named_pet)
                                {
-                                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                                       monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                        exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_NAME, m_name);
                                }
                        }
@@ -457,7 +457,7 @@ static void do_name_pet(player_type *creature_ptr)
                        {
                                if (record_named_pet && old_name)
                                {
-                                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                                       monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                        exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_UNNAME, m_name);
                                }
                                m_ptr->nickname = 0;
@@ -1046,7 +1046,7 @@ bool rakuba(player_type *creature_ptr, HIT_POINT dam, bool force)
                }
                if (!sn)
                {
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(creature_ptr, m_name, m_ptr, 0);
                        msg_format(_("%sから振り落とされそうになって、壁にぶつかった。", "You have nearly fallen from %s, but bumped into wall."), m_name);
                        take_hit(creature_ptr, DAMAGE_NOESCAPE, r_ptr->level + 3, _("壁への衝突", "bumping into wall"), -1);
                        return FALSE;
@@ -1084,7 +1084,7 @@ bool rakuba(player_type *creature_ptr, HIT_POINT dam, bool force)
 
        if (creature_ptr->levitation && !force)
        {
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(creature_ptr, m_name, m_ptr, 0);
                msg_format(_("%sから落ちたが、空中でうまく体勢を立て直して着地した。", "You are thrown from %s, but make a good landing."), m_name);
        }
        else
index 250fd12..34bfff5 100644 (file)
@@ -1113,7 +1113,7 @@ static void touch_zap_player_aux(monster_type *m_ptr, player_type *touched_ptr,
        GAME_TEXT mon_name[MAX_NLEN];
        int aura_damage = damroll(1 + (r_ptr->level / 26), 1 + (r_ptr->level / 17));
 
-       monster_desc(mon_name, m_ptr, MD_WRONGDOER_NAME);
+       monster_desc(touched_ptr, mon_name, m_ptr, MD_WRONGDOER_NAME);
        msg_print(message);
        dam_func(touched_ptr, aura_damage, mon_name, -1, TRUE);
 
@@ -1204,7 +1204,7 @@ static void natural_attack(player_type *attacker_ptr, MONSTER_IDX m_idx, int att
        }
 
        GAME_TEXT m_name[MAX_NLEN];
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(attacker_ptr, m_name, m_ptr, 0);
 
        /* Calculate the "attack quality" */
        int bonus = attacker_ptr->to_h_m + (attacker_ptr->lev * 6 / 5);
@@ -1391,7 +1391,7 @@ static void py_attack_aux(player_type *attacker_ptr, POSITION y, POSITION x, boo
        /* Disturb the monster */
        (void)set_monster_csleep(attacker_ptr, g_ptr->m_idx, 0);
 
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(attacker_ptr, m_name, m_ptr, 0);
 
        /* Calculate the "attack quality" */
        bonus = attacker_ptr->to_h[hand] + o_ptr->to_h;
@@ -2112,7 +2112,7 @@ static void py_attack_aux(player_type *attacker_ptr, POSITION y, POSITION x, boo
                                m_ptr = &floor_ptr->m_list[g_ptr->m_idx];
 
                                /* Oops, we need a different name... */
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(attacker_ptr, m_name, m_ptr, 0);
 
                                /* Hack -- Get new race */
                                r_ptr = &r_info[m_ptr->r_idx];
@@ -2189,7 +2189,7 @@ bool py_attack(player_type *attacker_ptr, POSITION y, POSITION x, COMBAT_OPTION_
                return FALSE;
        }
 
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(attacker_ptr, m_name, m_ptr, 0);
 
        if (m_ptr->ml)
        {
@@ -2392,9 +2392,9 @@ bool make_attack_normal(player_type *target_ptr, MONSTER_IDX m_idx)
        rlev = ((r_ptr->level >= 1) ? r_ptr->level : 1);
 
        /* Get the monster name (or "it") */
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(target_ptr, m_name, m_ptr, 0);
 
-       monster_desc(ddesc, m_ptr, MD_WRONGDOER_NAME);
+       monster_desc(target_ptr, ddesc, m_ptr, MD_WRONGDOER_NAME);
 
        if (target_ptr->special_defense & KATA_IAI)
        {
@@ -4028,7 +4028,7 @@ bool make_attack_normal(player_type *target_ptr, MONSTER_IDX m_idx)
                if (target_ptr->riding && damage)
                {
                        char m_steed_name[MAX_NLEN];
-                       monster_desc(m_steed_name, &floor_ptr->m_list[target_ptr->riding], 0);
+                       monster_desc(target_ptr, m_steed_name, &floor_ptr->m_list[target_ptr->riding], 0);
                        if (rakuba(target_ptr, (damage > 200) ? 200 : damage, FALSE))
                        {
                                msg_format(_("%^sから落ちてしまった!", "You have fallen from %s."), m_steed_name);
@@ -4064,7 +4064,7 @@ bool make_attack_normal(player_type *target_ptr, MONSTER_IDX m_idx)
        if ((target_ptr->counter || (target_ptr->special_defense & KATA_MUSOU)) && alive && !target_ptr->is_dead && m_ptr->ml && (target_ptr->csp > 7))
        {
                char m_target_name[MAX_NLEN];
-               monster_desc(m_target_name, m_ptr, 0);
+               monster_desc(target_ptr, m_target_name, m_ptr, 0);
 
                target_ptr->csp -= 7;
                msg_format(_("%^sに反撃した!", "Your counterattacked to %s!"), m_target_name);
@@ -4156,8 +4156,8 @@ bool monst_attack_monst(player_type *subject_ptr, MONSTER_IDX m_idx, MONSTER_IDX
        /* Extract the effective monster level */
        rlev = ((r_ptr->level >= 1) ? r_ptr->level : 1);
 
-       monster_desc(m_name, m_ptr, 0);
-       monster_desc(t_name, t_ptr, 0);
+       monster_desc(subject_ptr, m_name, m_ptr, 0);
+       monster_desc(subject_ptr, t_name, t_ptr, 0);
 
        /* Assume no blink */
        blinked = FALSE;
@@ -4752,7 +4752,7 @@ void mon_take_hit_mon(player_type *player_ptr, MONSTER_IDX m_idx, HIT_POINT dam,
        /* Can the player be aware of this attack? */
        bool known = (m_ptr->cdis <= MAX_SIGHT);
 
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(player_ptr, m_name, m_ptr, 0);
 
        /* Redraw (later) if needed */
        if (m_ptr->ml)
@@ -4819,7 +4819,7 @@ void mon_take_hit_mon(player_type *player_ptr, MONSTER_IDX m_idx, HIT_POINT dam,
 
                        if (known)
                        {
-                               monster_desc(m_name, m_ptr, MD_TRUE_NAME);
+                               monster_desc(player_ptr, m_name, m_ptr, MD_TRUE_NAME);
                                /* Unseen death by normal attack */
                                if (!seen)
                                {
@@ -4904,7 +4904,7 @@ void mon_take_hit_mon(player_type *player_ptr, MONSTER_IDX m_idx, HIT_POINT dam,
 
        if (player_ptr->riding && (player_ptr->riding == m_idx) && (dam > 0))
        {
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(player_ptr, m_name, m_ptr, 0);
 
                if (m_ptr->hp > m_ptr->maxhp / 3) dam = (dam + 1) / 2;
                if (rakuba(player_ptr, (dam > 200) ? 200 : dam, FALSE))
index 6b21d23..faef07b 100644 (file)
@@ -666,7 +666,7 @@ void exe_fire(player_type *shooter_ptr, INVENTORY_IDX item, object_type *j_ptr,
                                                GAME_TEXT m_name[MAX_NLEN];
 
                                                /* Get "the monster" or "it" */
-                                               monster_desc(m_name, m_ptr, 0);
+                                               monster_desc(shooter_ptr, m_name, m_ptr, 0);
 
                                                msg_format(_("%sが%sに命中した。", "The %s hits %s."), o_name, m_name);
 
@@ -685,7 +685,7 @@ void exe_fire(player_type *shooter_ptr, INVENTORY_IDX item, object_type *j_ptr,
                                                        GAME_TEXT m_name[MAX_NLEN];
 
                                                        /* Get "the monster" or "it" */
-                                                       monster_desc(m_name, m_ptr, 0);
+                                                       monster_desc(shooter_ptr, m_name, m_ptr, 0);
 
                                                        tdam = m_ptr->hp + 1;
                                                        msg_format(_("%sの急所に突き刺さった!", "Your shot hit a fatal spot of %s!"), m_name);
@@ -742,13 +742,13 @@ void exe_fire(player_type *shooter_ptr, INVENTORY_IDX item, object_type *j_ptr,
                                                {
                                                        GAME_TEXT m_name[MAX_NLEN];
 
-                                                       monster_desc(m_name, m_ptr, 0);
+                                                       monster_desc(shooter_ptr, m_name, m_ptr, 0);
 
                                                        stick_to = TRUE;
                                                        msg_format(_("%sは%sに突き刺さった!", "%^s is stuck in %s!"), o_name, m_name);
                                                }
 
-                                               message_pain(c_mon_ptr->m_idx, tdam);
+                                               message_pain(shooter_ptr, c_mon_ptr->m_idx, tdam);
 
                                                /* Anger the monster */
                                                if (tdam > 0) anger_monster(shooter_ptr, m_ptr);
@@ -757,7 +757,7 @@ void exe_fire(player_type *shooter_ptr, INVENTORY_IDX item, object_type *j_ptr,
                                                {
                                                        GAME_TEXT m_name[MAX_NLEN];
                                                        sound(SOUND_FLEE);
-                                                       monster_desc(m_name, m_ptr, 0);
+                                                       monster_desc(shooter_ptr, m_name, m_ptr, 0);
                                                        msg_format(_("%^sは恐怖して逃げ出した!", "%^s flees in terror!"), m_name);
                                                }
 
@@ -930,7 +930,7 @@ bool test_hit_fire(player_type *shooter_ptr, int chance, monster_type *m_ptr, in
                if (m_ptr->r_idx == MON_GOEMON && !MON_CSLEEP(m_ptr))
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(shooter_ptr, m_name, m_ptr, 0);
                        msg_format(_("%sは%sを斬り捨てた!", "%s cuts down %s!"), m_name, o_name);
                }
                return FALSE;
index c21eec6..1b6af4d 100644 (file)
@@ -3158,7 +3158,7 @@ static void process_world(player_type *player_ptr)
 
                        wm_ptr = &floor_ptr->m_list[win_m_idx];
 
-                       monster_desc(m_name, wm_ptr, 0);
+                       monster_desc(player_ptr, m_name, wm_ptr, 0);
                        msg_format(_("%sが勝利した!", "%s is winner!"), m_name);
                        msg_print(NULL);
 
@@ -4385,7 +4385,7 @@ static void process_fishing(player_type *creature_ptr)
                        if (place_monster_aux(creature_ptr, 0, y, x, r_idx, PM_NO_KAGE))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, &creature_ptr->current_floor_ptr->m_list[creature_ptr->current_floor_ptr->grid_array[y][x].m_idx], 0);
+                               monster_desc(creature_ptr, m_name, &creature_ptr->current_floor_ptr->m_list[creature_ptr->current_floor_ptr->grid_array[y][x].m_idx], 0);
                                msg_format(_("%sが釣れた!", "You have a good catch!"), m_name);
                                success = TRUE;
                        }
@@ -4521,7 +4521,7 @@ static void process_player(player_type *creature_ptr)
 
                        /* Recover fully */
                        (void)set_monster_csleep(creature_ptr, creature_ptr->riding, 0);
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(creature_ptr, m_name, m_ptr, 0);
                        msg_format(_("%^sを起こした。", "You have woken %s up."), m_name);
                }
 
@@ -4532,7 +4532,7 @@ static void process_player(player_type *creature_ptr)
                                (randint0(r_ptr->level) < creature_ptr->skill_exp[GINOU_RIDING]) ? 0 : (MON_STUNNED(m_ptr) - 1)))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(creature_ptr, m_name, m_ptr, 0);
                                msg_format(_("%^sを朦朧状態から立ち直らせた。", "%^s is no longer stunned."), m_name);
                        }
                }
@@ -4544,7 +4544,7 @@ static void process_player(player_type *creature_ptr)
                                (randint0(r_ptr->level) < creature_ptr->skill_exp[GINOU_RIDING]) ? 0 : (MON_CONFUSED(m_ptr) - 1)))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(creature_ptr, m_name, m_ptr, 0);
                                msg_format(_("%^sを混乱状態から立ち直らせた。", "%^s is no longer confused."), m_name);
                        }
                }
@@ -4556,7 +4556,7 @@ static void process_player(player_type *creature_ptr)
                                (randint0(r_ptr->level) < creature_ptr->skill_exp[GINOU_RIDING]) ? 0 : (MON_MONFEAR(m_ptr) - 1)))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(creature_ptr, m_name, m_ptr, 0);
                                msg_format(_("%^sを恐怖から立ち直らせた。", "%^s is no longer afraid."), m_name);
                        }
                }
index c64d4ce..92cba53 100644 (file)
@@ -4107,7 +4107,7 @@ static void dump_aux_pet(player_type *master_ptr, FILE *fff)
                }
 
                GAME_TEXT pet_name[MAX_NLEN];
-               monster_desc(pet_name, m_ptr, MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE);
+               monster_desc(master_ptr, pet_name, m_ptr, MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE);
                fprintf(fff, "%s\n", pet_name);
        }
 
index 9652fec..ffaef61 100644 (file)
@@ -489,7 +489,7 @@ static void preserve_pet(player_type *master_ptr)
                        if (!m_ptr->nickname) continue;
                        if (master_ptr->riding == i) continue;
 
-                       monster_desc(m_name, m_ptr, MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE);
+                       monster_desc(master_ptr, m_name, m_ptr, MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE);
                        exe_write_diary(master_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_MOVED, m_name);
                }
        }
@@ -508,7 +508,7 @@ static void preserve_pet(player_type *master_ptr)
                        if (is_seen(m_ptr))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(master_ptr, m_name, m_ptr, 0);
                                msg_format(_("%sは消え去った!", "%^s disappears!"), m_name);
                        }
 
@@ -632,11 +632,11 @@ static void place_pet(player_type *master_ptr)
                        monster_race *r_ptr = real_r_ptr(m_ptr);
                        GAME_TEXT m_name[MAX_NLEN];
 
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(master_ptr, m_name, m_ptr, 0);
                        msg_format(_("%sとはぐれてしまった。", "You have lost sight of %s."), m_name);
                        if (record_named_pet && m_ptr->nickname)
                        {
-                               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                               monster_desc(master_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                exe_write_diary(master_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_LOST_SIGHT, m_name);
                        }
 
index d64aa28..68efa6a 100644 (file)
@@ -1652,7 +1652,7 @@ static bool cast_ninja_spell(player_type *caster_ptr, int spell)
                if (!player_has_los_bold(caster_ptr, target_row, target_col)) break;
                if (!projectable(caster_ptr, caster_ptr->y, caster_ptr->x, target_row, target_col)) break;
                m_ptr = &caster_ptr->current_floor_ptr->m_list[m_idx];
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(caster_ptr, m_name, m_ptr, 0);
                msg_format(_("%sを引き戻した。", "You pull back %s."), m_name);
                path_n = project_path(caster_ptr, path_g, MAX_RANGE, target_row, target_col, caster_ptr->y, caster_ptr->x, 0);
                ty = target_row, tx = target_col;
index ac1f03f..c124630 100644 (file)
@@ -1293,14 +1293,14 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
                if (see_m)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
                        msg_format(_("%sは消え去った!", "%^s disappears!"), m_name);
                }
 
                if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                       monster_desc(target_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                        exe_write_diary(target_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_LOSE_PARENT, m_name);
                }
 
@@ -1325,7 +1325,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
                        if (see_m)
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(target_ptr, m_name, m_ptr, 0);
 
                                msg_format(_("%sは消え去った!", "%^s disappears!"), m_name);
                        }
@@ -1356,7 +1356,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
                if (m_ptr->hp < m_ptr->maxhp / 3)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
 
                        if (is_riding_mon && riding_pinch < 2)
                        {
@@ -1416,7 +1416,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
                if (m_ptr->ml)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
                        msg_format(_("%^sが目を覚ました。", "%^s wakes up."), m_name);
                }
 
@@ -1457,7 +1457,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
                if (is_pet(m_ptr) || see_m)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, is_pet(m_ptr) ? MD_ASSUME_VISIBLE : 0);
+                       monster_desc(target_ptr, m_name, m_ptr, is_pet(m_ptr) ? MD_ASSUME_VISIBLE : 0);
                        msg_format(_("%^sは突然敵にまわった!", "%^s suddenly becomes hostile!"), m_name);
                }
 
@@ -1555,7 +1555,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
 
                        /* Acquire the monster name/poss */
                        if (m_ptr->ml)
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(target_ptr, m_name, m_ptr, 0);
                        else
                                strcpy(m_name, _("それ", "It"));
 
@@ -2234,7 +2234,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
 
                        /* Acquire the object name */
                        object_desc(o_name, o_ptr, 0);
-                       monster_desc(m_name, m_ptr, MD_INDEF_HIDDEN);
+                       monster_desc(target_ptr, m_name, m_ptr, MD_INDEF_HIDDEN);
 
                        /* React to objects that hurt the monster */
                        if (have_flag(flgs, TR_SLAY_DRAGON)) flg3 |= (RF3_DRAGON);
@@ -2392,7 +2392,7 @@ void process_monster(player_type *target_ptr, MONSTER_IDX m_idx)
        if (see_m)
        {
                GAME_TEXT m_name[MAX_NLEN];
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(target_ptr, m_name, m_ptr, 0);
                msg_format(_("%^sは戦いを決意した!", "%^s turns to fight!"), m_name);
        }
 
index d8029e9..3400037 100644 (file)
@@ -658,7 +658,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                if (m_ptr->ml)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
                        msg_format(_("%^sが目を覚ました。", "%^s wakes up."), m_name);
                }
 
@@ -678,7 +678,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                        if (is_seen(m_ptr))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(target_ptr, m_name, m_ptr, 0);
                                msg_format(_("%^sはもう加速されていない。", "%^s is no longer fast."), m_name);
                        }
                }
@@ -692,7 +692,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                        if (is_seen(m_ptr))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(target_ptr, m_name, m_ptr, 0);
                                msg_format(_("%^sはもう減速されていない。", "%^s is no longer slow."), m_name);
                        }
                }
@@ -710,7 +710,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                        if (is_seen(m_ptr))
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(target_ptr, m_name, m_ptr, 0);
                                msg_format(_("%^sは朦朧状態から立ち直った。", "%^s is no longer stunned."), m_name);
                        }
                }
@@ -727,7 +727,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                if (is_seen(m_ptr))
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
                        msg_format(_("%^sは混乱から立ち直った。", "%^s is no longer confused."), m_name);
                }
 
@@ -752,7 +752,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                        /* Acquire the monster possessive */
                        monster_desc(m_poss, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE);
 #endif
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
 #ifdef JP
                        msg_format("%^sは勇気を取り戻した。", m_name);
 #else
@@ -772,7 +772,7 @@ static void process_monsters_mtimed_aux(player_type *target_ptr, MONSTER_IDX m_i
                if (is_seen(m_ptr))
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(target_ptr, m_name, m_ptr, 0);
                        msg_format(_("%^sはもう無敵でない。", "%^s is no longer invulnerable."), m_name);
                }
 
@@ -818,7 +818,7 @@ void dispel_monster_status(player_type *target_ptr, MONSTER_IDX m_idx)
        monster_type *m_ptr = &target_ptr->current_floor_ptr->m_list[m_idx];
        GAME_TEXT m_name[MAX_NLEN];
 
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(target_ptr, m_name, m_ptr, 0);
        if (set_monster_invulner(target_ptr, m_idx, 0, TRUE))
        {
                if (m_ptr->ml) msg_format(_("%sはもう無敵ではない。", "%^s is no longer invulnerable."), m_name);
@@ -853,7 +853,7 @@ bool set_monster_timewalk(player_type *target_ptr, int num, MONSTER_IDX who, boo
        if (vs_player)
        {
                GAME_TEXT m_name[MAX_NLEN];
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(target_ptr, m_name, m_ptr, 0);
 
                if (who == 1)
                        msg_format(_("「『ザ・ワールド』!時は止まった!」", "%s yells 'The World! Time has stopped!'"), m_name);
@@ -941,7 +941,7 @@ void monster_gain_exp(player_type *target_ptr, MONSTER_IDX m_idx, MONRACE_IDX s_
        /* Hack -- Reduce the racial counter of previous monster */
        real_r_ptr(m_ptr)->cur_num--;
 
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(target_ptr, m_name, m_ptr, 0);
        m_ptr->r_idx = r_ptr->next_r_idx;
 
        /* Count the monsters on the level */
@@ -1161,7 +1161,7 @@ bool mon_take_hit(player_type *target_ptr, MONSTER_IDX m_idx, HIT_POINT dam, boo
                        monster_race_track(target_ptr, m_ptr->ap_r_idx);
                }
 
-               monster_desc(m_name, m_ptr, MD_TRUE_NAME);
+               monster_desc(target_ptr, m_name, m_ptr, MD_TRUE_NAME);
 
                /* Don't kill Amberites */
                if ((r_ptr->flags3 & RF3_AMBERITE) && one_in_(2))
index b4d2faf..02f3507 100644 (file)
@@ -418,7 +418,7 @@ extern bool alloc_horde(player_type *player_ptr, POSITION y, POSITION x);
 extern bool alloc_guardian(player_type *player_ptr, bool def_val);
 extern bool alloc_monster(player_type *player_ptr, POSITION dis, BIT_FLAGS mode);
 
-extern void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode);
+extern void monster_desc(player_type *player_ptr, char *desc, monster_type *m_ptr, BIT_FLAGS mode);
 /* Bit flags for monster_desc() */
 #define MD_OBJECTIVE      0x00000001 /* Objective (or Reflexive) */
 #define MD_POSSESSIVE     0x00000002 /* Possessive (or Reflexive) */
@@ -433,7 +433,7 @@ extern void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode);
 
 #define MD_WRONGDOER_NAME (MD_IGNORE_HALLU | MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE) /* 加害明記向け */
 
-extern void monster_name(MONSTER_IDX m_idx, char* m_name);
+extern void monster_name(player_type *player_ptr, MONSTER_IDX m_idx, char* m_name);
 
 extern void roff_top(MONRACE_IDX r_idx);
 extern void screen_roff(player_type *player_ptr, MONRACE_IDX r_idx, BIT_FLAGS mode);
@@ -461,7 +461,7 @@ extern bool monster_has_hostile_align(monster_type *m_ptr, int pa_good, int pa_e
 extern void dice_to_string(int base_damage, int dice_num, int dice_side, int dice_mult, int dice_div, char* msg);
 extern concptr look_mon_desc(monster_type *m_ptr, BIT_FLAGS mode);
 extern int get_monster_crowd_number(MONSTER_IDX m_idx);
-extern void message_pain(MONSTER_IDX m_idx, HIT_POINT dam);
+extern void message_pain(player_type *player_ptr, MONSTER_IDX m_idx, HIT_POINT dam);
 
 /* monster2.c */
 extern void set_target(monster_type *m_ptr, POSITION y, POSITION x);
index 8469327..0daa60d 100644 (file)
@@ -2265,7 +2265,7 @@ void anger_monster(player_type *player_ptr, monster_type *m_ptr)
        {
                GAME_TEXT m_name[MAX_NLEN];
 
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(player_ptr, m_name, m_ptr, 0);
                msg_format(_("%^sは怒った!", "%^s gets angry!"), m_name);
 
                set_hostile(m_ptr);
@@ -2572,7 +2572,7 @@ void monster_death(player_type *player_ptr, MONSTER_IDX m_idx, bool drop_item)
        {
                GAME_TEXT m_name[MAX_NLEN];
 
-               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+               monster_desc(player_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                exe_write_diary(player_ptr, DIARY_NAMED_PET, 3, m_name);
        }
 
@@ -2630,7 +2630,7 @@ void monster_death(player_type *player_ptr, MONSTER_IDX m_idx, bool drop_item)
                {
                        GAME_TEXT m_name[MAX_NLEN];
 
-                       monster_desc(m_name, m_ptr, MD_WRONGDOER_NAME);
+                       monster_desc(player_ptr, m_name, m_ptr, MD_WRONGDOER_NAME);
 
                        exe_write_diary(player_ptr, DIARY_ARENA, player_ptr->arena_number, m_name);
                }
index 0791752..ac823f8 100644 (file)
@@ -325,7 +325,7 @@ void compact_monsters(player_type *player_ptr, int size)
                        if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
                        {
                                GAME_TEXT m_name[MAX_NLEN];
-                               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                               monster_desc(player_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                exe_write_diary(player_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_COMPACT, m_name);
                        }
 
@@ -1336,7 +1336,7 @@ MONRACE_IDX get_mon_num(player_type *player_ptr, DEPTH level)
  *  MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE
  *    --> Reflexive, genderized if visable ("himself") or "itself"
  */
-void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
+void monster_desc(player_type *player_ptr, char *desc, monster_type *m_ptr, BIT_FLAGS mode)
 {
        concptr            res;
        monster_race    *r_ptr;
@@ -1354,7 +1354,7 @@ void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
        else name = (r_name + r_ptr->name);
 
        /* Are we hallucinating? (Idea from Nethack...) */
-       if (p_ptr->image && !(mode & MD_IGNORE_HALLU))
+       if (player_ptr->image && !(mode & MD_IGNORE_HALLU))
        {
                if (one_in_(2))
                {
@@ -1386,7 +1386,7 @@ void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
 
 
        /* First, try using pronouns, or describing hidden monsters */
-       floor_type *floor_ptr = p_ptr->current_floor_ptr;
+       floor_type *floor_ptr = player_ptr->current_floor_ptr;
        if (!seen || pron)
        {
                /* an encoding of the monster "sex" */
@@ -1512,7 +1512,7 @@ void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
                else
 
                        /* It could be a Unique */
-                       if ((r_ptr->flags1 & RF1_UNIQUE) && !(p_ptr->image && !(mode & MD_IGNORE_HALLU)))
+                       if ((r_ptr->flags1 & RF1_UNIQUE) && !(player_ptr->image && !(mode & MD_IGNORE_HALLU)))
                        {
                                /* Start with the name (thus nominative and objective) */
                                if ((m_ptr->mflag2 & MFLAG2_CHAMELEON) && !(mode & MD_TRUE_NAME))
@@ -1535,8 +1535,8 @@ void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
                                }
 
                                /* Inside monster arena, and it is not your mount */
-                               else if (p_ptr->phase_out &&
-                                       !(p_ptr->riding && (&floor_ptr->m_list[p_ptr->riding] == m_ptr)))
+                               else if (player_ptr->phase_out &&
+                                       !(player_ptr->riding && (&floor_ptr->m_list[player_ptr->riding] == m_ptr)))
                                {
                                        /* It is a fake unique monster */
                                        (void)sprintf(desc, _("%sもどき", "fake %s"), name);
@@ -1581,7 +1581,7 @@ void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
                        strcat(desc, buf);
                }
 
-               if (p_ptr->riding && (&floor_ptr->m_list[p_ptr->riding] == m_ptr))
+               if (player_ptr->riding && (&floor_ptr->m_list[player_ptr->riding] == m_ptr))
                {
                        strcat(desc, _("(乗馬中)", "(riding)"));
                }
@@ -1616,13 +1616,14 @@ void monster_desc(char *desc, monster_type *m_ptr, BIT_FLAGS mode)
 
 /*!
 * @brief モンスターIDを取り、モンスター名をm_nameに代入する /
+* @param player_ptr プレーヤーへの参照ポインタ
 * @param m_idx モンスターID
 * @param m_name モンスター名を入力する配列
 */
-void monster_name(MONSTER_IDX m_idx, char* m_name)
+void monster_name(player_type *player_ptr, MONSTER_IDX m_idx, char* m_name)
 {
        monster_type *m_ptr = &p_ptr->current_floor_ptr->m_list[m_idx];
-       monster_desc(m_name, m_ptr, 0x00);
+       monster_desc(player_ptr, m_name, m_ptr, 0x00);
 }
 
 
@@ -2320,7 +2321,7 @@ void choose_new_monster(player_type *player_ptr, MONSTER_IDX m_idx, bool born, M
        if (old_unique && (r_idx == MON_CHAMELEON)) r_idx = MON_CHAMELEON_K;
        r_ptr = &r_info[r_idx];
 
-       monster_desc(old_m_name, m_ptr, 0);
+       monster_desc(player_ptr, old_m_name, m_ptr, 0);
 
        if (!r_idx)
        {
@@ -2372,7 +2373,7 @@ void choose_new_monster(player_type *player_ptr, MONSTER_IDX m_idx, bool born, M
        if (m_idx == player_ptr->riding)
        {
                GAME_TEXT m_name[MAX_NLEN];
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(player_ptr, m_name, m_ptr, 0);
                msg_format(_("突然%sが変身した。", "Suddenly, %s transforms!"), old_m_name);
                if (!(r_ptr->flags7 & RF7_RIDING))
                        if (rakuba(player_ptr, 0, TRUE)) msg_format(_("地面に落とされた。", "You have fallen from %s."), m_name);
@@ -3604,13 +3605,14 @@ bool multiply_monster(player_type *player_ptr, MONSTER_IDX m_idx, bool clone, BI
 
 /*!
  * @brief ダメージを受けたモンスターの様子を記述する / Dump a message describing a monster's reaction to damage
+ * @param player_ptr プレーヤーへの参照ポインタ
  * @param m_idx モンスター情報ID
  * @param dam 与えたダメージ
  * @return なし
  * @details
  * Technically should attempt to treat "Beholder"'s as jelly's
  */
-void message_pain(MONSTER_IDX m_idx, HIT_POINT dam)
+void message_pain(player_type *player_ptr, MONSTER_IDX m_idx, HIT_POINT dam)
 {
        HIT_POINT oldhp, newhp;
        HIT_POINT tmp;
@@ -3621,7 +3623,7 @@ void message_pain(MONSTER_IDX m_idx, HIT_POINT dam)
 
        GAME_TEXT m_name[MAX_NLEN];
 
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(player_ptr, m_name, m_ptr, 0);
 
        if (dam == 0) // Notice non-damage
        {
index 97444a5..ce86da6 100644 (file)
@@ -1637,7 +1637,7 @@ bool make_attack_spell(MONSTER_IDX m_idx, player_type *target_ptr)
 
        /* Get the monster name (or "it") */
        GAME_TEXT m_name[MAX_NLEN];
-       monster_desc(m_name, m_ptr, 0x00);
+       monster_desc(target_ptr, m_name, m_ptr, 0x00);
 
 #ifdef JP
 #else
index 449e507..cc632dd 100644 (file)
@@ -661,7 +661,7 @@ bool monst_spell_monst(player_type *target_ptr, MONSTER_IDX m_idx)
        if (target_ptr->leaving) return FALSE;
 
        /* Get the monster name (or "it") */
-       monster_desc(m_name, m_ptr, 0x00);
+       monster_desc(target_ptr, m_name, m_ptr, 0x00);
 
 #ifdef JP
 #else
@@ -671,7 +671,7 @@ bool monst_spell_monst(player_type *target_ptr, MONSTER_IDX m_idx)
 #endif
 
        /* Get the target's name (or "it") */
-       monster_desc(t_name, t_ptr, 0x00);
+       monster_desc(target_ptr, t_name, t_ptr, 0x00);
 
        /* Choose a spell to cast */
        thrown_spell = spell[randint0(num)];
index bdc1940..661daf7 100644 (file)
@@ -1322,7 +1322,7 @@ static bool cast_learned_spell(player_type *caster_ptr, int spell, bool success)
                if (!projectable(caster_ptr, caster_ptr->y, caster_ptr->x, target_row, target_col)) break;
                m_ptr = &floor_ptr->m_list[floor_ptr->grid_array[target_row][target_col].m_idx];
                r_ptr = &r_info[m_ptr->r_idx];
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(caster_ptr, m_name, m_ptr, 0);
                if (r_ptr->flagsr & RFR_RES_TELE)
                {
                        if ((r_ptr->flags1 & (RF1_UNIQUE)) || (r_ptr->flagsr & RFR_RES_ALL))
index c5479d4..01f1f01 100644 (file)
@@ -107,8 +107,8 @@ static void monspell_message_base(player_type *target_ptr, MONSTER_IDX m_idx, MO
        bool mon_to_mon = (TARGET_TYPE == MONSTER_TO_MONSTER);
        bool mon_to_player = (TARGET_TYPE == MONSTER_TO_PLAYER);
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (mon_to_player || (mon_to_mon && known && see_either))
                disturb(target_ptr, TRUE, TRUE);
@@ -208,8 +208,8 @@ void spell_RF4_SHRIEK(MONSTER_IDX m_idx, player_type *target_ptr, MONSTER_IDX t_
 void spell_RF4_DISPEL(MONSTER_IDX m_idx, player_type *target_ptr, MONSTER_IDX t_idx, int TARGET_TYPE)
 {
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        monspell_message(target_ptr, m_idx, t_idx,
                _("%^sが何かを力強くつぶやいた。", "%^s mumbles powerfully."),
@@ -321,8 +321,8 @@ HIT_POINT spell_RF4_BREATH(player_type *target_ptr, int GF_TYPE, POSITION y, POS
        bool mon_to_mon = (TARGET_TYPE == MONSTER_TO_MONSTER);
        bool mon_to_player = (TARGET_TYPE == MONSTER_TO_PLAYER);
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        switch (GF_TYPE)
        {
@@ -777,7 +777,7 @@ HIT_POINT spell_RF5_BA_WATE(player_type *target_ptr, POSITION y, POSITION x, MON
        bool mon_to_mon = (TARGET_TYPE == MONSTER_TO_MONSTER);
        bool mon_to_player = (TARGET_TYPE == MONSTER_TO_PLAYER);
        GAME_TEXT t_name[MAX_NLEN];
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, t_idx, t_name);
 
 
        monspell_message(target_ptr, m_idx, t_idx,
@@ -870,8 +870,8 @@ HIT_POINT spell_RF5_DRAIN_MANA(player_type *target_ptr, POSITION y, POSITION x,
 {
        HIT_POINT dam;
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
 
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
@@ -910,8 +910,8 @@ HIT_POINT spell_RF5_MIND_BLAST(player_type *target_ptr, POSITION y, POSITION x,
        bool seen = (!target_ptr->blind && m_ptr->ml);
        HIT_POINT dam;
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
 
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
@@ -950,8 +950,8 @@ HIT_POINT spell_RF5_BRAIN_SMASH(player_type *target_ptr, POSITION y, POSITION x,
        bool seen = (!target_ptr->blind && m_ptr->ml);
        HIT_POINT dam;
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
 
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
@@ -992,8 +992,8 @@ HIT_POINT spell_RF5_BRAIN_SMASH(player_type *target_ptr, POSITION y, POSITION x,
 void spell_RF5_CAUSE(player_type *target_ptr, int GF_TYPE, HIT_POINT dam, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, concptr msg1, concptr msg2, concptr msg3, int MS_TYPE, int TARGET_TYPE)
 {
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
        {
@@ -1487,8 +1487,8 @@ void spell_badstatus_message(player_type *target_ptr, MONSTER_IDX m_idx, MONSTER
        bool see_t = see_monster(floor_ptr, t_idx);
        bool known = monster_near_player(floor_ptr, m_idx, t_idx);
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
        {
@@ -1634,7 +1634,7 @@ void spell_RF5_BLIND(MONSTER_IDX m_idx, player_type *target_ptr, MONSTER_IDX t_i
 
        concptr msg1;
        GAME_TEXT t_name[MAX_NLEN];
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (streq(t_name, "it"))
        {
@@ -1755,7 +1755,7 @@ void spell_RF5_SLOW(MONSTER_IDX m_idx, player_type *target_ptr, MONSTER_IDX t_id
 
        concptr msg1;
        GAME_TEXT t_name[MAX_NLEN];
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (streq(t_name, "it"))
        {
@@ -1850,7 +1850,7 @@ void spell_RF6_HASTE(player_type *target_ptr, MONSTER_IDX m_idx, MONSTER_IDX t_i
        bool see_m = see_monster(floor_ptr, m_idx);
        monster_type *m_ptr = &floor_ptr->m_list[m_idx];
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        monspell_message_base(target_ptr, m_idx, t_idx,
                _("%^sが何かをつぶやいた。", "%^s mumbles."),
@@ -1916,7 +1916,7 @@ void spell_RF6_HEAL(player_type *target_ptr, MONSTER_IDX m_idx, MONSTER_IDX t_id
        DEPTH rlev = monster_level_idx(floor_ptr, m_idx);
        bool seen = (!target_ptr->blind && m_ptr->ml);
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        disturb(target_ptr, TRUE, TRUE);
 
@@ -2002,7 +2002,7 @@ void spell_RF6_INVULNER(player_type *target_ptr, MONSTER_IDX m_idx, MONSTER_IDX
 void spell_RF6_BLINK(player_type *target_ptr, MONSTER_IDX m_idx, int TARGET_TYPE)
 {
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
                disturb(target_ptr, TRUE, TRUE);
@@ -2035,7 +2035,7 @@ void spell_RF6_BLINK(player_type *target_ptr, MONSTER_IDX m_idx, int TARGET_TYPE
 void spell_RF6_TPORT(player_type *target_ptr, MONSTER_IDX m_idx, int TARGET_TYPE)
 {
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        floor_type *floor_ptr = target_ptr->current_floor_ptr;
        if (TARGET_TYPE == MONSTER_TO_PLAYER)
@@ -2065,7 +2065,7 @@ HIT_POINT spell_RF6_WORLD(player_type *target_ptr, MONSTER_IDX m_idx)
        monster_type *m_ptr = &target_ptr->current_floor_ptr->m_list[m_idx];
        MONSTER_IDX who = 0;
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        disturb(target_ptr, TRUE, TRUE);
        if (m_ptr->r_idx == MON_DIO) who = 1;
@@ -2199,7 +2199,7 @@ HIT_POINT spell_RF6_SPECIAL_B(player_type *target_ptr, POSITION y, POSITION x, M
        bool monster_to_monster = (TARGET_TYPE == MONSTER_TO_MONSTER);
        bool direct = player_bold(target_ptr, y, x);
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        disturb(target_ptr, TRUE, TRUE);
        if (one_in_(3) || !direct)
@@ -2259,7 +2259,7 @@ HIT_POINT spell_RF6_SPECIAL_B(player_type *target_ptr, POSITION y, POSITION x, M
                {
                        GAME_TEXT m_name_self[80];
                        /* hisself */
-                       monster_desc(m_name_self, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE);
+                       monster_desc(target_ptr, m_name_self, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE);
 
                        msg_format(_("攻撃が%s自身を傷つけた!", "The attack of %s has wounded %s!"), m_name, m_name_self);
 
@@ -2353,7 +2353,7 @@ void spell_RF6_TELE_TO(player_type *target_ptr, MONSTER_IDX m_idx, MONSTER_IDX t
 
        bool resists_tele = FALSE;
        GAME_TEXT t_name[MAX_NLEN];
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (tr_ptr->flagsr & RFR_RES_TELE)
        {
@@ -2429,7 +2429,7 @@ void spell_RF6_TELE_AWAY(player_type *target_ptr, MONSTER_IDX m_idx, MONSTER_IDX
 
        bool resists_tele = FALSE;
        GAME_TEXT t_name[MAX_NLEN];
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if (tr_ptr->flagsr & RFR_RES_TELE)
        {
@@ -2566,7 +2566,7 @@ void spell_RF6_DARKNESS(player_type *target_ptr, POSITION y, POSITION x, MONSTER
        bool monster_to_monster = TARGET_TYPE == MONSTER_TO_MONSTER;
        bool monster_to_player = TARGET_TYPE == MONSTER_TO_PLAYER;
        GAME_TEXT t_name[MAX_NLEN];
-       monster_name(t_idx, t_name);
+       monster_name(target_ptr, t_idx, t_name);
 
        if ((target_ptr->pclass == CLASS_NINJA) &&
                !(r_ptr->flags3 & (RF3_UNDEAD | RF3_HURT_LITE)) &&
@@ -2638,7 +2638,7 @@ void spell_RF6_DARKNESS(player_type *target_ptr, POSITION y, POSITION x, MONSTER
 void spell_RF6_TRAPS(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx)
 {
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
        disturb(target_ptr, TRUE, TRUE);
 
        if (target_ptr->blind)
@@ -2663,7 +2663,7 @@ void spell_RF6_FORGET(player_type *target_ptr, MONSTER_IDX m_idx)
 {
        DEPTH rlev = monster_level_idx(target_ptr->current_floor_ptr, m_idx);
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        disturb(target_ptr, TRUE, TRUE);
 
@@ -2872,9 +2872,9 @@ void spell_RF6_S_KIN(player_type *target_ptr, POSITION y, POSITION x, MONSTER_ID
        DEPTH rlev = monster_level_idx(floor_ptr, m_idx);
        int count = 0;
        GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN], m_poss[80];
-       monster_name(m_idx, m_name);
-       monster_name(t_idx, t_name);
-       monster_desc(m_poss, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE);
+       monster_name(target_ptr, m_idx, m_name);
+       monster_name(target_ptr, t_idx, t_name);
+       monster_desc(target_ptr, m_poss, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE);
 
        disturb(target_ptr, TRUE, TRUE);
        bool known = monster_near_player(floor_ptr, m_idx, t_idx);
@@ -3386,7 +3386,7 @@ MONSTER_NUMBER summon_NAZGUL(player_type *target_ptr, POSITION y, POSITION x, MO
        POSITION cy = y;
        POSITION cx = x;
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        if (target_ptr->blind)
                msg_format(_("%^sが何かをつぶやいた。", "%^s mumbles."), m_name);
@@ -3448,7 +3448,7 @@ MONSTER_NUMBER summon_NAZGUL(player_type *target_ptr, POSITION y, POSITION x, MO
 void spell_RF6_S_HI_UNDEAD(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
 {
        GAME_TEXT m_name[MAX_NLEN];
-       monster_name(m_idx, m_name);
+       monster_name(target_ptr, m_idx, m_name);
 
        disturb(target_ptr, TRUE, TRUE);
 
index 2c3f0a7..ab207c3 100644 (file)
@@ -2319,7 +2319,7 @@ bool exe_mutation_power(player_type *creature_ptr, int power)
                                        if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
                                        {
                                                GAME_TEXT m_name[MAX_NLEN];
-                                               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                                               monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                                exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_GENOCIDE, m_name);
                                        }
                                        /* Delete the monster, rather than killing it. */
index a7dbc5b..691a3b2 100644 (file)
@@ -995,7 +995,7 @@ void move_player(player_type *creature_ptr, DIRECTION dir, bool do_pickup, bool
                        /* Disturb the monster */
                        (void)set_monster_csleep(creature_ptr, g_ptr->m_idx, 0);
 
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(creature_ptr, m_name, m_ptr, 0);
 
                        if (m_ptr->ml)
                        {
@@ -1044,7 +1044,7 @@ void move_player(player_type *creature_ptr, DIRECTION dir, bool do_pickup, bool
                else if (MON_MONFEAR(riding_m_ptr))
                {
                        GAME_TEXT steed_name[MAX_NLEN];
-                       monster_desc(steed_name, riding_m_ptr, 0);
+                       monster_desc(creature_ptr, steed_name, riding_m_ptr, 0);
                        msg_format(_("%sが恐怖していて制御できない。", "%^s is too scared to control."), steed_name);
                        can_move = FALSE;
                        disturb(creature_ptr, FALSE, TRUE);
@@ -1089,7 +1089,7 @@ void move_player(player_type *creature_ptr, DIRECTION dir, bool do_pickup, bool
                if (can_move && MON_STUNNED(riding_m_ptr) && one_in_(2))
                {
                        GAME_TEXT steed_name[MAX_NLEN];
-                       monster_desc(steed_name, riding_m_ptr, 0);
+                       monster_desc(creature_ptr, steed_name, riding_m_ptr, 0);
                        msg_format(_("%sが朦朧としていてうまく動けない!", "You cannot control stunned %s!"), steed_name);
                        can_move = FALSE;
                        disturb(creature_ptr, FALSE, TRUE);
index 09c7040..d51f0a4 100644 (file)
@@ -5126,7 +5126,7 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
 
                power = r_ptr->level / 2;
 
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(creature_ptr, m_name, m_ptr, 0);
 
                if (!(r_ptr->flags1 & RF1_UNIQUE))
                {
index 52e91b5..9151184 100644 (file)
@@ -307,7 +307,7 @@ concptr do_hissatsu_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mo
                                monster_type *m_ptr = &caster_ptr->current_floor_ptr->m_list[m_idx];
                                GAME_TEXT m_name[MAX_NLEN];
 
-                               monster_desc(m_name, m_ptr, 0);
+                               monster_desc(caster_ptr, m_name, m_ptr, 0);
 
                                for (i = 0; i < 5; i++)
                                {
@@ -549,7 +549,7 @@ concptr do_hissatsu_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mo
                                        {
                                                GAME_TEXT m_name[MAX_NLEN];
 
-                                               monster_desc(m_name, m_ptr, 0);
+                                               monster_desc(caster_ptr, m_name, m_ptr, 0);
                                                msg_format(_("%sには効果がない!", "%s is unharmed!"), m_name);
                                        }
                                        else py_attack(caster_ptr, y, x, HISSATSU_SEKIRYUKA);
index 48bcfd6..92a0a9b 100644 (file)
@@ -522,7 +522,7 @@ bool destroy_area(player_type *caster_ptr, POSITION y1, POSITION x1, POSITION r,
                                        {
                                                GAME_TEXT m_name[MAX_NLEN];
 
-                                               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                                               monster_desc(caster_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                                                exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_DESTROY, m_name);
                                        }
 
@@ -884,7 +884,7 @@ bool earthquake(player_type *caster_ptr, POSITION cy, POSITION cx, POSITION r, M
                        {
                                GAME_TEXT m_name[MAX_NLEN];
                                monster_type *m_ptr = &floor_ptr->m_list[m_idx];
-                               monster_desc(m_name, m_ptr, MD_WRONGDOER_NAME);
+                               monster_desc(caster_ptr, m_name, m_ptr, MD_WRONGDOER_NAME);
                                killer = format(_("%sの起こした地震", "an earthquake caused by %s"), m_name);
                        }
                        else
@@ -971,7 +971,7 @@ bool earthquake(player_type *caster_ptr, POSITION cy, POSITION cx, POSITION r, M
                                }
                        }
 
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(caster_ptr, m_name, m_ptr, 0);
 
                        /* Scream in pain */
                        if (!ignore_unview || is_seen(m_ptr)) msg_format(_("%^sは苦痛で泣きわめいた!", "%^s wails out in pain!"), m_name);
@@ -997,7 +997,7 @@ bool earthquake(player_type *caster_ptr, POSITION cy, POSITION cx, POSITION r, M
                                        {
                                                char m2_name[MAX_NLEN];
 
-                                               monster_desc(m2_name, m_ptr, MD_INDEF_VISIBLE);
+                                               monster_desc(caster_ptr, m2_name, m_ptr, MD_INDEF_VISIBLE);
                                                exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_EARTHQUAKE, m2_name);
                                        }
                                }
index 59d06cf..a2c27bc 100644 (file)
@@ -447,7 +447,7 @@ bool fishing(player_type *creature_ptr)
        if (creature_ptr->current_floor_ptr->grid_array[y][x].m_idx)
        {
                GAME_TEXT m_name[MAX_NLEN];
-               monster_desc(m_name, &creature_ptr->current_floor_ptr->m_list[creature_ptr->current_floor_ptr->grid_array[y][x].m_idx], 0);
+               monster_desc(creature_ptr, m_name, &creature_ptr->current_floor_ptr->m_list[creature_ptr->current_floor_ptr->grid_array[y][x].m_idx], 0);
                msg_format(_("%sが邪魔だ!", "%^s is standing in your way."), m_name);
                free_turn(creature_ptr);
                return FALSE;
index 0c4d6ee..c6441eb 100644 (file)
@@ -1227,10 +1227,10 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
 
 
        /* Get the monster name (BEFORE polymorphing) */
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(caster_ptr, m_name, m_ptr, 0);
 
        /* Get the monster possessive ("his"/"her"/"its") */
-       monster_desc(m_poss, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE);
+       monster_desc(caster_ptr, m_poss, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE);
 
        if (caster_ptr->riding && (g_ptr->m_idx == caster_ptr->riding)) disturb(caster_ptr, TRUE, TRUE);
 
@@ -1748,7 +1748,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                                        else
                                        {
                                                /* Injure +/- confusion */
-                                               monster_desc(killer, m_ptr, MD_WRONGDOER_NAME);
+                                               monster_desc(caster_ptr, killer, m_ptr, MD_WRONGDOER_NAME);
                                                take_hit(caster_ptr, DAMAGE_ATTACK, dam, killer, -1);  /* has already been /3 */
                                                if (one_in_(4) && !CHECK_MULTISHADOW(caster_ptr))
                                                {
@@ -1838,7 +1838,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                                        else
                                        {
                                                /* Injure + mana drain */
-                                               monster_desc(killer, m_ptr, MD_WRONGDOER_NAME);
+                                               monster_desc(caster_ptr, killer, m_ptr, MD_WRONGDOER_NAME);
                                                if (!CHECK_MULTISHADOW(caster_ptr))
                                                {
                                                        msg_print(_("超能力パワーを吸いとられた!", "Your psychic energy is drained!"));
@@ -3125,7 +3125,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                                                /* Special message */
                                                if (see_s_msg)
                                                {
-                                                       monster_desc(killer, m_caster_ptr, 0);
+                                                       monster_desc(caster_ptr, killer, m_caster_ptr, 0);
                                                        msg_format(_("%^sは気分が良さそうだ。", "%^s appears healthier."), killer);
                                                }
                                        }
@@ -3799,7 +3799,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                        /* Give detailed messages if destroyed */
                        if (known && note)
                        {
-                               monster_desc(m_name, m_ptr, MD_TRUE_NAME);
+                               monster_desc(caster_ptr, m_name, m_ptr, MD_TRUE_NAME);
                                if (see_s_msg)
                                {
                                        msg_format("%^s%s", m_name, note);
@@ -3833,7 +3833,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                        /* Hack -- Pain message */
                        else if (see_s_msg)
                        {
-                               message_pain(g_ptr->m_idx, dam);
+                               message_pain(caster_ptr, g_ptr->m_idx, dam);
                        }
                        else
                        {
@@ -3853,7 +3853,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                {
                        char m2_name[MAX_NLEN];
 
-                       monster_desc(m2_name, m_ptr, MD_INDEF_VISIBLE);
+                       monster_desc(caster_ptr, m2_name, m_ptr, MD_INDEF_VISIBLE);
                        exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_HEAL_LEPER, m2_name);
                }
 
@@ -3884,7 +3884,7 @@ static bool project_m(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSI
                        /* Hack -- Pain message */
                        else if (known && (dam || !do_fear))
                        {
-                               message_pain(g_ptr->m_idx, dam);
+                               message_pain(caster_ptr, g_ptr->m_idx, dam);
                        }
 
                        /* Anger monsters */
@@ -4095,7 +4095,7 @@ static bool project_p(MONSTER_IDX who, player_type *target_ptr, concptr who_name
        {
                m_ptr = &target_ptr->current_floor_ptr->m_list[who];
                rlev = (((&r_info[m_ptr->r_idx])->level >= 1) ? (&r_info[m_ptr->r_idx])->level : 1);
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(target_ptr, m_name, m_ptr, 0);
 
                /* Get the monster's real name (gotten before polymorph!) */
                strcpy(killer, who_name);
@@ -5063,7 +5063,7 @@ static bool project_p(MONSTER_IDX who, player_type *target_ptr, concptr who_name
                GAME_TEXT m_name_self[80];
 
                /* hisself */
-               monster_desc(m_name_self, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE);
+               monster_desc(target_ptr, m_name_self, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE);
 
                msg_format(_("攻撃が%s自身を傷つけた!", "The attack of %s has wounded %s!"), m_name, m_name_self);
                project(target_ptr, 0, 0, m_ptr->fy, m_ptr->fx, get_damage, GF_MISSILE, PROJECT_KILL, -1);
@@ -5645,7 +5645,7 @@ bool project(player_type *caster_ptr, MONSTER_IDX who, POSITION rad, POSITION y,
        {
                x1 = caster_ptr->current_floor_ptr->m_list[who].fx;
                y1 = caster_ptr->current_floor_ptr->m_list[who].fy;
-               monster_desc(who_name, &caster_ptr->current_floor_ptr->m_list[who], MD_WRONGDOER_NAME);
+               monster_desc(caster_ptr, who_name, &caster_ptr->current_floor_ptr->m_list[who], MD_WRONGDOER_NAME);
        }
 
        else
@@ -6582,7 +6582,7 @@ bool project(player_type *caster_ptr, MONSTER_IDX who, POSITION rad, POSITION y,
        {
                GAME_TEXT m_name[MAX_NLEN];
 
-               monster_desc(m_name, &caster_ptr->current_floor_ptr->m_list[caster_ptr->riding], 0);
+               monster_desc(caster_ptr, m_name, &caster_ptr->current_floor_ptr->m_list[caster_ptr->riding], 0);
 
                if (rakubadam_m > 0)
                {
index 92cd601..88d5b56 100644 (file)
@@ -1081,7 +1081,7 @@ bool genocide_aux(player_type *caster_ptr, MONSTER_IDX m_idx, int power, bool pl
                {
                        GAME_TEXT m_name[MAX_NLEN];
 
-                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                       monster_desc(caster_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                        exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_GENOCIDE, m_name);
                }
 
@@ -1093,7 +1093,7 @@ bool genocide_aux(player_type *caster_ptr, MONSTER_IDX m_idx, int power, bool pl
                bool see_m = is_seen(m_ptr);
                GAME_TEXT m_name[MAX_NLEN];
 
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(caster_ptr, m_name, m_ptr, 0);
                if (see_m)
                {
                        msg_format(_("%^sには効果がなかった。", "%^s is unaffected."), m_name);
@@ -1315,7 +1315,7 @@ bool probing(player_type *caster_ptr)
                }
 
                /* Get "the monster" or "something" */
-               monster_desc(m_name, m_ptr, MD_IGNORE_HALLU | MD_INDEF_HIDDEN);
+               monster_desc(caster_ptr, m_name, m_ptr, MD_IGNORE_HALLU | MD_INDEF_HIDDEN);
 
                speed = m_ptr->mspeed - 110;
                if (MON_FAST(m_ptr)) speed += 10;
@@ -1424,7 +1424,7 @@ void discharge_minion(player_type *caster_ptr)
                if (r_ptr->flags1 & RF1_UNIQUE)
                {
                        GAME_TEXT m_name[MAX_NLEN];
-                       monster_desc(m_name, m_ptr, 0x00);
+                       monster_desc(caster_ptr, m_name, m_ptr, 0x00);
                        msg_format(_("%sは爆破されるのを嫌がり、勝手に自分の世界へと帰った。", "%^s resists being blasted and runs away."), m_name);
                        delete_monster_idx(i);
                        continue;
@@ -1441,7 +1441,7 @@ void discharge_minion(player_type *caster_ptr)
                {
                        GAME_TEXT m_name[MAX_NLEN];
 
-                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                       monster_desc(caster_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                        exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_BLAST, m_name);
                }
 
@@ -1508,7 +1508,7 @@ static void cave_temp_room_lite(player_type *caster_ptr)
                                if (m_ptr->ml)
                                {
                                        GAME_TEXT m_name[MAX_NLEN];
-                                       monster_desc(m_name, m_ptr, 0);
+                                       monster_desc(caster_ptr, m_name, m_ptr, 0);
                                        msg_format(_("%^sが目を覚ました。", "%^s wakes up."), m_name);
                                }
                        }
@@ -3149,7 +3149,7 @@ bool rush_attack(player_type *attacker_ptr, bool *mdeath)
                        GAME_TEXT m_name[MAX_NLEN];
 
                        /* Get the monster name (BEFORE polymorphing) */
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(attacker_ptr, m_name, m_ptr, 0);
                        msg_format(_("素早く%sの懐に入り込んだ!", "You quickly jump in and attack %s!"), m_name);
                }
 
@@ -4645,7 +4645,7 @@ bool rodeo(player_type *creature_ptr)
 
        m_ptr = &creature_ptr->current_floor_ptr->m_list[creature_ptr->riding];
        r_ptr = &r_info[m_ptr->r_idx];
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(creature_ptr, m_name, m_ptr, 0);
        msg_format(_("%sに乗った。", "You ride on %s."), m_name);
 
        if (is_pet(m_ptr)) return TRUE;
index 65b2331..1fa32fa 100644 (file)
@@ -573,7 +573,7 @@ bool teleport_level_other(player_type *caster_ptr)
        m_ptr = &caster_ptr->current_floor_ptr->m_list[target_m_idx];
        r_ptr = &r_info[m_ptr->r_idx];
        GAME_TEXT m_name[MAX_NLEN];
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(caster_ptr, m_name, m_ptr, 0);
        msg_format(_("%^sの足を指さした。", "You gesture at %^s's feet."), m_name);
 
        if ((r_ptr->flagsr & (RFR_EFF_RES_NEXU_MASK | RFR_RES_TELE)) ||
@@ -610,7 +610,7 @@ void teleport_level(player_type *creature_ptr, MONSTER_IDX m_idx)
                monster_type *m_ptr = &creature_ptr->current_floor_ptr->m_list[m_idx];
 
                /* Get the monster name (or "it") */
-               monster_desc(m_name, m_ptr, 0);
+               monster_desc(creature_ptr, m_name, m_ptr, 0);
 
                see_m = is_seen(m_ptr);
        }
@@ -749,7 +749,7 @@ void teleport_level(player_type *creature_ptr, MONSTER_IDX m_idx)
        {
                char m2_name[MAX_NLEN];
 
-               monster_desc(m2_name, m_ptr, MD_INDEF_VISIBLE);
+               monster_desc(creature_ptr, m2_name, m_ptr, MD_INDEF_VISIBLE);
                exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_TELE_LEVEL, m2_name);
        }
 
@@ -1046,7 +1046,7 @@ bool vanish_dungeon(player_type *caster_ptr)
                                /* Notice the "waking up" */
                                if (m_ptr->ml)
                                {
-                                       monster_desc(m_name, m_ptr, 0);
+                                       monster_desc(caster_ptr, m_name, m_ptr, 0);
                                        msg_format(_("%^sが目を覚ました。", "%^s wakes up."), m_name);
                                }
                        }
@@ -3203,7 +3203,7 @@ bool shock_power(player_type *caster_ptr)
        monster_type *m_ptr = &caster_ptr->current_floor_ptr->m_list[m_idx];
        monster_race *r_ptr = &r_info[m_ptr->r_idx];
        GAME_TEXT m_name[MAX_NLEN];
-       monster_desc(m_name, m_ptr, 0);
+       monster_desc(caster_ptr, m_name, m_ptr, 0);
 
        if (randint1(r_ptr->level * 3 / 2) > randint0(dam / 2) + dam / 2)
        {
index 6c958d7..daa4e57 100644 (file)
@@ -588,7 +588,7 @@ static char target_set_aux(player_type *subject_ptr, POSITION y, POSITION x, BIT
                /* Not boring */
                boring = FALSE;
 
-               monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+               monster_desc(subject_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                monster_race_track(subject_ptr, m_ptr->ap_r_idx);
                health_track(subject_ptr, g_ptr->m_idx);
                handle_stuff(subject_ptr);
@@ -1726,7 +1726,7 @@ bool get_direction(player_type *creature_ptr, DIRECTION *dp, bool allow_under, b
                        GAME_TEXT m_name[MAX_NLEN];
                        monster_type *m_ptr = &creature_ptr->current_floor_ptr->m_list[creature_ptr->riding];
 
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(creature_ptr, m_name, m_ptr, 0);
                        if (MON_CONFUSED(m_ptr))
                        {
                                msg_format(_("%sは混乱している。", "%^s is confused."), m_name);
@@ -1864,7 +1864,7 @@ bool get_rep_dir(player_type *creature_ptr, DIRECTION *dp, bool under)
                        GAME_TEXT m_name[MAX_NLEN];
                        monster_type *m_ptr = &creature_ptr->current_floor_ptr->m_list[creature_ptr->riding];
 
-                       monster_desc(m_name, m_ptr, 0);
+                       monster_desc(creature_ptr, m_name, m_ptr, 0);
                        if (MON_CONFUSED(m_ptr))
                        {
                                msg_format(_("%sは混乱している。", "%^s is confused."), m_name);
index a5b9721..015af89 100644 (file)
@@ -1534,7 +1534,7 @@ static void do_cmd_wiz_zap(player_type *caster_ptr)
                {
                        GAME_TEXT m_name[MAX_NLEN];
 
-                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                       monster_desc(caster_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                        exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_WIZ_ZAP, m_name);
                }
 
@@ -1564,7 +1564,7 @@ static void do_cmd_wiz_zap_all(player_type *caster_ptr)
                {
                        GAME_TEXT m_name[MAX_NLEN];
 
-                       monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+                       monster_desc(caster_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
                        exe_write_diary(caster_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_WIZ_ZAP, m_name);
                }