|
@@ -13615,7 +13615,7 @@ static int skill_unit_onplace(struct skill_unit *unit, struct block_list *bl, t_
|
|
|
|
|
|
tstatus = status_get_status_data(bl);
|
|
|
|
|
|
- if( (skill_get_type(sg->skill_id) == BF_MAGIC && map_getcell(unit->bl.m, unit->bl.x, unit->bl.y, CELL_CHKLANDPROTECTOR) && sg->skill_id != SA_LANDPROTECTOR) ||
|
|
|
+ if( (skill_get_type(sg->skill_id) == BF_MAGIC && ((battle_config.land_protector_behavior) ? map_getcell(bl->m, bl->x, bl->y, CELL_CHKLANDPROTECTOR) : map_getcell(unit->bl.m, unit->bl.x, unit->bl.y, CELL_CHKLANDPROTECTOR)) && sg->skill_id != SA_LANDPROTECTOR) ||
|
|
|
map_getcell(bl->m, bl->x, bl->y, CELL_CHKMAELSTROM) )
|
|
|
return 0; //AoE skills are ineffective. [Skotlex]
|
|
|
|
|
@@ -18820,7 +18820,7 @@ int skill_unit_timer_sub_onplace(struct block_list* bl, va_list ap)
|
|
|
|
|
|
std::shared_ptr<s_skill_db> skill = skill_db.find(group->skill_id);
|
|
|
|
|
|
- if( !(skill->inf2[INF2_ISSONG] || skill->inf2[INF2_ISTRAP]) && !skill->inf2[INF2_IGNORELANDPROTECTOR] && group->skill_id != NC_NEUTRALBARRIER && map_getcell(unit->bl.m, unit->bl.x, unit->bl.y, CELL_CHKLANDPROTECTOR) )
|
|
|
+ if( !(skill->inf2[INF2_ISSONG] || skill->inf2[INF2_ISTRAP]) && !skill->inf2[INF2_IGNORELANDPROTECTOR] && group->skill_id != NC_NEUTRALBARRIER && (battle_config.land_protector_behavior ? map_getcell(bl->m, bl->x, bl->y, CELL_CHKLANDPROTECTOR) : map_getcell(unit->bl.m, unit->bl.x, unit->bl.y, CELL_CHKLANDPROTECTOR)) )
|
|
|
return 0; //AoE skills are ineffective. [Skotlex]
|
|
|
|
|
|
if( battle_check_target(&unit->bl,bl,group->target_flag) <= 0 )
|