diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/atcommand.h | 7 | ||||
-rw-r--r-- | src/map/mob.c | 3 | ||||
-rw-r--r-- | src/map/script.c | 5 |
3 files changed, 13 insertions, 2 deletions
diff --git a/src/map/atcommand.h b/src/map/atcommand.h index dfcbd2de7..d18e8e923 100644 --- a/src/map/atcommand.h +++ b/src/map/atcommand.h @@ -4,6 +4,13 @@ #ifndef _ATCOMMAND_H_ #define _ATCOMMAND_H_ +//This is the distance at which @autoloot works, +//if the item drops farther from the player than this, +//it will not be autolooted. [Skotlex] +#ifndef AUTOLOOT_DISTANCE + #define AUTOLOOT_DISTANCE AREA_SIZE +#endif + enum AtCommandType { AtCommand_None = -1, AtCommand_Broadcast = 0, diff --git a/src/map/mob.c b/src/map/mob.c index 4cde44b84..c56e4362f 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -1494,7 +1494,8 @@ static void mob_item_drop(struct mob_data *md, struct item_drop_list *dlist, str } if (dlist->first_sd && dlist->first_sd->state.autoloot && - (drop_rate <= dlist->first_sd->state.autoloot) + drop_rate <= dlist->first_sd->state.autoloot && + check_distance_blxy(&dlist->first_sd->bl, dlist->x, dlist->y, AUTOLOOT_DISTANCE) ) { //Autoloot. if (party_share_loot( dlist->first_sd->status.party_id? diff --git a/src/map/script.c b/src/map/script.c index 5d7c3154d..e75456b63 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -10663,7 +10663,7 @@ BUILDIN_FUNC(recovery) /*========================================== * Get your pet info: getpetinfo(n) * n -> 0:pet_id 1:pet_class 2:pet_name - 3:friendly 4:hungry + * 3:friendly 4:hungry, 5: rename flag. *------------------------------------------ */ BUILDIN_FUNC(getpetinfo) @@ -10693,6 +10693,9 @@ BUILDIN_FUNC(getpetinfo) case 4: script_pushint(st,pd->pet.hungry); break; + case 5: + script_pushint(st,pd->pet.rename_flag); + break; default: script_pushint(st,0); break; |