diff options
Diffstat (limited to 'src/map/pc.c')
-rw-r--r-- | src/map/pc.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 9984cb7d7..48172ba5c 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -9609,14 +9609,9 @@ int pc_del_charm(struct map_session_data *sd,int count,int type) * Renewal EXP/Itemdrop rate modifier base on level penalty * 1=exp 2=itemdrop *------------------------------------------*/ -int pc_level_penalty_mod(struct map_session_data *sd, struct mob_data *md, int type) +int pc_level_penalty_mod(int diff, unsigned char race, unsigned short mode, int type) { - int diff, rate = 100, i; - - nullpo_ret(sd); - nullpo_ret(md); - - diff = md->level - sd->status.base_level; + int rate = 100, i; if( diff < 0 ) diff = MAX_LEVEL + ( ~diff + 1 ); @@ -9624,8 +9619,8 @@ int pc_level_penalty_mod(struct map_session_data *sd, struct mob_data *md, int t for(i=0; i<RC_MAX; i++){ int tmp; - if( md->status.race != i ){ - if( md->status.mode&MD_BOSS && i < RC_BOSS ) + if( race != i ){ + if( mode&MD_BOSS && i < RC_BOSS ) i = RC_BOSS; else if( i <= RC_BOSS ) continue; |