OSDN Git Service

[Refactor] #38997 monster_drop_carried_objects() にplayer_type * 引数追加 / Added player_t...
authorHourier <hourier@users.sourceforge.jp>
Sat, 18 Jan 2020 04:52:24 +0000 (13:52 +0900)
committerHourier <hourier@users.sourceforge.jp>
Sat, 18 Jan 2020 14:01:52 +0000 (23:01 +0900)
src/cmd/cmd-pet.c
src/monster.h
src/monster1.c
src/monster2.c

index e55f23f..d610b7c 100644 (file)
@@ -900,7 +900,7 @@ void do_cmd_pet(player_type *creature_ptr)
 
                                if (is_pet(m_ptr))
                                {
-                                       monster_drop_carried_objects(m_ptr);
+                                       monster_drop_carried_objects(creature_ptr, m_ptr);
                                }
                        }
                }
index 5a3f33d..3bc1dd4 100644 (file)
@@ -508,7 +508,7 @@ extern void update_smart_learn(player_type *player_ptr, MONSTER_IDX m_idx, int w
 
 extern void choose_new_monster(player_type *player_ptr, MONSTER_IDX m_idx, bool born, MONRACE_IDX r_idx);
 extern SPEED get_mspeed(player_type *player_ptr, monster_race *r_ptr);
-extern void monster_drop_carried_objects(monster_type *m_ptr);
+extern void monster_drop_carried_objects(player_type *player_ptr, monster_type *m_ptr);
 
 #define is_friendly(A) \
         (bool)(((A)->smart & SM_FRIENDLY) ? TRUE : FALSE)
index d9fc83d..c4014dc 100644 (file)
@@ -2686,7 +2686,7 @@ void monster_death(player_type *player_ptr, MONSTER_IDX m_idx, bool drop_item)
        }
 
        /* Drop objects being carried */
-       monster_drop_carried_objects(m_ptr);
+       monster_drop_carried_objects(player_ptr, m_ptr);
 
        if (r_ptr->flags1 & RF1_DROP_GOOD) mo_mode |= AM_GOOD;
        if (r_ptr->flags1 & RF1_DROP_GREAT) mo_mode |= AM_GREAT;
index 95d377a..7878548 100644 (file)
@@ -4061,10 +4061,11 @@ void update_smart_learn(player_type *player_ptr, MONSTER_IDX m_idx, int what)
 
 /*!
  * @brief モンスターが盗みや拾いで確保していたアイテムを全てドロップさせる / Drop all items carried by a monster
+ * @param player_ptr プレーヤーへの参照ポインタ
  * @param m_ptr モンスター参照ポインタ
  * @return なし
  */
-void monster_drop_carried_objects(monster_type *m_ptr)
+void monster_drop_carried_objects(player_type *player_ptr, monster_type *m_ptr)
 {
        OBJECT_IDX this_o_idx, next_o_idx = 0;
        object_type forge;
@@ -4072,7 +4073,7 @@ void monster_drop_carried_objects(monster_type *m_ptr)
        object_type *q_ptr;
 
        /* Drop objects being carried */
-       floor_type *floor_ptr = p_ptr->current_floor_ptr;
+       floor_type *floor_ptr = player_ptr->current_floor_ptr;
        for (this_o_idx = m_ptr->hold_o_idx; this_o_idx; this_o_idx = next_o_idx)
        {
                o_ptr = &floor_ptr->o_list[this_o_idx];
@@ -4087,7 +4088,7 @@ void monster_drop_carried_objects(monster_type *m_ptr)
                delete_object_idx(floor_ptr, this_o_idx);
 
                /* Drop it */
-               (void)drop_near(p_ptr, q_ptr, -1, m_ptr->fy, m_ptr->fx);
+               (void)drop_near(player_ptr, q_ptr, -1, m_ptr->fy, m_ptr->fx);
        }
 
        /* Forget objects */