* @param see_s_msg TRUEならばメッセージを表示する
* @return なし
*/
-void initialize_effect_monster(player_type *caster_ptr, effect_monster_type *em_ptr, MONSTER_IDX who, POSITION r, POSITION y, POSITION x, HIT_POINT dam, EFFECT_ID effect_type, BIT_FLAGS flag, bool see_s_msg)
+effect_monster_type *initialize_effect_monster(player_type *caster_ptr, effect_monster_type *em_ptr, MONSTER_IDX who, POSITION r, POSITION y, POSITION x, HIT_POINT dam, EFFECT_ID effect_type, BIT_FLAGS flag, bool see_s_msg)
{
substitute_effect_monster(em_ptr, who, r, y, x, dam, effect_type, flag, see_s_msg);
em_ptr->note = NULL;
em_ptr->note_dies = extract_note_dies(real_r_idx(em_ptr->m_ptr));
em_ptr->caster_lev = (em_ptr->who > 0) ? r_info[em_ptr->m_caster_ptr->r_idx].level : (caster_ptr->lev * 2);
+ return em_ptr;
}
bool see_s_msg;
} effect_monster_type;
-void initialize_effect_monster(player_type *caster_ptr, effect_monster_type *em_ptr, MONSTER_IDX who, POSITION r, POSITION y, POSITION x, HIT_POINT dam, EFFECT_ID effect_type, BIT_FLAGS flag, bool see_s_msg);
+effect_monster_type *initialize_effect_monster(player_type *caster_ptr, effect_monster_type *em_ptr, MONSTER_IDX who, POSITION r, POSITION y, POSITION x, HIT_POINT dam, EFFECT_ID effect_type, BIT_FLAGS flag, bool see_s_msg);
/*!
- * @brief モンスター効果の後処理 (ペット関係、グローバル変数更新)
+ * @brief モンスター効果の後処理 (ペット関係、記念撮影、グローバル変数更新)
* @param caster_ptr プレーヤーへの参照ポインタ
* @param em_ptr モンスター効果構造体への参照ポインタ
* @return なし
bool affect_monster(player_type *caster_ptr, MONSTER_IDX who, POSITION r, POSITION y, POSITION x, HIT_POINT dam, EFFECT_ID effect_type, BIT_FLAGS flag, bool see_s_msg)
{
effect_monster_type tmp_effect;
- effect_monster_type *em_ptr = &tmp_effect;
- initialize_effect_monster(caster_ptr, em_ptr, who, r, y, x, dam, effect_type, flag, see_s_msg);
+ effect_monster_type *em_ptr = initialize_effect_monster(caster_ptr, &tmp_effect, who, r, y, x, dam, effect_type, flag, see_s_msg);
if (!is_never_effect(caster_ptr, em_ptr)) return FALSE;
decide_spell_result_description(caster_ptr, em_ptr);