summaryrefslogtreecommitdiff
path: root/src/map/mob.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-02-02 21:26:53 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-02-02 21:26:53 +0000
commit68503609ec28be3fa2c4eb0d66b0ce0ea8815cee (patch)
tree9f8c79c6424a9030baf7b6afce60bdbe2dfb1176 /src/map/mob.c
parentcba97f4deb4a9bb62da4ab7748926fd5319090d0 (diff)
downloadhercules-68503609ec28be3fa2c4eb0d66b0ce0ea8815cee.tar.gz
hercules-68503609ec28be3fa2c4eb0d66b0ce0ea8815cee.tar.bz2
hercules-68503609ec28be3fa2c4eb0d66b0ce0ea8815cee.tar.xz
hercules-68503609ec28be3fa2c4eb0d66b0ce0ea8815cee.zip
- Improved the NPC timer system to enable to have multiple timers going on at a time with different players attached to each. Now npc event timers are of two types: attached or global. The global timers don't have a player attached and can be started/halted by anyone. The character timers have a player attached, and they can only be stopped by a script that has the same player attached.
- Now player attached scripts will auto-abort when the atteched player quits the map server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5167 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/mob.c')
-rw-r--r--src/map/mob.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/map/mob.c b/src/map/mob.c
index 25806b76b..6303f3d4c 100644
--- a/src/map/mob.c
+++ b/src/map/mob.c
@@ -620,8 +620,6 @@ int mob_can_reach(struct mob_data *md,struct block_list *bl,int range, int state
if( range>0 && !check_distance_bl(&md->bl, bl, range))
return 0;
- dx=abs(bl->x - md->bl.x);
- dy=abs(bl->y - md->bl.y);
// Obstacle judging
wpd.path_len=0;
wpd.path_pos=0;
@@ -629,10 +627,9 @@ int mob_can_reach(struct mob_data *md,struct block_list *bl,int range, int state
if(path_search(&wpd,md->bl.m,md->bl.x,md->bl.y,bl->x,bl->y,easy)!=-1)
return 1;
- if(bl->type!=BL_PC && bl->type!=BL_MOB)
- return 0;
-
// It judges whether it can adjoin or not.
+ dx=abs(bl->x - md->bl.x);
+ dy=abs(bl->y - md->bl.y);
dx=(dx>0)?1:((dx<0)?-1:0);
dy=(dy>0)?1:((dy<0)?-1:0);
if(path_search(&wpd,md->bl.m,md->bl.x,md->bl.y,bl->x-dx,bl->y-dy,easy)!=-1)