From 0c87b6196c334797f487e9c8a82ea1e0b4a4bdbe Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@54d463be-8e91-2dee-dedb-b68131a5f0ec> Date: Fri, 11 Feb 2005 16:58:06 +0000 Subject: * Tidied up battle_check_target abit * Updated traps to affect allies as well in GvG * Updated cast and delay time for Soul Breaker git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1077 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/battle.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/map/battle.c') diff --git a/src/map/battle.c b/src/map/battle.c index 1bc612e0c..9f3361237 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -3682,15 +3682,22 @@ int battle_check_target( struct block_list *src, struct block_list *target,int f // スキルユニットの場合、親を求める if( src->type==BL_SKILL) { - int inf2 = skill_get_inf2(((struct skill_unit *)src)->group->skill_id); - if( (ss=map_id2bl( ((struct skill_unit *)src)->group->src_id))==NULL ) + struct skill_unit *su = (struct skill_unit *)src; + int skillid, inf2; + + nullpo_retr (-1, su); + nullpo_retr (-1, su->group); + skillid = su->group->skill_id; + inf2 = skill_get_inf2(skillid); + if( (ss=map_id2bl( su->group->src_id))==NULL ) return -1; if(ss->prev == NULL) return -1; if(inf2&0x80 && - (map[src->m].flag.pvp || pc_iskiller((struct map_session_data *)src, (struct map_session_data *)target)) && // [MouseJstr] - !(target->type == BL_PC && pc_isinvisible((struct map_session_data *)target))) - return 0; + (map[src->m].flag.pvp || + (skillid >= 115 && skillid <= 125 && map[src->m].flag.gvg)) && + !(target->type == BL_PC && pc_isinvisible((struct map_session_data *)target))) + return 0; if(ss == target) { if(inf2&0x100) return 0; -- cgit v1.2.3-70-g09d2