|
@@ -3006,8 +3006,12 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type)
|
|
|
else if (sd->avail_quests)
|
|
|
quest_update_objective(sd, md->mob_id);
|
|
|
|
|
|
- if (achievement_db.mobexists(md->mob_id))
|
|
|
- achievement_update_objective(sd, AG_BATTLE, 1, md->mob_id);
|
|
|
+ if (achievement_db.mobexists(md->mob_id)) {
|
|
|
+ if (battle_config.achievement_mob_share > 0 && sd->status.party_id > 0)
|
|
|
+ map_foreachinallrange(achievement_update_objective_sub, &md->bl, AREA_SIZE, BL_PC, sd->status.party_id, md->mob_id);
|
|
|
+ else
|
|
|
+ achievement_update_objective(sd, AG_BATTLE, 1, md->mob_id);
|
|
|
+ }
|
|
|
|
|
|
// The master or Mercenary can increase the kill count
|
|
|
if (sd->md && src && (src->type == BL_PC || src->type == BL_MER) && mob_db(md->mob_id)->lv > sd->status.base_level / 2)
|