From b63504c6445eed61f637f9f9e3dee769ac7dcc7c Mon Sep 17 00:00:00 2001 From: celest Date: Sat, 4 Dec 2004 04:17:27 +0000 Subject: Modified battle_range to check if sd is null first git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@445 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog.txt | 1 + src/map/battle.c | 12 ++++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Changelog.txt b/Changelog.txt index 7ad7d87ab..9c7e10008 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -4,6 +4,7 @@ Date Added * Fixed a battle_range crash [MouseJstr] * Updated Stone Curse, Soul Drain, Auto Berserk [celest] * Added a fix for MVP exp being multiplied twice by Gengar + * Modified battle_range to check for sd first [celest] 12/2 * Fixed double login feature, resets online users when map connects to char [Wizputer] diff --git a/src/map/battle.c b/src/map/battle.c index be22723d3..6b1d68625 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -4949,7 +4949,7 @@ int battle_check_range(struct block_list *src,struct block_list *bl,int range) int dx,dy; struct walkpath_data wpd; int arange; - + nullpo_retr(0, src); nullpo_retr(0, bl); @@ -4962,10 +4962,14 @@ int battle_check_range(struct block_list *src,struct block_list *bl,int range) if( range>0 && range < arange ) {// 遠すぎる // be lenient if the skill was cast before we have moved to the correct position [Celest] - if (src->type != BL_PC || - (bl->type == BL_PC && ((struct map_session_data *)bl)->walktimer != -1 && - !((arange-=battle_config.skill_range_leniency)<=range))) + if (src->type != BL_PC) return 0; + else if (src->type == BL_PC) { + struct map_session_data *sd; + nullpo_retr(0, (sd=(struct map_session_data *)bl)); + if (sd->walktimer != -1 && !((arange-=battle_config.skill_range_leniency)<=range)) + return 0; + } } if( arange<2 ) // 同じマスか隣接 -- cgit v1.2.3-70-g09d2