diff options
Diffstat (limited to 'src/map/pc.c')
-rw-r--r-- | src/map/pc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index e28d0545a..5fc4e3ddf 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -4153,6 +4153,9 @@ int pc_takeitem(struct map_session_data *sd,struct flooritem_data *fitem) if(!check_distance_bl(&fitem->bl, &sd->bl, 2) && sd->ud.skill_id!=BS_GREED) return 0; // Distance is too far + if( pc_has_permission(sd,PC_PERM_DISABLE_PICK_UP) ) + return 0; + if (sd->status.party_id) p = party->search(sd->status.party_id); @@ -6029,6 +6032,9 @@ bool pc_gainexp(struct map_session_data *sd, struct block_list *src, unsigned in if(!battle_config.pvp_exp && map->list[sd->bl.m].flag.pvp) // [MouseJstr] return false; // no exp on pvp maps + if( pc_has_permission(sd,PC_PERM_DISABLE_EXP) ) + return false; + if(sd->status.guild_id>0) base_exp-=guild->payexp(sd,base_exp); |