diff options
Diffstat (limited to 'src/map/party.c')
-rw-r--r-- | src/map/party.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/map/party.c b/src/map/party.c index cacd016e4..629bf9227 100644 --- a/src/map/party.c +++ b/src/map/party.c @@ -963,7 +963,9 @@ int party_exp_share(struct party_data* p, struct block_list* src, unsigned int b for (i = 0; i < c; i++) { #ifdef RENEWAL_EXP if( !(src && src->type == BL_MOB && ((TBL_MOB*)src)->db->mexp) ){ - int rate = pc->level_penalty_mod(sd[i], (TBL_MOB*)src, 1); + struct mob_data *md = (TBL_MOB*)src; + int rate = pc->level_penalty_mod(md->level - (sd[i])->status.base_level, md->status.race, md->status.mode, 1); + base_exp = (unsigned int)cap_value(base_exp_bonus * rate / 100, 1, UINT_MAX); job_exp = (unsigned int)cap_value(job_exp_bonus * rate / 100, 1, UINT_MAX); } |