From 38c26a71801a40ea4dfbf409477c528d00d441fa Mon Sep 17 00:00:00 2001 From: Hourier Date: Sat, 18 Jan 2020 13:29:21 +0900 Subject: [PATCH] =?utf8?q?[Refactor]=20#38997=20monster=5F*()=20=E3=81=ABp?= =?utf8?q?layer=5Ftype=20*=20=E5=BC=95=E6=95=B0=E8=BF=BD=E5=8A=A0=20/=20Ad?= =?utf8?q?ded=20player=5Ftype=20*=20argument=20to=20monster=5F*()?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/cmd/cmd-basic.c | 6 ++--- src/cmd/cmd-dump.c | 2 +- src/cmd/cmd-mane.c | 2 +- src/cmd/cmd-pet.c | 16 ++++++------ src/combat/melee1.c | 28 ++++++++++---------- src/combat/shoot.c | 12 ++++----- src/core.c | 12 ++++----- src/files.c | 2 +- src/floor-save.c | 8 +++--- src/mind.c | 2 +- src/monster-process.c | 18 ++++++------- src/monster-status.c | 22 ++++++++-------- src/monster.h | 6 ++--- src/monster1.c | 6 ++--- src/monster2.c | 30 +++++++++++---------- src/mspells1.c | 2 +- src/mspells2.c | 4 +-- src/mspells3.c | 2 +- src/mspells4.c | 72 +++++++++++++++++++++++++-------------------------- src/mutation.c | 2 +- src/player-move.c | 6 ++--- src/player-status.c | 2 +- src/realm-hissatsu.c | 4 +-- src/spells-floor.c | 8 +++--- src/spells-status.c | 2 +- src/spells1.c | 26 +++++++++---------- src/spells2.c | 16 ++++++------ src/spells3.c | 10 +++---- src/targeting.c | 6 ++--- src/wizard2.c | 4 +-- 30 files changed, 170 insertions(+), 168 deletions(-) diff --git a/src/cmd/cmd-basic.c b/src/cmd/cmd-basic.c index 5ba7bd7aa..64480c327 100644 --- a/src/cmd/cmd-basic.c +++ b/src/cmd/cmd-basic.c @@ -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]); } diff --git a/src/cmd/cmd-dump.c b/src/cmd/cmd-dump.c index df8289ae5..61a449d7e 100644 --- a/src/cmd/cmd-dump.c +++ b/src/cmd/cmd-dump.c @@ -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)); } diff --git a/src/cmd/cmd-mane.c b/src/cmd/cmd-mane.c index 0664bb1ea..74e4fbd5e 100644 --- a/src/cmd/cmd-mane.c +++ b/src/cmd/cmd-mane.c @@ -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)) diff --git a/src/cmd/cmd-pet.c b/src/cmd/cmd-pet.c index 04b7b0d75..e55f23ff9 100644 --- a/src/cmd/cmd-pet.c +++ b/src/cmd/cmd-pet.c @@ -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 diff --git a/src/combat/melee1.c b/src/combat/melee1.c index 250fd1259..34bfff530 100644 --- a/src/combat/melee1.c +++ b/src/combat/melee1.c @@ -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)) diff --git a/src/combat/shoot.c b/src/combat/shoot.c index 6b21d23c2..faef07bbe 100644 --- a/src/combat/shoot.c +++ b/src/combat/shoot.c @@ -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; diff --git a/src/core.c b/src/core.c index c21eec61b..1b6af4d4e 100644 --- a/src/core.c +++ b/src/core.c @@ -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); } } diff --git a/src/files.c b/src/files.c index c64d4ce76..92cba5304 100644 --- a/src/files.c +++ b/src/files.c @@ -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); } diff --git a/src/floor-save.c b/src/floor-save.c index 9652fecd0..ffaef6117 100644 --- a/src/floor-save.c +++ b/src/floor-save.c @@ -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); } diff --git a/src/mind.c b/src/mind.c index d64aa28cb..68efa6af7 100644 --- a/src/mind.c +++ b/src/mind.c @@ -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; diff --git a/src/monster-process.c b/src/monster-process.c index ac1f03f03..c12463008 100644 --- a/src/monster-process.c +++ b/src/monster-process.c @@ -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); } diff --git a/src/monster-status.c b/src/monster-status.c index d8029e94a..34000370f 100644 --- a/src/monster-status.c +++ b/src/monster-status.c @@ -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)) diff --git a/src/monster.h b/src/monster.h index b4d2faf9a..02f35071e 100644 --- a/src/monster.h +++ b/src/monster.h @@ -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); diff --git a/src/monster1.c b/src/monster1.c index 846932766..0daa60dc8 100644 --- a/src/monster1.c +++ b/src/monster1.c @@ -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); } diff --git a/src/monster2.c b/src/monster2.c index 07917528a..ac823f8e2 100644 --- a/src/monster2.c +++ b/src/monster2.c @@ -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 { diff --git a/src/mspells1.c b/src/mspells1.c index 97444a559..ce86da663 100644 --- a/src/mspells1.c +++ b/src/mspells1.c @@ -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 diff --git a/src/mspells2.c b/src/mspells2.c index 449e50758..cc632dd4f 100644 --- a/src/mspells2.c +++ b/src/mspells2.c @@ -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)]; diff --git a/src/mspells3.c b/src/mspells3.c index bdc19402a..661daf799 100644 --- a/src/mspells3.c +++ b/src/mspells3.c @@ -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)) diff --git a/src/mspells4.c b/src/mspells4.c index c5479d4f5..01f1f01ad 100644 --- a/src/mspells4.c +++ b/src/mspells4.c @@ -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); diff --git a/src/mutation.c b/src/mutation.c index 2c3f0a704..ab207c3f0 100644 --- a/src/mutation.c +++ b/src/mutation.c @@ -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. */ diff --git a/src/player-move.c b/src/player-move.c index a7dbc5bff..691a3b2ee 100644 --- a/src/player-move.c +++ b/src/player-move.c @@ -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); diff --git a/src/player-status.c b/src/player-status.c index 09c7040c3..d51f0a46d 100644 --- a/src/player-status.c +++ b/src/player-status.c @@ -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)) { diff --git a/src/realm-hissatsu.c b/src/realm-hissatsu.c index 52e91b534..91511843f 100644 --- a/src/realm-hissatsu.c +++ b/src/realm-hissatsu.c @@ -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); diff --git a/src/spells-floor.c b/src/spells-floor.c index 48bcfd64f..92a0a9b71 100644 --- a/src/spells-floor.c +++ b/src/spells-floor.c @@ -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); } } diff --git a/src/spells-status.c b/src/spells-status.c index 59d06cf4d..a2c27bcb5 100644 --- a/src/spells-status.c +++ b/src/spells-status.c @@ -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; diff --git a/src/spells1.c b/src/spells1.c index 0c4d6ee67..c6441ebb1 100644 --- a/src/spells1.c +++ b/src/spells1.c @@ -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) { diff --git a/src/spells2.c b/src/spells2.c index 92cd601e7..88d5b567c 100644 --- a/src/spells2.c +++ b/src/spells2.c @@ -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; diff --git a/src/spells3.c b/src/spells3.c index 65b23318d..1fa32fa17 100644 --- a/src/spells3.c +++ b/src/spells3.c @@ -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) { diff --git a/src/targeting.c b/src/targeting.c index 6c958d7df..daa4e57d2 100644 --- a/src/targeting.c +++ b/src/targeting.c @@ -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); diff --git a/src/wizard2.c b/src/wizard2.c index a5b9721e5..015af898e 100644 --- a/src/wizard2.c +++ b/src/wizard2.c @@ -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); } -- 2.11.0