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)
}
/* 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;
/*!
* @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;
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];
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 */