|
@@ -4152,13 +4152,14 @@ int battle_check_target( struct block_list *src, struct block_list *target,int f
|
|
case BL_SKILL:
|
|
case BL_SKILL:
|
|
{
|
|
{
|
|
struct skill_unit *su = (struct skill_unit *)src;
|
|
struct skill_unit *su = (struct skill_unit *)src;
|
|
|
|
+ int inf2;
|
|
if (!su->group)
|
|
if (!su->group)
|
|
return 0;
|
|
return 0;
|
|
-
|
|
|
|
- if (su->group->src_id == target->id)
|
|
|
|
- {
|
|
|
|
- int inf2;
|
|
|
|
- inf2 = skill_get_inf2(su->group->skill_id);
|
|
|
|
|
|
+ if( battle_config.vs_traps_bctall &&
|
|
|
|
+ (inf2 = skill_get_inf2(su->group->skill_id))&INF2_TRAP &&
|
|
|
|
+ map_flag_vs(src->m) )
|
|
|
|
+ return 1;//traps may target everyone
|
|
|
|
+ if (su->group->src_id == target->id) {
|
|
if (inf2&INF2_NO_TARGET_SELF)
|
|
if (inf2&INF2_NO_TARGET_SELF)
|
|
return -1;
|
|
return -1;
|
|
if (inf2&INF2_TARGET_SELF)
|
|
if (inf2&INF2_TARGET_SELF)
|