diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-02-02 21:26:53 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-02-02 21:26:53 +0000 |
commit | 68503609ec28be3fa2c4eb0d66b0ce0ea8815cee (patch) | |
tree | 9f8c79c6424a9030baf7b6afce60bdbe2dfb1176 /src/map/mob.c | |
parent | cba97f4deb4a9bb62da4ab7748926fd5319090d0 (diff) | |
download | hercules-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.c | 7 |
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)
|