summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
Diffstat (limited to 'src/map')
-rw-r--r--src/map/atcommand.h7
-rw-r--r--src/map/mob.c3
-rw-r--r--src/map/script.c5
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;