From a1e8e737d54ea0c63c0b0780fa905c8302533730 Mon Sep 17 00:00:00 2001 From: Hourier Date: Mon, 6 Jan 2020 21:12:09 +0900 Subject: [PATCH] =?utf8?q?[Refactor]=20#38997=20aggravate=5Fmonsters()=20?= =?utf8?q?=E3=81=ABplayer=5Ftype=20*=20=E5=BC=95=E6=95=B0=E3=82=92?= =?utf8?q?=E8=BF=BD=E5=8A=A0=20/=20Added=20player=5Ftype=20*=20argument=20?= =?utf8?q?to=20aggravate=5Fmonsters()?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/chest.c | 2 +- src/cmd/cmd-activate.c | 2 +- src/cmd/cmd-mane.c | 3 ++- src/cmd/cmd-read.c | 2 +- src/cmd/cmd-spell.c | 3 ++- src/cmd/cmd-zaprod.c | 2 +- src/mspells3.c | 2 +- src/mspells4.c | 2 +- src/mutation.c | 2 +- src/realm-hissatsu.c | 2 +- src/realm-nature.c | 2 +- src/spells.h | 2 +- src/spells2.c | 16 ++++++++-------- src/spells3.c | 2 +- src/trap.c | 4 ++-- 15 files changed, 25 insertions(+), 23 deletions(-) diff --git a/src/chest.c b/src/chest.c index 989c41aec..f7532d6e5 100644 --- a/src/chest.c +++ b/src/chest.c @@ -312,7 +312,7 @@ void chest_trap(player_type *target_ptr, POSITION y, POSITION x, OBJECT_IDX o_id if (trap & (CHEST_ALARM)) { msg_print(_("けたたましい音が鳴り響いた!", "An alarm sounds!")); - aggravate_monsters(0); + aggravate_monsters(target_ptr, 0); } /* Explode */ diff --git a/src/cmd/cmd-activate.c b/src/cmd/cmd-activate.c index d9f471894..42ac2b546 100644 --- a/src/cmd/cmd-activate.c +++ b/src/cmd/cmd-activate.c @@ -1147,7 +1147,7 @@ bool activate_artifact(player_type *user_ptr, object_type *o_ptr) { msg_format(_("%sは不快な物音を立てた。", "The %s sounds an unpleasant noise."), name); } - aggravate_monsters(0); + aggravate_monsters(user_ptr, 0); break; } diff --git a/src/cmd/cmd-mane.c b/src/cmd/cmd-mane.c index 54a490f28..8f1270fb3 100644 --- a/src/cmd/cmd-mane.c +++ b/src/cmd/cmd-mane.c @@ -261,6 +261,7 @@ static int get_mane_power(player_type *caster_ptr, int *sn, bool baigaesi) /*! * @brief ものまね処理の発動 / * do_cmd_cast calls this function if the player's class is 'imitator'. + * @param caster_ptr プレーヤーへの参照ポインタ * @param spell 発動するモンスター攻撃のID * @return 処理を実行したらTRUE、キャンセルした場合FALSEを返す。 */ @@ -280,7 +281,7 @@ static bool use_mane(player_type *caster_ptr, int spell) case MS_SHRIEK: msg_print(_("かん高い金切り声をあげた。", "You make a high pitched shriek.")); - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); break; case MS_XXX1: diff --git a/src/cmd/cmd-read.c b/src/cmd/cmd-read.c index 6f133d672..7841a778a 100644 --- a/src/cmd/cmd-read.c +++ b/src/cmd/cmd-read.c @@ -94,7 +94,7 @@ void exe_read(player_type *creature_ptr, INVENTORY_IDX item, bool known) case SV_SCROLL_AGGRAVATE_MONSTER: { msg_print(_("カン高くうなる様な音が辺りを覆った。", "There is a high pitched humming noise.")); - aggravate_monsters(0); + aggravate_monsters(creature_ptr, 0); ident = TRUE; break; } diff --git a/src/cmd/cmd-spell.c b/src/cmd/cmd-spell.c index c45b741e0..ba8abbdcd 100644 --- a/src/cmd/cmd-spell.c +++ b/src/cmd/cmd-spell.c @@ -1029,6 +1029,7 @@ void do_cmd_study(player_type *caster_ptr) /*! * @brief 魔法を詠唱するコマンドのメインルーチン / * Cast a spell + * @param caster_ptr プレーヤーへの参照ポインタ * @return なし */ void do_cmd_cast(player_type *caster_ptr) @@ -1253,7 +1254,7 @@ void do_cmd_cast(player_type *caster_ptr) else if ((o_ptr->tval == TV_MUSIC_BOOK) && (randint1(200) < spell)) { msg_print(_("いやな音が響いた", "An infernal sound echoed.")); - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); } if (randint1(100) >= chance) chg_virtue(caster_ptr, V_CHANCE, -1); diff --git a/src/cmd/cmd-zaprod.c b/src/cmd/cmd-zaprod.c index cd1b576b7..aeb116ebf 100644 --- a/src/cmd/cmd-zaprod.c +++ b/src/cmd/cmd-zaprod.c @@ -249,7 +249,7 @@ int rod_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION d case SV_ROD_AGGRAVATE: { - aggravate_monsters(0); + aggravate_monsters(creature_ptr, 0); ident = TRUE; break; } diff --git a/src/mspells3.c b/src/mspells3.c index dd81a1529..c9852ce6c 100644 --- a/src/mspells3.c +++ b/src/mspells3.c @@ -852,7 +852,7 @@ static bool cast_learned_spell(player_type *caster_ptr, int spell, bool success) { case MS_SHRIEK: msg_print(_("かん高い金切り声をあげた。", "You make a high pitched shriek.")); - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); break; case MS_XXX1: break; diff --git a/src/mspells4.c b/src/mspells4.c index f25827da8..b1afb322c 100644 --- a/src/mspells4.c +++ b/src/mspells4.c @@ -174,7 +174,7 @@ void spell_RF4_SHRIEK(MONSTER_IDX m_idx, player_type *target_ptr, MONSTER_IDX t_ if (TARGET_TYPE == MONSTER_TO_PLAYER) { - aggravate_monsters(m_idx); + aggravate_monsters(target_ptr, m_idx); } else if (TARGET_TYPE == MONSTER_TO_MONSTER) { diff --git a/src/mutation.c b/src/mutation.c index 6eed30e2a..cf5d7369f 100644 --- a/src/mutation.c +++ b/src/mutation.c @@ -2172,7 +2172,7 @@ bool exe_mutation_power(player_type *creature_ptr, int power) case MUT1_SHRIEK: stop_mouth(creature_ptr); (void)fire_ball(creature_ptr, GF_SOUND, 0, 2 * lvl, 8); - (void)aggravate_monsters(0); + (void)aggravate_monsters(creature_ptr, 0); break; case MUT1_ILLUMINE: diff --git a/src/realm-hissatsu.c b/src/realm-hissatsu.c index 2331bbd04..a6ee7022e 100644 --- a/src/realm-hissatsu.c +++ b/src/realm-hissatsu.c @@ -629,7 +629,7 @@ concptr do_hissatsu_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mo { msg_print(_("雄叫びをあげた!", "You roar out!")); project_all_los(caster_ptr, GF_SOUND, randint1(plev * 3)); - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); } break; diff --git a/src/realm-nature.c b/src/realm-nature.c index 2d2c7df13..34e656d24 100644 --- a/src/realm-nature.c +++ b/src/realm-nature.c @@ -291,7 +291,7 @@ concptr do_nature_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode { int power = plev; if (info) return info_power(power); - if (cast) slow_monsters(caster_ptr, lev); + if (cast) slow_monsters(caster_ptr, plev); } break; diff --git a/src/spells.h b/src/spells.h index 1a28c7395..47e4f65bd 100644 --- a/src/spells.h +++ b/src/spells.h @@ -175,7 +175,7 @@ extern bool wall_stone(void); extern bool speed_monsters(player_type *caster_ptr); extern bool slow_monsters(player_type *caster_ptr, int power); extern bool sleep_monsters(player_type *caster_ptr, int power); -extern void aggravate_monsters(MONSTER_IDX who); +extern void aggravate_monsters(player_type *caster_ptr, MONSTER_IDX who); extern bool genocide_aux(player_type *caster_ptr, MONSTER_IDX m_idx, int power, bool player_cast, int dam_side, concptr spell_name); extern bool symbol_genocide(player_type *caster_ptr, int power, bool player_cast); extern bool mass_genocide(player_type *caster_ptr, int power, bool player_cast); diff --git a/src/spells2.c b/src/spells2.c index d4ea175d4..4cbcec6d7 100644 --- a/src/spells2.c +++ b/src/spells2.c @@ -1030,16 +1030,16 @@ bool crusade(player_type *caster_ptr) * @param who 怒らせる原因を起こしたモンスター(0ならばプレイヤー) * @return なし */ -void aggravate_monsters(MONSTER_IDX who) +void aggravate_monsters(player_type *caster_ptr, MONSTER_IDX who) { MONSTER_IDX i; bool sleep = FALSE; bool speed = FALSE; /* Aggravate everyone nearby */ - for (i = 1; i < p_ptr->current_floor_ptr->m_max; i++) + for (i = 1; i < caster_ptr->current_floor_ptr->m_max; i++) { - monster_type *m_ptr = &p_ptr->current_floor_ptr->m_list[i]; + monster_type *m_ptr = &caster_ptr->current_floor_ptr->m_list[i]; if (!monster_is_valid(m_ptr)) continue; /* Skip aggravating monster (or player) */ @@ -1058,7 +1058,7 @@ void aggravate_monsters(MONSTER_IDX who) } /* Speed up monsters in line of sight */ - if (player_has_los_bold(p_ptr, m_ptr->fy, m_ptr->fx)) + if (player_has_los_bold(caster_ptr, m_ptr->fy, m_ptr->fx)) { if (!is_pet(m_ptr)) { @@ -1070,7 +1070,7 @@ void aggravate_monsters(MONSTER_IDX who) if (speed) msg_print(_("付近で何かが突如興奮したような感じを受けた!", "You feel a sudden stirring nearby!")); else if (sleep) msg_print(_("何かが突如興奮したような騒々しい音が遠くに聞こえた!", "You hear a sudden stirring in the distance!")); - if (p_ptr->riding) p_ptr->update |= PU_BONUS; + if (caster_ptr->riding) caster_ptr->update |= PU_BONUS; } @@ -2725,7 +2725,7 @@ bool activate_ty_curse(player_type *target_ptr, bool stop_ty, int *count) if (!one_in_(6)) break; case 1: case 2: case 3: case 16: case 17: - aggravate_monsters(0); + aggravate_monsters(target_ptr, 0); if (!one_in_(6)) break; case 4: case 5: case 6: (*count) += activate_hi_summon(target_ptr->y, target_ptr->x, FALSE); @@ -3409,7 +3409,7 @@ void wild_magic(player_type *caster_ptr, int spell) case 23: case 24: case 25: - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); break; case 26: earthquake(caster_ptr, caster_ptr->y, caster_ptr->x, 5, 0); @@ -3894,7 +3894,7 @@ void cast_shuffle(player_type *caster_ptr) else if (die < 22) { msg_print(_("《不調和の剣》だ。", "It's the swords of discord.")); - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); } else if (die < 26) { diff --git a/src/spells3.c b/src/spells3.c index f2c037442..f8fd7175d 100644 --- a/src/spells3.c +++ b/src/spells3.c @@ -3441,7 +3441,7 @@ void blood_curse_to_enemy(player_type *caster_ptr, MONSTER_IDX m_idx) project(caster_ptr, 0, 7, m_ptr->fy, m_ptr->fx, 50, GF_DISINTEGRATE, curse_flg, -1); if (!one_in_(6)) break; case 12: case 13: case 14: case 15: case 16: - aggravate_monsters(0); + aggravate_monsters(caster_ptr, 0); if (!one_in_(6)) break; case 17: case 18: count += activate_hi_summon(m_ptr->fy, m_ptr->fx, TRUE); diff --git a/src/trap.c b/src/trap.c index 93acb2867..05a91b85c 100644 --- a/src/trap.c +++ b/src/trap.c @@ -587,7 +587,7 @@ void hit_trap(player_type *trapped_ptr, bool break_trap) { msg_print(_("けたたましい音が鳴り響いた!", "An alarm sounds!")); - aggravate_monsters(0); + aggravate_monsters(trapped_ptr, 0); break; } @@ -598,7 +598,7 @@ void hit_trap(player_type *trapped_ptr, bool break_trap) (void)project(trapped_ptr, 0, 3, y, x, 0, GF_DISINTEGRATE, PROJECT_GRID | PROJECT_HIDE, -1); (void)project(trapped_ptr, 0, 3, y, x - 4, 0, GF_DISINTEGRATE, PROJECT_GRID | PROJECT_HIDE, -1); (void)project(trapped_ptr, 0, 3, y, x + 4, 0, GF_DISINTEGRATE, PROJECT_GRID | PROJECT_HIDE, -1); - aggravate_monsters(0); + aggravate_monsters(trapped_ptr, 0); break; } -- 2.11.0